Help:UI manual: Difference between revisions

From Svacer Wiki
Line 222: Line 222:
* кнопка [[File:Icon edit.png|x25px]] – переход к групповой разметке выбранных маркеров (доступна, если выбраны маркеры в таблице).
* кнопка [[File:Icon edit.png|x25px]] – переход к групповой разметке выбранных маркеров (доступна, если выбраны маркеры в таблице).


[[File:26 Таблица маркеров.png|thumb|none|600px]]
[[File:26 Таблица маркеров.png|thumb|none|600px|Таблица маркеров с примененными фильтрами]]


В таблице маркеров пользователю доступны следующие функции:
В таблице маркеров пользователю доступны следующие функции:

Revision as of 13:50, 26 April 2023

На этой странице приведена инструкция по работе в пользовательском интерфейсе сервера Svacer.

Авторизация в пользовательском интерфейсе сервера Svacer

Для авторизации в пользовательском интерфейс сервера Svacer введите логин и пароль на странице ввода учетных данных. Учётные данные по умолчанию — admin / admin.

AutorizationMain
Страница ввода учетных данных

Если на сервере настроена поддержка протокола LDAP, то войти на можно с помощью внешних серверов. Для этого:

1. На странице ввода учетных данных перейдите на вкладку LDAP.
2. Выберите LDAP-сервер в списке, если настроено больше одного сервера авторизации.
3. Введите логин и пароль.
AutorizationLDAP
Страница входа по протоколу LDAP

После успешного входа отобразится пользовательский интерфейс сервера Svacer. При этом, если в прошлой сессии пользователь выбрал проект, его ветку и снимок или применил фильтры, отобразятся эти проект, ветка и фильтры.

Примечание: чтобы после обновления системы в пользовательском веб-интерфейсе корректно отображались изменения, после авторизации обновите страницу в браузере – нажмите клавишу F5.

Описание основных элементов пользовательского интерфейса

Все страницы пользовательского интерфейса сервера Svacer устроены единообразно и состоят из двух частей:

  1. Верхняя панель – отображается на всех страницах пользовательского интерфейса.
    Содержит:
  2. Рабочая область – область экрана для просмотра информации и ввода, которая соответствует выбранному режиму работы или странице настроек.

Базовые функции системы

Просмотр уведомлений

Чтобы посмотреть уведомления, нажмите кнопку в правом верхнем углу экрана.

В правой части экрана отобразится панель со списком уведомлений для авторизованного пользователя:

NotificationList
Панель уведомлений

Нажмите кнопку для удаления уведомления.

Нажмите кнопку Очистить для удаления всех уведомлений.

Настройка профиля пользователя

Для перехода в профиль выберите пункт Профиль в меню пользователя в правом верхнем углу экрана:

UserMenu
Меню пользователя

В правой части экрана отобразится панель Профиль, которая состоит из трех разделов:

1. Профиль пользователя – в этом разделе можно изменить атрибуты своего профиля (ФИО, контакты), кроме логина, а также поменять пароль.
ProfileSetting
Настройки профиля пользователя
2. Общие настройки интерфейса – в этом разделе можно включить или выключить следующие функции:
  • сохранение примененной сортировки значений в таблице маркеров при выходе из системы;
  • использование темной темы (темный фон, светлый текст) при просмотре файлов с исходным кодом;
  • открытие нескольких вкладок с исходным кодом в режиме просмотра кода.
Эти настройки сохраняются для учетной записи пользователя и не сбрасываются при новой сессии.
UserInterfaceSettings
Общие настройки интерфейса
3. Настройки панели навигации – в этом разделе можно настроить отображение по умолчанию для детекторов и файлов на панели навигации, а также для сортировки значений на вкладке Файлы.
Эти настройки сохраняются для учетной записи пользователя и не сбрасываются при новой сессии.
Временное отображение файлов на панели навигации и их сортировку можно настроить по нажатии иконки на панели навигации.
LeftNavigationPanelSettings
Настройки панели навигации

Изменение пароля

Для изменения пароля:

1. Выберите пункт Профиль в меню пользователя.
2. В разделе Профиль пользователя нажмите на ссылку Изменить пароль:
Переход к изменению паролья в профиле пользователя
3. В открывшемся окне:
а) Введите текущий пароль.
б) Дважды введите новый пароль.
в) Нажмите кнопку Изменить.
Окно изменения пароля

Просмотр информации о программе

Чтобы посмотреть информацию о программе, выберите пункт О программе в меню пользователя в правом верхнем углу экрана.

Меню пользователя. Переход к просмотру информации о программе

Нажмите на ссылку в строке Документация для перехода на страницу документации к системе.

Для просмотра информации об изменениях нажмите кнопку Показать Журнал изменений.

Информация о программе

Выбор проекта, ветки и снимка

Для работы в режиме разметки или режиме просмотра кода требуется выбрать проект, ветку и снимок с результатами работы анализатора Svace. Это можно сделать в блоке, который расположен под верхней панелью.

По умолчанию после выбора проекта автоматически выбирается ветка master и последний снимок. Если ветка master отсутствует, её нужно выбрать вручную.

Работа в режиме разметки

Режим разметки предоставляет следующий набор элементов управления:

  1. Левая навигационная панель:
  2. Центральная панель:
  3. Правая панель.

Функции левой навигационной панели

Вкладка «Детекторы»

На этой вкладке отображается список детекторов Svace, которые сработали в выбранном снимке.

Серьезность (критичность) детектора обозначена цветом:

  • красный – наивысшая серьезность (CRITICAL);
  • желтый – высокая серьезность (MAJOR);
  • белый – обычная серьезность (NORMAL, MINOR, UNDEFINED).

На вкладке Детекторы пользователю доступны следующие функции:

1. Отображение данных в виде списка – для этого нажмите кнопку .
2. Группировка детекторов по уровням серьезности (по умолчанию) – для этого нажмите кнопку .



3. Отображение списка маркеров в файлах, в которых сработал детектор, – для этого нажмите кнопку в левой части его имени.
Список маркеров найденных детектором
4. Блокировка всех маркеров, найденных детектором, для разметки другими пользователями – для этого нажмите кнопку справа от названия детектора (отображается при наведении курсора).
5. Применение фильтра по детектору в таблице маркеров – для этого нажмите на имя детектора.
6. Применение фильтра по серьезности в таблице маркеров – для этого нажмите название группы серьезности.
7. Отмена фильтрации – для этого нажмите кнопку .
8. Отображение на вкладке Исходный код содержимого файла, места и содержания маркера, а также подробной информации о маркере на правой панели – для этого нажмите на маркер.

Вкладка «Файлы»

На этой вкладке отображается список файлов, в которых найдены маркеры.

Для каждого файла отображаются:

  • имя;
  • количество найденных маркеров (предупреждений);
  • количество размеченных маркеров;
  • кнопки и .
Вкладка Файлы

На вкладке Файлы пользователю доступны следующие функции:

1. Применение фильтра по файлу в таблице маркеров – для этого:
а) Нажмите на имя файла.
В этом случае содержимое файла отобразится на вкладке Исходный код.
или
б) Нажмите кнопку в одной или нескольких строках.
В этом случае содержимое файла (файлов) не отобразится.
2. Исключение файла из фильтра по файлам в таблице маркеров – для этого нажмите кнопку в строке файла.
3. Отмена фильтрации в таблице маркеров для всех выбранных файлов – для этого нажмите кнопку или кнопку на вкладке Детекторы.
4. Блокировка всех маркеров в файле для разметки другими пользователями – для этого нажмите кнопку справа от названия файла (отображается при наведении курсора).
5. Отображение на вкладке Исходный код содержимого файла, места и содержания маркера, а также подробной информации о маркере на правой панели – для этого нажмите на имя файла.
6. Фильтрация по имени/пути файла в поле Отфильтровать файлы по полному пути. Поддерживается фильтрация с использованием регулярных выражений.
7. Временная настройка отображения файлов и сортировки полей на вкладке Файлы – для этого нажмите кнопку и поменяйте настройки.
Эти настройки будут действовать до конца сессии пользователя или до повторного изменения.
Временная настройка отображения файлов и сортировки полей

Функции центральной панели

Вкладка «Информация о снимке»

На этой вкладке отображается информация о выбранном снимке.

Вкладка Информация о снимке


На вкладке Информация о снимке пользователю доступны следующие функции:

  1. Просмотр подробной информации о снимке во всплывающем окне – для этого нажмите кнопку .
  2. Переход к экспорту кода с разметкой – для этого нажмите кнопку .
  3. Экспорт снимка в формате .snap. – для этого нажмите кнопку .
  4. Просмотр параметров анализа во всплывающем окне – для этого нажмите кнопку в строке Параметры анализа.
  5. Экспорт параметров анализа в формате .txt – для этого нажмите кнопку в строке Параметры анализа.
  6. Просмотр таблицы статистики – для этого нажмите кнопку в строке Статистика.
    Информация в таблице сгруппирована по параметрам детекторов, найденным маркерам и статусу их разметки.
  7. Просмотр списка приложенных файлов для этого нажмите кнопку в строке Приложенные файлы.
    Для скрытия списка нажмите кнопку.


Вкладка «Исходный код»

Информация на этой вкладке отображается только после выбора файла на вкладке Детекторы или Файлы, или в таблице маркеров.

В верхней части вкладки отображается полный путь к файлу.

Вкладка Исходный код

На вкладке Исходный код пользователю доступны следующие функции:

1. Отображение кода на весь экран – для этого нажмите кнопку .
2. Отображение всех маркеров – для этого нажмите кнопку .
3. Скрытие всех маркеров– для этого нажмите кнопку .
4. Отображение списка маркеров в этом файле – для этого нажмите кнопку :
Cписок маркеров в файле
5. Выбор отображения информации о маркере и его разметки относительно строки кода, в которой он найден:
  • выше строки кода – нажмите кнопку ;
  • ниже строки кода – нажмите кнопку .


6. Возврат к исходному маркеру (например, если был выбран другой связанный маркер на вкладке Трасса правой панели) – для этого нажмите кнопку в верхней части блока с информацией о маркере.
7. Разметка маркера – нажмите кнопки в верхней части блока с информацией о маркере для установки Статуса, Серьезности и Действия.
8. Переход к строке, в которой определена переменная – нажмите правую кнопку мыши на строке исходного кода и выберите пункт Перейти к определению.
9. Просмотр ссылок на панели внизу экрана – нажмите правую кнопку мыши на строке исходного кода и выберите пункт Найти ссылки.
На этой панели отображается иерархический список файлов с номерами строк, в которых найдены ссылки.


Cписок файлов с номерами строк, в которых найдены ссылки
Чтобы перейти на вкладку Исходный код с фрагментом кода, на который найдена ссылка, нажмите на имя файла.
Чтобы посмотреть фрагмента кода, на который найдена ссылка, в режиме предпросмотра, нажмите кнопку .
10. Копирование строки кода – нажмите правую кнопку мыши на строке исходного кода и выберите пункт Copy.
11. Вызов командной строки – нажмите правую кнопку мыши на строке исходного кода и выберите пункт Command Pallette.
Командная строка

Таблица маркеров

Если таблица маркеров не отображается, нажмите кнопку , а для её скрытия – .

В верхней части таблицы находится панель, которая содержит:

  • – поле с информацией о примененных фильтрах: как назначенных в навигационной панели, так и с помощью пользовательских фильтров и запросов;
  • поле запроса для фильтрации данных;
  • кнопка – выгрузка отображаемых маркеров в формате .csv и выгрузка отчета отображаемых маркеров в формате .pdf;
  • кнопка – переход к групповой разметке выбранных маркеров (доступна, если выбраны маркеры в таблице).
Таблица маркеров с примененными фильтрами

В таблице маркеров пользователю доступны следующие функции:

  1. Выбор маркеров для групповой разметки – для этого установите флажок в строке маркера.
  2. Просмотр подробной информации о маркере в правой панели и его места и содержания на вкладке Исходный код – для этого дважды кликните на строку маркера или нажмите на имя файла в столбце Файл.
    Также для выбора можно использовать клавиши ↑ и ↓ – для перемещения по строкам, и Enter – для подтверждения выбора.
  3. Копирование детальной информации о маркере в буфер обмена – для этого нажмите правой кнопкой мыши на маркер и выберите пункт Копировать.
  4. Копирование ссылки на маркер в буфер обмена – для этого нажмите правой кнопкой мыши на маркер и выберите пункт Скопировать ссылку на предупреждение.
  5. Переход к сравнению одного маркера с другим – для этого нажмите правой кнопкой мыши на маркер и выберите пункт Сравнить с…

Функции правой панели

Эта панель предоставляет подробную информацию о маркере и его разметке:

  • статус блокировки;
  • статус разметки, его серьезность и требуемое действие;
  • автор последней разметки и пр.
Правая панель

На правой панели пользователю доступны следующие функции:

1. Просмотр истории разметки – для этого нажмите кнопку в верхней части правой панели.
Пример истории изменения разметки маркера
2. Блокировка маркера для разметки другими пользователями – для этого нажмите кнопку в верхней части правой панели.
3. Разметка маркера – для этого нажмите кнопки в верхней части правой панели.
4. Копирование ссылки на маркер – для этого нажмите кнопку в верхней части правой панели.
5. Отображение маркера на вкладке Исходный код одним из трех способов:
а) Нажмите кнопку с именем файла и номером строки в верхней части правой панели [1].
б) Нажмите на ссылку с именем файла и номером строки на вкладке Трасса [2].
в) Нажмите кнопку Найти в коде на вкладке Подробности [3].
Это позволяет всегда вернуться к нужной точке при навигации по коду.
  • 6. Отображение кода, который соответствует строке трассы, в отдельном окне в режиме предпросмотра – для этого на вкладке Трасса нажмите кнопку рядом с именем файла и номером строки.
    Предпросмотр кода
    7. Просмотр и добавление комментариев к маркеру на вкладке Комментарии.
    Комментарии для каждого маркера уникальны. Добавление одинаковых комментариев недоступно.
    8. Редактирование и удаление собственных комментариев на вкладке Комментарии с помощью кнопок и .
    Вкладка Комментарии
    9. Просмотр подробной информации на вкладке Подробности.
    Вкладка Подробности


    10. Просмотр информации о детекторе, который обнаружил маркер – для этого нажмите на его имя на вкладке Подробности.
    Пример информации о детекторе
    11. Просмотр истории обнаружения маркера в снимках – для этого нажмите кнопку слева от названия снимка на вкладке Подробности.
    Пример истории маркера
    12. Запуск хуков (скриптов) – для этого нажмите кнопку Запустить на вкладке Подробности.


    Использование фильтров

    Общая информация

    Настроить и использовать фильтры можно только в режиме разметки.

    Существует четыре вида фильтров:

    1. Фильтры левой навигационной панели [1]: детекторы, файлы или серьезность.
    2. Размеченный – позволяют отобразить только размеченные маркеры. Фильтр применяется по нажатии кнопки в правой части блока выбора проекта, ветки и снимка [2].
    3. Пользовательские фильтры – доступны по нажатии кнопки в правой части блока выбора проекта, ветки и снимка [3].
    4. Запрос – фильтр, указанный в поле в верхней части таблицы маркеров [4].
    Существующие фильтры

    Посмотреть примененные фильтры и последовательность их применения можно в поле в верхней части таблицы маркеров.

    Все виды фильтров можно использовать одновременно, но при определенном порядке применения фильтры могут быть сброшены:

    • запрос сбрасывается после применения любого другого фильтра;
    • фильтры левой навигационной панели сбрасываются после применения пользовательских фильтров и других фильтров на левой навигационной панели;
    • пользовательские фильтры и фильтры левой навигационной панели не сбрасываются при применении фильтра Размеченный.
    • при переключении на другой проект, ветку или снимок примененные фильтры Размеченный и Пользовательский не сбрасываются и применяются к выбранному снимку.

    По нажатии кнопки в правой части блока выбора проекта, ветки и снимка можно отменить примененные фильтры: пользовательский или все.

    Настройка и использование пользовательских фильтров

    Настроить пользовательские фильтры можно в режиме разметки. Для этого:

    1. Нажмите кнопку в правой части блока выбора проекта, ветки и снимка.
    В правой части экрана отобразится панель пользовательских фильтров, которые разделены на три группы:
    • параметры детекторов;
    • параметры разметки маркеров;
    • файлы.
    2. На вкладке Пользовательский:
    а) Настройте параметры фильтрации – выберите значения в списках полей или нажмите кнопки со значениями.
    б) Нажмите на кнопку справа от значения в списке, чтобы отменить его выбор.
    в) Если параметры нужно исключить из поиска, нажмите на кнопку . Кнопка поменяется на .
    г) Если параметры нужно включить в поиск, нажмите на кнопку . Кнопка поменяется на .
    д) Нажмите кнопку , чтобы очистить все параметры фильтрации.
    е) Нажмите кнопку , в открывшемся диалоге введите название и нажмите кнопку Сохранить.
    ж) Нажмите кнопку , чтобы применить фильтр.
    После применения кнопка фильтра станет зеленой, а ее название поменяется на Пользовательский.
    Пользовательские фильтры. Вкладка Пользовательский
    3. На вкладке Сохраненные:
    а) Для редактирования сохраненного фильтра нажмите кнопку .
    б) Создайте дубликат фильтра – нажмите кнопку .
    в) Удалите фильтр – нажмите кнопку .
    г) Примените фильтр – нажмите на его название и нажмите кнопку .
    Пользовательские фильтры. Вкладка Сохраненные

    После применения:

    • примененный фильтр будет отмечен .
    • кнопка фильтра станет зеленой, а ее название поменяется на Название сохраненного фильтра.

    Сравнение снимков и маркеров

    Чтобы сравнить снимки и маркеры в них:

    1. Выберите исходные проект, ветку и снимок.
    2. В режиме разметки нажмите кнопку .
    3. В открывшемся окне выберите проект, ветку и снимок для сравнения; нажмите кнопку .
    Результат сравнения отобразится в левой навигационной панели и центральной панели, причем:
    • вкладка Информация о снимке поменяется на вкладку Информация о различиях с информацией о двух сравниваемых снимках;
    • применится первый режим сравнения, в котором найдены результаты.
    Выбор проекта, ветки и снимка для сравнения
    4. Выберите режим сравнения.
    Выбор режима сравнения
    В левой навигационной панели и центральной панели отобразятся только результаты выбранного режима сравнения.
    В режимах Сопоставленные и Одинаковые в таблице маркеров добавляется столбец с номером версии.


    5. Посмотрите различия в параметрах анализа – нажмите кнопку Показать различия на вкладке Информация о различиях.
    Сравнение настроек анализа
    6. Посмотрите различия в статистике разметки – нажмите кнопку Различия разметок.
    Сравнение статистики разметок
    7. Нажмите кнопку или , чтобы скачать статистику в формате CSV или PDF.
    8. Отмените сравнение – нажмите кнопку в блоке выбора проекта, ветки и снимка.


    Сравнение маркеров

    Чтобы сравнить два маркера:

    1. В режиме разметки выберите исходные проект, ветку и снимок.
    2. Раскройте таблицу маркеров.
    3. Нажмите правой кнопкой мыши на строке маркера и выберите пункт Сравнить с...
    Откроется окно выбора маркера для сравнения.
    Окно выбора маркера для сравнения
    4. Выберите проект, ветку и снимок. Отобразится список маркеров в выбранном снимке, где можно ввести запрос для поиска маркеров.
    Выбор маркера для сравнения
    5. Дважды кликните на строке маркера, чтобы перейти в окно сравнения маркеров.
    Окно сравнения маркеров

    Разметка маркера

    Разметить маркер можно в режиме разметки с помощью кнопок в верхней части правой панели или на вкладке Исходный код.
    Разметка маркера заключается в установке статуса, а также опционально серьезности (критичности) и требуемого действия. Установка серьезности и действия доступны только после установки статуса.



    Групповая разметка маркеров

    Для групповой разметки:

    1. В режиме разметки выберите исходные проект, ветку и снимок.
    2. Включите отображение таблицы маркеров.
    3. Выберите маркеры для разметки – установите флажки в строках таблицы.
    Выбор маркеров для групповой разметки
    4. Нажмите кнопку (доступна, если выбраны маркеры в таблице).
    Отобразится окно для групповой разметки.
    Окно групповой разметки
    5. Разметьте выбранные маркеры – с помощью кнопок в верхней части окна выберите статус разметки, а затем (опционально) статус серьезности (критичности) и требуемое действие.
    Отображаемые в окне маркеры окрасятся в соответствующий цвет. Например, если пользователь поставил статус проверки Confirmed, то все маркеры окрасятся в красный цвет:
    Окно групповой разметки после выбора статуса, серьезности и действия
    6. Добавьте общий комментарий для выбранных маркеров.
    После того, как пользователь присвоил статусы и (или) написал комментарий, станут доступными кнопки Сбросить и Применить.
    7. Если требуется отменить изменения, нажмите в правом верхнем углу окна или кнопку Отмена.
    Диалоговое окно закроется, изменения не будут применены, выделение с выбранных для разметки маркеров не снимается.
    8. Если требуется сбросить все изменения, нажмите кнопку Сбросить.
    Данные в окне вернутся в первоначальное состояние, а кнопки Сбросить и Применить станут неактивными.
    9. Нажмите кнопку Применить, чтобы запустить процесс разметки.

    Прогресс разметки отображается в соответствующем окне. Запущенный процесс можно полностью отменить нажатием кнопки Отмена.

    В результате применения разметки текст маркеров в таблице маркеров окрасится в цвет, соответствующий выставленному статусу.



    Блокировка разметки маркеров

    Пользователь может заблокировать другим пользователям возможность размечать маркер или группу маркеров. Это позволяет избежать коллизий при разметке маркеров несколькими пользователями.

    Для блокировки разметки используйте кнопку в следующих частях пользовательского интерфейса:

    1. На вкладке Детекторы.
    В этом случае блокировка распространяется на все маркеры выбранного детектора в открытом проекте и ветке, для всех снимков ветки.
    2. На вкладке Файлы.
    В этом случае блокировка распространяется на все маркеры в выбранном файле в открытом проекте и ветке, для всех снимков ветки.
    3. В верхней части правой панели.
    В этом случае блокировка распространяется на все эквивалентные маркеры в открытом проекте и ветке, для всех снимков ветки.


    Если один пользователь заблокировал маркер, то другой пользователь не сможет заблокировать детектор, которому принадлежит этот маркер, и файл, в котором этот маркер найден.
    В этом случае при наведении курсора на в строке файла отобразится сообщение: Невозможно заблокировать файл, так как один или несколько его маркеров заблокированы другим пользователем.

    Чтобы посмотреть все блокировки, перейдите в раздел Настройки на вкладку Блокировки:

    В этом разделе можно удалить только свои блокировки. Пользователь admin может удалить любые блокировки.

    Таблица блокировок

    Экспорт кода с разметкой

    Пользователь может экспортировать с сервера исходный код с разметкой (опционально) из снимка двумя способами:

    Способ 1 – в пользовательском интерфейсе сервера Svacer

    Для этого:

    1. В режиме разметки выберите исходные проект, ветку и снимок.
    2. На вкладке Информация о снимке в строке свойства ID нажмите кнопку :
    Переход к экспорту кода с разметкой
    3. В открывшемся окне выберите шаблон для экспорта в списке справа (по умолчанию Нет, т. е. разметка экспортироваться не будет) и опционально заполните поля для удаления префиксов и исключения путей:
    Окно экспорта кода с разметкой


    Пример удаления префиксов путей: /.build/ – чтобы убрать папку .build при экспорте.

    При экспорте можно исключить файлы, соответствующие регулярным выражениям в поле Исключить пути. В итоге создастся архив со всеми исходниками и, если был выбран шаблон разметки, то в исходном коде будет вставлена актуальная разметка, соответствующая выбранному шаблону.

    Способ 2 – через консольную команду svacer markup export

    Синтаксис команды:

    svacer markup --user <user> --password <password> --project <project id or name> --branch <branch id or name> --snapshot <snapshot id or name> export [--stripPrefixes <prefix1, prefix2, … , prefixN> --excludePaths <path1, path2, … ,pathN> --template <name>]

    Где:

    • user, password — имя пользователя и пароль учетной записи на сервере истории;
    • project — проект на сервере истории, из которого будет экспортирован код;
    • branch — ветка в проекте, выбранном выше (по умолчанию master), из которой будет экспортирован код;
    • snapshot — снимок в выбранных проекте и ветке (по умолчанию последний загруженный), из которого будет экспортирован код.
    • stripPrefixes, excludePaths — аналогичны полям Удалить префиксы и Исключить пути в форме экспорта разметки в пользовательском интерфейсе, описанной выше;
    • template — определяет имя шаблона для экспорта разметки. Если имя не указано, разметка не экспортируется.

    В результате либо будут созданы на сервере истории директория и файлы, соответствующие выбранному проекту и наполненные исходным кодом, либо, если директории и файлы уже существуют, они будут перезаписаны.

    Наличие в файлах комментариев зависит от того, был ли выбран шаблон разметки.

    Работа с таблицей статистики

    Чтобы посмотреть краткую статистику о разметке маркеров:

    1. Выберите исходные проект, ветку и снимок.
    2. Перейдите в режим разметки.
    3. На вкладке Информация о снимке в строке свойства Статистика нажмите кнопку :
    Переход к просмотру статистики
    Отобразится таблица статистики:
    Таблица статистики
    4. Нажмите кнопку или ,чтобы выгрузить статистику в соответствующем формате.
    5. Нажмите кнопку в строке статистики, чтобы применить пользовательский фильтр с параметрами, которые соответствуют выбранному значению.

    Работа в режиме просмотра кода

    Режим позволяет посмотреть снимки исходного кода, связанного с результатами анализатора Svace.

    Для этого:

    1. Выберите исходные проект, ветку и снимок.
    2. Перейдите в режим просмотра кода с помощью переключателя в верхней части экрана.
    В левой части экрана отобразится иерархический список файлов снимка, а в правой – поле для отображения исходного кода файла.
    Режим просмотра кода
    3. В левой части экрана раскройте группу файлов и нажмите на имя файла.
    Также доступен поиск файлов, для этого кликните на поле поиска, в открывшемся окне введите поисковый запрос и выберите файл.

    В правой части отобразится исходный код файла.

    Пример одного открытого файла
    4. Если требуется, откройте другие файлы.
    Они отобразятся на отдельных вкладках.
    Пример трёх открытых файлов
    5. Вызовите функции, доступные по нажатию правой кнопки мыши на строке исходного кода.
    • Перейти к определению – для перехода к строке, в которой определена переменная и функция;
    • Найти ссылки – для просмотра ссылок в панели с иерархическим списком файлов, именами файлов и номерами строк, в которых найдены ссылки;
    Cписок файлов с номерами строк, в которых найдены ссылки
    • Copy – для копирования строки в буфер обмена;
    • Command Pallette – для вызова командной строки.
    Командная строка

    Режим формирования отчетов

    Режим позволяет сформировать отчеты на основе хранимой информации, посмотреть их в пользовательском интерфейсе и выгрузить в формате .json. Для этого:

    1. Выберите исходные проект и ветку.
    2. Перейдите в режим формирования отчетов с помощью переключателя в верхней части экрана.
    Отобразится форма формирования отчетов:
    Форма формирования отчетов
    3. На панели слева выберите требуемый отчет: Общий отчет или Тренды.
    4. Выберите текущий и целевой снимки:
    Выбор снимков для формирования отчета
    5. Нажмите кнопку для запуска формирования отчета и его отображения в пользовательском интерфейсе.
    6. Нажмите кнопку для выгрузки отчета в формате .json.
    Пример общего отчета
    Пример отчета Тренды

    Настройка сервера Svacer

    Перейти в раздел Настройки можно по нажатии кнопки в верхней правой части экрана.

    В этом разделе пользователю, в зависимости от роли, доступны следующие функции:

    • управление пользователями и ролями;
    • настройка глобальных фильтров;
    • управление шаблонами разметки;
    • управление проектами;
    • просмотр списка детекторов;
    • управление блокировками;
    • просмотр информации о сервере;
    • управление клиентами OAuth;
    • управление организациями.

    Управление пользователями и ролями

    Примечание: функции, описанные в этом разделе, доступны только пользователю с ролью admin.

    Чтобы посмотреть список и настройки учетных записей пользователей, перейдите на вкладку Пользователи на странице Настройки:

    Вкладка Пользователи на странице Настройки

    Для учетных записей с доступом по LDAP, над логином учетной записи отображается индикатор .

    Управление пользователями

    Для управления пользователями:

    1. Создайте учетную запись пользователя:
    а) Нажмите кнопку Добавить пользователя:
    Переход к добавлению учетной записи пользователя
    Откроется окно добавления учетной записи пользователя.
    б) Заполните поля:
    • Логин;
    • Пароль;
    • e-mail;
    • ФИО;
    • Организации.
    в) Включите опцию Изменить пароль при первом входе в систему (опционально).
    г) Нажмите кнопку Добавить.
    Окно Добавить пользователя

    В таблице со списком пользователей добавится новая запись.

    2. Чтобы назначить пользователю роли, выберите значения в выпадающем списке поля в столбце Роли:
    Назначение ролей пользователю
    3. Нажмите на кнопку справа от значения, чтобы отменить его выбор.
    4. Воспользуйтесь функциями в строке профиля в столбце Действия:
    • – для перехода к редактированию данных профиля;
    • – для перехода к изменению пароля;
    • – для отчистки пользовательских настроек;
    • – для архивирования учетной записи пользователя;
    При архивировании учетной записи пользователя блокируется доступ к системе, над логином учетной записи отображается индикатор .
    • – для восстановления учетной записи пользователя из архива;
    • – для удаления учетной записи пользователя.
    б) Для учетной записи с доступом по LDAP обновите данные – нажмите кнопку в столбце Действия и в окне изменения профиля пользователя нажмите кнопку Загрузить из LDAP.
    Загрузятся параметры профиля пользователя и его контакты из профиля в службе каталогов, если они там указаны. Пользователь может изменить эти параметры.
    Загрузка данных из LDAP

    Управление ролями

    Для управления ролями:

    1. Нажмите кнопку Роли:
    Переход к управлению ролями
    В правой части экрана отобразится панель со списком ролей:
    Панель со списком ролей
    Следующие роли являются встроенными с особым значением, их нельзя удалить или изменить:
    Роль Полномочия/особенности
    importer Загрузка данных анализа посредством команды в CLI svacer upload
    review_master Разметка, выполненная пользователем с этой ролью, не может быть переопределена пользователем без этой роли
    admin Дает полномочия администратора сервера
    filter_master Дает возможность настраивать глобальные фильтры для проектов и веток проектов
    2. Включите опцию Показать столбец "ID роли", если требуется.
    3. Чтобы добавить роль:
    а) Нажмите кнопку Добавить роль.
    Откроется окно добавления роли.
    б) Введите название роли.
    в) Добавьте разрешения для создаваемой роли, для этого:
    • Нажмите кнопку Добавить еще.
    • Выберите проект или ветку и разрешение.
    д) Нажмите кнопку Добавить.
    Окно добавления роли

    В таблице со списком ролей добавится новая запись.

    Роль пользователя определяет доступные пользователю действия со следующими объектами сервера: проектами, ветками, маркерами, снимками:
    Действие Область Эффект
    Чтение Проект Получение списка веток проекта.
    Получение списка маркеров любой ветки проекта.
    Экспорт данных из веток проекта
    Чтение Ветка Получение списка маркеров из ветки проекта.
    Экспорт данных из ветки проекта
    Запись Проект Импорт данных в любую ветку проекта
    Запись Ветка Импорт данных в конкретную ветку проекта
    Разметка Проект Возможность менять разметку и добавлять/менять комментарии к маркерам во всех ветках проекта
    Разметка Ветка Возможность менять разметку и добавлять/менять комментарии к маркерам в конкретной ветке проекта
    Также существует:
    • специальная область ALL, которая означает все проекты и ветки.
    • действие ALL, которая означает все доступные действия чтение, запись и разметка.
    4. Чтобы изменить настройки роли, нажмите кнопку в строке роли в столбце Действия (недоступно для встроенных ролей) и внесите изменения.
    5. Чтобы удалить роль, нажмите кнопку в строке роли в столбце Действия (недоступно для встроенных ролей).

    Настройка глобальных фильтров

    Функции, описанные в этом разделе, доступны только пользователю с ролью admin или Filter_master. Пользователям с другими ролями доступен только просмотр.

    На вкладке Фильтры страницы Настройки можно настроить глобальные фильтры, применительно к выбранным проекту или ветке проекта:

    Вкладка Фильтры на странице Настройки

    Для настройки фильтров:

    1. Чтобы добавить фильтр, нажмите кнопку Добавить фильтр.
    Отобразится новая строка:
    Новая строка с фильтром
    2. Измените настройки фильтров:
    а) Введите или поменяйте название фильтра.
    б) Деактивируйте или активируйте фильтр – нажмите на значение в столбце Активные один или два раза, чтобы отобразилась иконка или .
    в) Выберите область применения фильтра – нажмите на значение в столбце Область один или два раза, чтобы отобразилось значение ветка или проект.
    г) Укажите регулярное выражение или загрузите файл шаблона в столбцах Включить пути по шаблону, Исключить пути по шаблону и Шаблоны детекторов.
    д) Выберите уровни серьезности (критичности) и надежности:
    • – уровень выбран;
    • – уровень не выбран.
    Для изменения выбора нажмите на название уровня.
    3. Нажмите кнопку в столбце Действия, чтобы удалить фильтр.
    4. Для завершения работы с фильтрами без сохранения нажмите кнопку Сброс.
    5. Для завершения работы с фильтрами и применения изменений нажмите кнопку Применить изменения.
    6. После применения изменений нажмите кнопку Принудительно применить изменения, чтобы ускорить применение фильтров на стороне сервера.

    Управление шаблонами разметки

    Функции, описанные в этом разделе, доступны только пользователю с ролью admin.

    Управление шаблонами разметки доступно на вкладке Шаблоны страницы Настройки:

    Вкладка Шаблоны на странице Настройки

    Шаблоны разметки нужны для импорта/экспорта разметки. С их помощью комментарии в исходном коде будут преобразовываться в разметку на сервере истории и обратно.
    Шаблон с именем DEFAULT есть всегда, его нельзя отредактировать или удалить.
    Примечание: для корректного создания или изменения шаблонов разметки следует обратиться к разработчикам Static Analysis History Server.

    Для управления шаблонами:

    1. Нажмите кнопку Добавить шаблон.
    Откроется окно добавления шаблона
    Окно добавления шаблона разметки
    2. Введите название шаблона.
    3. Нажмите кнопку "Добавить"
    Шаблон появится в списке шаблонов для разметки в правой панели формы.
    4. Отредактируйте поля шаблона разметки:
    Редактирование шаблона разметки
    5. Нажмите Сохранить
    6. Чтобы клонировать существующий шаблон разметки, нажмите кнопку в столбце Действия.
    7. Чтобы удалить шаблон разметки, нажмите кнопку в столбце Действия.

    Управление проектами

    Функции, описанные в этом разделе, доступны только пользователю с ролью admin.

    На вкладке Проекты страницы Настройки отображаются все проекты со всеми ветками и снимками.

    Вкладка Проекты страницы Настройки

    Для управления проектами пользователей:

    1. Добавьте проект –нажмите кнопку Создать новый проект и введите его имя.
    При импорте проект добавляется автоматически.
    2. Добавьте ветку – нажмите кнопку в строке проекта, в открывшемся меню выберите пункт Добавить новую ветку и введите её имя.
    При импорте ветка добавляется автоматически.
    3. Измените название проекта/ветки – нажмите кнопку в строке проекта/ветки, в открывшемся меню выберите пункт Изменить имя проекта/Изменить имя ветки и измените имя.
    4. Удалите проект/ветку/снимок – нажмите кнопку в списке проектов/веток/снимков.
    5. Клонируйте ветку проекта – нажмите кнопку в строке ветки и в открывшемся меню выберите пункт Клонировать.
    6. Экспортируйте снимок с сервера в файл для дальнейшего его импорта на другой сервер или в другой проект/ветку на этом же сервере – нажмите кнопку в строке снимка.
    7. Импортируйте снимок из файла – нажмите кнопку в строке ветки, в открывшемся меню выберите пункт Импортировать снимок, выберите файл в формате .snap.
    8. Скопируйте разметку в другой контейнер (проект и ветку):
    а) Нажмите кнопку в строке ветки и в открывшемся меню выберите пункт Копировать разметку.
    б) В открывшемся окне выберите проект и ветку, в которые нужно скопировать разметку, а также действия, которые нужно выполнить при наличии разметки.
    в) Нажмите кнопку Копировать.
    Окно копирования разметки в другой контейнер

    Разметка в контейнере состоит из множества размеченных маркеров. В целевой ветке уже может находиться разметка. Все множество маркеров в исходной ветке можно разбить на два:

    • «Уникальные» – маркеры, которые есть только в исходной ветке;
    • «Общие» –маркеры, которые есть как в ветке источнике, так и в ветке-приемнике.

    При выполнении операции копирования разметка в уникальных маркерах всегда копируется в ветку-приемник. Для «Общих» маркеров возможны несколько вариантов продолжения копирования, но по умолчанию выбран пункт Не копировать – в этом случае разметка в «Общих» маркерах в ветке-приемнике не изменяется.

    Если выбрано действие Перезаписать, разметка на «Общих» маркерах в целевом контейнере будет заменена разметкой из ветки-источника.

    При выборе действия Заменить, если новее разметка из ветки-источника копируется в том случае, если ее метка времени более поздняя, чем та, которая указана в ветке-приемнике на данном маркере.
    Пример:

    Есть несколько контейнеров:
    • A с разметкой {(M1,D1),(M2,D2), (M3,D3)}
    • B с разметкой {(M4,D4), (M2,D5), (M3,D6)},
    где M — это маркер, а D — разметка (включая метку времени).
    Операцию сравнения на разметке обозначим как >. Если метка времени в D1 больше, чем в D2, то D1>D2.
    Пусть D2>D5, а D3<D6. Тогда операция копирования всегда скопирует разметку D1 (но не сам маркер), так как маркер M1 новый для контейнера B.
    Маркеры M2, M3 — общие для двух контейнеров, поэтому то, какая разметка будет в контейнере-приемнике, будет зависеть от выбранного варианта разрешения конфликта:
    • если выбран пункт Не копировать, то в контейнере B на маркерах M2,M3 будет разметка D5,D6 соответственно;
    • если выбран пункт Перезаписать, то на M2,M3 будет разметка D2,D3;
    • если выбран пункт Заменить, если новее, то на M2, M3 разметка будет: D2,D6, так как D2>D5 и D6>D3.
    При выполнении копирования наличие маркера в ветке-приемнике не проверяется.

    При успешном копировании выводится всплывающее сообщение вида: Выполнено успешно. Всего: Х, Заменено:Y
    Это сообщение означает, что всего было скопировано X инвариантов вместе с разметкой и среди скопированных инвариантов Y штук было скопировано с заменой.

    Просмотр списка всех детекторов и его выгрузка в формате PDF

    Чтобы посмотреть список всех детекторов, перейдите на вкладку Детекторы страницы Настройки:

    Вкладка Детекторы страницы Настройки

    Нажмите кнопку в строке детектора, чтобы посмотреть подробную информацию:

    Окно с информацией о детекторе

    Нажмите кнопку Экспорт в PDF, чтобы выгрузить список детекторов в формате .pdf.

    Управление блокировками разметки

    Чтобы посмотреть список всех блокировок, перейдите на вкладку Блокировки страницы Настройки:

    Вкладка Блокировки страницы Настройки

    Для удаления блокировки нажмите кнопку в столбце Действия.

    Примечание: Пользователь с ролью admin может удалять блокировки всех пользователей, пользователи с другими ролями могут удалять только свои блокировки.

    Просмотр информации о сервере

    Функции, описанные в этом разделе, доступны только пользователю с ролью admin.

    На вкладке Информация о сервере на странице Настройки отображаются:

    • параметры, с которыми запущен сервер;
    • логи сервера;
    • журнал базы данных.
    Вкладка Информация о сервере на странице Настройки

    Доступны функции:

    • копирование записей в системном логе и журнале;
    • выгрузка системного лога и журнала в файлы в формате .log.

    Управление клиентами OAuth

    Svacer поддерживает авторизацию по протоколу OAuth. Для авторизации используются запросы GET /api/oauth/authorize и POST /api/oauth/token в соответствии со стандартом.

    API-вызовы для управления клиентами:

    • GET /api/oauth/clients — получение всех клиентов для текущего пользователя или всех клиентов текущего сервера для админа;
    • GET /api/oauth/client?client_id={client_id} — получение клиента по id;
    • POST /api/oauth/client — создание нового клиента;
    • PUT /api/oauth/client — изменение данных клиента;
    • DELETE /api/oauth/client/{client_id} — удаление клиента.

    Управление клиентами доступно на вкладке Клиенты OAuth на странице Настройки:

    Вкладка Клиенты OAuth на странице Настройки
    • Для создания клиента OAuth нажмите кнопку Добавить клиента, введите его имя и домен.
    После создания OAuth клиента скопируйте Секрет клиента из поля в колонке Секрет и сохраните его в надежном месте. После обновления страницы скопировать секрет будет невозможно.
    • Для перехода к изменению имени и домена клиента OAuth нажмите кнопку в столбце Действия.
    • Для удаления клиента OAuth нажмите кнопку в столбце Действия.

    Примечание: Пользователь с ролью admin может просматривать и управлять OAuth клиентами всех пользователей, пользователям с другими ролями доступен просмотр и управление только своими OAuth клиентами.

    Управление организациями

    Функции, описанные в этом разделе, доступны только пользователю с ролью admin.

    Пользователи могут быть связаны с организациями. Один пользователь может принадлежать нескольким организациям. Организации носят информационный характер и не влияют на права пользователей в системе.

    Реестром организаций можно управлять на вкладке Организации страницы Настройки.

    Вкладка Организации страницы Настройки

    Доступен поиск по имени организации и сортировка по колонкам Название и Сокращенное название.

    Чтобы добавить новую организацию в реестр:

    1. Нажмите кнопку Добавить организацию.
    2. Заполните поля появившейся формы.
    3. Нажмите кнопку Добавить.
    Окно добавления организации в реестр

    Чтобы изменить данные существующей организации:

    1. Нажмите кнопку в столбце Действия.
    2. В появившейся форме отредактируйте данные организации.
    3. Нажмите кнопку Сохранить.

    Чтобы удалить организацию из реестра:

    1. Нажмите кнопку в столбце Действия.
    2. В появившемся диалоге подтвердите удаление, нажав на кнопку Удалить.
    Окно удаления организации из реестра

    Выход из системы

    Для выхода из системы выберите пункт Выход в меню пользователя в правом верхнем углу экрана.

    Выход из системы

    Использование регулярных выражений

    Регулярные выражения можно использовать для поиска и фильтрации данных в левой навигационной панели на вкладке Файлы и в окне настройки пользовательских фильтров в блоке Файлы.

    Особенности реализации:

    1. Поиск происходит только по регулярному выражению. Если требуется найти специальный символ в качестве обычного символа, его нужно экранировать (например, точку: «\.»)
    2. При поиске находятся вхождения подстроки в полном пути к файлу (аналогично grep). Если требуется найти по полной строке, используйте символы начала и конца строки: ^ и $
    3. Поиск не зависит от регистра символов (case insensitive).
    В окне настройки пользовательских фильтров в блоке Файлы можно применить фильтр как для отображения только маркеров из файлов, которые подходят под паттерн, так и для скрытия таких маркеров. Для переключения между этими режимами используйте кнопки и , которые расположены рядом с полем ввода.

    Примеры регулярных выражений:

    1. Поиск файлов с текстом sha или md5 в любом месте пути или имени файла:
    sha|md5
    2. Отображение только маркеров из файлов с расширением .c:
    .*\.c$
    3. Скрытие маркеров из файлов, имя которых начинается с символа q и которые имеют расширения .с или .сс:
    а) Используйте выражение /q[^/]*\.c$|/q[^/]*\.cc$
    б) Нажмите кнопку рядом с полем ввода, чтобы она поменялась на .
    4. Отображение только маркеров из файлов, которые имеют текст string в конце имени файла и с расширением из одного символа:
    /.*string\..$
    5. Скрытие маркеров из файлов в директориях asn1 и pem:
    а) Используйте выражение /asn1/|/pem/
    б) Нажмите кнопку рядом с полем ввода, чтобы она поменялась на .
    6. Отображение только маркеров из файлов, которые имеют в имени три цифры подряд:
    .*/.*[0-9]{3}[^/]*$
    где [^/]*$ означает, что после трех цифр и до конца строки может встречаться любой символ, кроме прямого слеша. Это позволяет исключить директории, имеющие три цифры в названии.