У меня есть NLog макет так:Почему это предложение «когда» в NLog не работает?
${date} ${uppercase:${level}} ${when:when=(level)>=LogLevel.Debug:callsite:includeSourcePath=false}: ${message}
when
в основном работает. Мои записи в журнале не показывают места вызова, потому что они находятся на Info
уровне, но слово callsite
выводится в записи журнала как буквальный:
2016/10/06 09: 15: 15,814 INFO callsite: Запущено приложение сервис «MSSQLSERVER» с интервалом в 10 секунд.
Если я пытаюсь макет так:
${date} ${uppercase:${level}} ${when:when=(level)>=LogLevel.Debug:${callsite:includeSourcePath=false}}: ${message}
того when
не работает на всех, и запись правильно включает outpout информации места вызова:
2016/10/06 09: 17: 01.718 INFO SqlServer.Monitor.Application.MonitorApplication.Start: Приложение приступило к мониторингу службы MSSQLSERVER с интервалом в 10 секунд.
Спасибо, @Julian. – ProfK
Я добавил пример в документы: https://github.com/NLog/NLog/wiki/When-Layout-Renderer – Julian