Здравствуйте.
Установлена версия 3.40.2, было сказано, что в ней появится возможность писать события в системный журнал. Но у меня оно не работает. Специально отключил модем, в системный журнал ничего не пишется. В чем может быть проблема?
1.xlsx (7.75 KB)
На сколько я понимаю, под словами
вы подразумеваете последний комментарий от Антон Чичков в теме вашего предложения по выводу таких сообщений в системный журнал. На самом деле в данном комментарии говорится об отсутствии необходимой библиотеки для вывода сообщений Сервером в системный журнал и что она появиться в версии 3.40.2.
Уточните, пожалуйста, у вас выполнены необходимые настройки NLog, которые обсуждались в другой вашей теме?
Нет, ни каких настроек я не производил, так как не видел инструкции для этого. Прошлый раз Вы давали файл и все. Сейчас скачивать его я не рискнул, так как он слишком старый. Скажите, каким образом настроить NLog?
Перед выполнением нижеописанных действий обязательно сделайте копию файла NLog.
В файле NLog в секции “targets” после блока “target” с именем “LersEventLog” добавьте еще один блок:
<target xsi:type="EventLog"
name="LersModemInitEventLog"
layout="${logger}	${message}	${exception-dump}"
machineName="."
source="LersServer"
eventId="2"
log="ЛЭРС УЧЕТ"/>
Также в секции “rules” добавьте в конце еще один блок “logger” вот такого вида:
<logger name="Lers.Poll.PollSession" minlevel="Info" writeTo="LersModemInitEventLog">
<filters>
<when condition="contains('${message}', 'Ошибка инициализации коммуникационного оборудования')" action="Log"/>
<when condition="true" action="Ignore"/>
</filters>
</logger>
Сохраните изменения, перезагрузите Сервер и проверьте станут ли появляться рассматриваемые сообщения в системном журнале.
Если с добавлением изменений в файл NLog возникнут трудности, пришлите ваш файл. Мы самостоятельно внесем вышеописанные изменения и пришлем измененный файл.
Нужно перезагрузить службу “Сервер” или компьютер “Сервер”?
Достаточно перезагрузить службу Сервера.
Перезагружал, в ЛЭРСе событие имеется, а в Windows нет.
Редактировал этот файл C:Program FilesLERSServerNLog.config
NLog.config.txt (5.17 KB)
Приложите, пожалуйста, журнал работы Сервера за вчера 17.06.2021.
Спасибо за обращение! Мы поставили в план работ задачу по более детальному анализу ситуации. О результатах анализа будет сообщено дополнительно.
Как выяснилось, проблема возникала из-за отсутствия в реестре ветки HKEY_LOCAL_MACHINESYSTEMCurrentControlSetserviceseventlogЛЭРС УЧЕТLersServer с строковым параметром EventMessageFile аналогично ветке HKEY_LOCAL_MACHINESYSTEMCurrentControlSetserviceseventlogЛЭРС УЧЕТLersUpdateService.
Проверьте, пожалуйста, наличие вышеописанной ветки LersServer и, если таковая отсутствует, создайте ее по ветке LersUpdateService со всеми параметрами и их значениями из данной ветки. Условно говоря вам необходимо будет полностью скопировать ветку HKEY_LOCAL_MACHINESYSTEMCurrentControlSetserviceseventlogЛЭРС УЧЕТLersUpdateService в HKEY_LOCAL_MACHINESYSTEMCurrentControlSetserviceseventlogЛЭРС УЧЕТLersServer.
Также хочу отметить, что файл “NLog.config” может быть замещен при обновлении ЛЭРС УЧЕТ, поэтому все настройки NLog следует задавать в специальном файле для дополнительных настроек NLog “Custom.NLog.config”.
Кроме того у ошибки “Ошибка инициализации коммуникационного оборудования” изменился источник на “Lers.Poll.Sessions.ClosePollSessionHandler”.
В связи с вышеупомянутыми уточнениями, пожалуйста, удалите из файла “NLog.config” внесенные ранее в ходе обсуждения данной темы изменения и в файле “Custom.NLog.config” после комментария “Дополнительные правила протоколирования можно определить в этом файле” внутри тега “nlog” добавьте вот такие настройки:
<targets>
<target xsi:type="EventLog"
name="LersModemInitEventLog"
layout="${logger}	${message}	${exception-dump}"
machineName="."
source="LersServer"
eventId="2"
log="ЛЭРС УЧЕТ"/>
</targets>
<rules>
<logger name="Lers.Poll.Sessions.ClosePollSessionHandler" minlevel="Info" writeTo="LersModemInitEventLog">
<filters>
<when condition="contains('${message}', 'Ошибка инициализации коммуникационного оборудования')" action="Log"/>
<when condition="true" action="Ignore"/>
</filters>
</logger>
</rules>
После выполнения всех вышеописанных в текущем комментарии действий перезагрузите Сервер, воспроизведите ошибку инициализации коммуникационного оборудования и проверьте появиться ли событие в разделе ЛЭРС УЧЕТ журнала событий Windows.