Веб-служба
Веб-служба мониторинга предназначена для обмена данными о тестировании между Сервером Мониторинга и Агентами Мониторинга. Настроить Веб-службу возможно на любом экземпляре КриптоПро Центр Мониторинга, однако основной вариант использования подразумевает ее настройку на Агентах, которые с ее помощью смогут отправлять информацию о тестах на Сервер Мониторинга. Сервер Мониторинга получает сведения от Веб-службы при помощи Теста состояния удаленного Агента Мониторинга.
Примечание
Для корректной работы Веб-службы Службе Мониторинга необходимы соответствующие права.
Для включения Веб-службы в разделе «Конфигурация тестирования» (1) перейдите на вкладку «Веб-служба» (2) и включите чекбокс «Включить веб-службу» (3). При необходимости скорректируйте поле «Адрес службы» (4) и нажмите кнопку «Сохранить» (5).

Примечание
После изменения настроек Веб-службы необходимо сохранить изменения путем нажатия кнопки «Сохранить» и перезапустить Службу мониторинга или перечитать конфигурацию.
Взаимодействие с Веб-службой осуществляется путем отправки к ней GET-запроса вида:
GET <Адрес службы>/<Имя экземпляра тестирования>/GetLastTestStatus
Пример запроса:
http://win-srv:8080/monitor/DSS/GetLastTestStatus
Возможны два варианта ответа веб-службы:
- HTTP 200 (успех);
 - HTTP 500 (ошибка).
 
Веб-служба вернет HTTP 200, если в предыдущем запуске тестов на Агенте, к которому делается запрос, для указанного экземпляра тестирования не произошло ошибок.
Веб-служба вернет HTTP 500, если в предыдущем запуске тестов на Агенте, к которому делается запрос, были ошибки. В данный ответ помещаются сведения о результатах последнего запуска тестирования в формате JSON (см. Таблица 8).
Таблица 8 — Ответ Веб-службы
| Поле | Тип | Описание | 
|---|---|---|
| DetailedInformation | List<string> | Список результатов последнего запуска тестов | 
| ErrorMessage | String | Краткое описание ошибки. Допустимые значения:  * Тестирование экземпляра [Имя экземпляра] еще не проводилось; * Один или несколько тестов завершились с ошибкой.  | 
| Time | String | Время форматирования данного сообщения в UTC. | 
Пример ответа:
{"DetailedInformation":
 ["DSS -> Тестовая аутентификация -> успешно завершён",
 "DSS -> Тестовая подпись -> успешно завершён",
 "DSS -> Тест криптопровайдеров Сервиса Подписи DSS -> успешно завершён",
 "DSS -> Проверка сертификатов веб интерфейса DSS -> успешно завершён",
 "DSS -> Проверка сертификатов сервиса ЦИ DSS -> завершён с ошибкой",
 "DSS -> Проверка сертификатов сервиса подписи DSS -> успешно завершён"],
"ErrorMessage":"DSS: Один или несколько тестов завершились с ошибкой.",
"Time":"2019-01-29T10:18:04Z"}
Возможно также получить результат последнего запуска для нескольких экземпляров тестирования. Ответ содержит список струкрур, аналогичных Таблице 8, для каждого из запрошенных экземпляров. Если хотя бы для одного экземпляра в результате последенего запуска тестов были обнаружены ошибки, Служба вернёт результат 500, иначе 200.
Взаимодействие с Веб-службой осуществляется путем отправки к ней 
GET-запроса с разделителем вида нижнее_подчёркивание_@_нижнее_подчёркивание:
GET <Адрес службы>/aggregate/<Имя экземпляра тестирования 1>_@_<Имя экземпляра тестирования 2>/GetLastTestStatus
Пример запроса:
http://win-srv:8080/monitor/aggregate/dss_@_nte/GetLastTestStatus
Пример ответа:
[
    {
        "DetailedInformation": [
            "DSS -> Тестовая подпись -> успешно завершён",
            "DSS -> Тест конечных точек DSS -> успешно завершён",
            "DSS -> Тест срока действия CRL -> завершён с ошибкой"
        ],
        "ErrorMessage": "DSS: Один или несколько тестов завершились с ошибкой.",
        "Time": "2020-06-09T10:16:35Z"
    },
    {
        "DetailedInformation": [
            "nte -> Тест срока действия CRL -> завершён с ошибкой"
        ],
        "ErrorMessage": "nte: Один или несколько тестов завершились с ошибкой.",
        "Time": "2020-06-09T10:15:52Z"
    }
]
Сервер Мониторинга также может получать результаты тестирования от Агента Мониторинга при помощи Веб-службы. Для этого используется Тест состояния удаленного Агента Мониторинга. Укажите следующие настройки данного теста:
- Адрес службы (1) — Адрес службы из настроек Веб-службы на Агенте (Например, 
http://win-srv:8080/monitor) - Имя экземпляра тестирования (2) — Имя тестируемого экземпляра на Агенте (Например, 
DSS). - Cохраните настройки теста при помощи кнопки «Сохранить» (3).
 
Пример:
