Введение в мониторинг и логирование
Реализация журналов в системе выполнена с использованием библиотеки Nlog с открытым исходным кодом. Логи хранятся на сервере, где установлена система, в папке <место нахождения файлов данных>\Logs. Платформа позволяет настроить уровень логирования, правила формирования журналов и место хранения журналов в конфигурационном файле <место установки платформы>\web.nlog. Структура конфигурационного файла подробно описана в документации по модулю, приведенном на следующей странице https://github.com/NLog/NLog/wiki/Tutorial.
Все описанные ниже параметры по именованиям файлов журналов, параметры их формирования, ограничения по размеру и предельному количеству возможно настроить индивидуально с помощью конфигурационного файла Web.nlog.
Также существует возможность настроить дополнительное логирование средствами ОС Windows с помощью Perfomance Monitor.
При настройке правил логирования в библиотеке имеется возможность настроить отправку уведомлений на электронную почту, для этого необходимо указать в соответствующем разделе конфигурационного файла Web.nlog необходимые параметры. Например, для настроек отправки уведомлений на электронную почту ошибок при выполнении процессов экспорта или импорта данных (интеграции) следующие настройки:
- В разделе targets создать новый блок:
<target name="reportFailedIntegration" xsi:type="Mail"
layout="${integrationFormat}"
smtpServer="mail.comindware.com"
from="mailname@mailservername"
to="usermailname@ mailservername "
subject="Message text" />
- В разделе rules создать следующий блок:
<logger name="*" minlevel="Warn" writeTo="reportFailedIntegration">
<filters>
<when condition="not equals('${gdc:eventId}','502')" action="Ignore" />
</filters>
</logger>
Таким образом в случае возникновении ошибок при выполнении настроенных интеграции система будет отправлять на указанный адрес почты сообщение об ошибке.
На текущий момент платформа поддерживает следующие виды журналов:
Любой из перечисленных журналов представляет собой структурированный текстовый файл с разделителем в виде пробела. В качестве инструментов анализа и чтения можно использовать любой доступный бесплатный или платный инструмент, представленный на рынке. Например, есть мощный инструмент Kibana https://www.elastic.co/products/kibana, который обладает широким спектром функциональности по сбору журналов с различных ресурсов и их глубокому анализу с различными визуальными представлениями, в том числе в виде графиков.