Всем привет!
Делаю логирование на NLog 4.9. в приложении ASP.NET Core. Имеется следующий таргет конфигурации:
<target xsi:type="File" name="jsonFile" fileName="${basedir}\${shortdate}.json">
<layout xsi:type="JsonLayout" includeAllProperties="true">
<attribute name="time" layout="${longdate}"/>
<attribute name="level" layout="${level:upperCase=true}"/>
<attribute name="eventProperties" encode="false" >
<layout type='JsonLayout' includeAllProperties="true" maxRecursionLimit="20"/>
</attribute>
</layout>
</target>
Вызываю логгер слеюдущим образом:
var eventInfo = new LogEventInfo
{
Properties = { { "var", "value" } }
};
_logger.Info(eventInfo);
Соответственно time и level отрабатывают как и требуется. А вот eventIinfo записыватся не совсем так как нужно.
{
"time": "2019-11-05 22:04:19.0990",
"level": "INFO",
"eventProperties":
{
"var": "value"
},
"var": "value"
}
Это общий пример и на нем не очень хорошо видно в чем именно проблема. А вот реальный пример:
Проблема в повторном переписывании всех полей, которые я передаю через LogEventInfo. У меня вопрос, почему NLog так записывает, это проблема в конфигурации логгера или это такая фича и нечего с этим не поделать.
Мне нужно, чтобы записи остались только "eventProperties"
Заранее спасибо!
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Я знаю как сделать полноэкранный режим,но прячет taskbar,как это пофиксить
Как можно разом экранировать все обратные слеши в строке?
Допустим, некий код извлекает из указателя структуруСтруктура имеет размер больше чем указатель/ссылка, будет ли дешевле обернуть эту структуру...
Прошу разрешить диллему, суть которой такова: Есть БД с сущностями представляющими факультет (студент, преподаватель, оценки, кафедры, и тд