Система отслеживания работоспособности счётчиков

Система отслеживания работоспособности счётчиков проверяет состояние счётчиков с периодичностью, указанной в конфигурационном файле Web-клиента по адресу Каталог-установки-Web-клиента\5.5\Site\web.config.

За периодичность проверки отвечает параметр UnreadCountersHealthCheckInterval, значение параметра задается в секундах и по умолчанию составляет 10 секунд.

Работоспособность счётчиков проверяется для пользователей, указанных в параметре UnreadCountersMonitoringSettings. В параметре можно указывать роли или группы, а также базы данных (RoleId или GroupId, а также TenantName). Идентификаторы (RowId) для ролей и групп можно получить через DvExplorer.

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

Если в течение периода WarnTimeout не производился расчёт счётчиков, будет выдано предупреждение. Если после периода AlertTimeout рассчёт счётчиков не возобновился, будет записано сообщение об ошибке и выполнена попытка восстановить (перезапустить) работу счетчиков. Также включится уровень журналирования Trace. Период журналирования указывается в параметре AutoDiagnosticLogTime в минутах, по умолчанию 15.

Расширенное журналирование включается не чаще, чем раз в интервал AutoDiagnosticLogEnableMinInterval. Интервал задаётся в часах, по умолчанию 1, можно указать дробное значение.

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

Счетчики считаются рабочими, если производится расчет значений не реже чем раз в период времени, указанный в WarnTimeout и AlertTimeout. Периоды нужно подбирать в соответствии с настройками времени расчета папок, отображаемых для пользователей. Если все папки свернуты, проверка приостанавливается. Об этом отправляется информационное сообщение.

Предупреждения и ошибки выдаются однажды перед изменением состояния. То есть, если возникла ошибка, и она сохраняется, будет выдано одно сообщение. Если счетчики заработают, а потом снова перестанут, сообщение появится снова.

Предупреждение отправляется в сервис ISystemStateNotificationService: записываются в журнал Web-клиента и выводятся в консоли браузера. Данные сообщений можно получать через внешний сервис, если подписаться на событие ISystemStateNotificationService.Notification. В сообщении есть поля Severity и Source, которые нужно учитывать.