Я работаю с Serilog и записываю события на SQL Server (используя библиотеки Serilog, Serilog.Framework.Logging и Serilog.Sinks.MSSqlServer).Serilog Дополнительные свойства
Как часть приложения MVC6, когда я регистрирую события и устанавливаю параметр для включения свойств, я вижу некоторые дополнительные свойства в столбце XML.
Если я выдаю что-то вроде следующего утверждения:
Log.Information("{Property1}", "Value1");
я вижу что-то вроде следующего в столбце Свойства:
<properties>
<property key="Property1">Value1</property>
<property key="SourceContext">WebApplication4.Controllers.BaseController</property>
<property key="ActionId">1b9f9c7e-7c5c-4b14-a30d-99f2ebc88c51</property>
<property key="RequestId">80000191-0001-f000-b63f-84710c7967bb</property>
</properties>
Где эти дополнительные свойства взялось? Могу ли я установить дополнительные свойства, подобные этим? Если да, где я их устанавливаю? Я могу установить дополнительные свойства, если я включу их в сообщение (аналогично Property1 выше), но я могу включить дополнительные свойства, которых нет в сообщении.
Я помню, как читал о первых двух вариантах, но по какой-то причине информация не прилипала. Последний вариант был для меня новым и выглядит как наиболее желательный вариант на данный момент. Один из других вопросов, которые я задал, - это то, откуда возникают дополнительные свойства при использовании MVC (ActionId, RequestId и т. Д.)? Где они * впрыскиваются *? Что они представляют? Я немного просмотрел код, но не помню, чтобы увидеть, где они установлены. Во всяком случае, я указал информацию, которую вы предоставили в качестве ответа. Спасибо. –
Извините за поздний ответ. Связанные с веб-ресурсами свойства, которые вы часто видите, взяты из: https://github.com/serilog-web/classic. –