向Serilog添加自定义属性
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了向Serilog添加自定义属性相关的知识,希望对你有一定的参考价值。
我在我的应用程序中将Serilog与MS SQL Server接收器一起使用。假设我定义了以下类...
public class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
public DateTime BirthDate { get; set; }
// ... more properties
}
...并创建一个实例:
var person = new Person
{
FirstName = "John",
LastName = "Doe",
BirthDate = DateTime.UtcNow.AddYears(-25)
};
我在我的代码中放置了以下日志调用:
Log.Information("New user: {FirstName:l} {LastName:l}",
person.FirstName, person.LastName);
是否还可以记录BirthDate
属性不将其添加到消息模板中,以便将其呈现在Properties
XML列中?我想稍后在应用程序的日志查看器的详细信息视图中输出它。
我基本上是在寻找一种类似于对象分解的行为,但是没有将平面对象打印为日志消息的一部分。
答案
这很简单:
另一答案
您实际上可以通过几种不同的方式来执行此操作。就您而言,第一种方法可能是最好的:
以上是关于向Serilog添加自定义属性的主要内容,如果未能解决你的问题,请参考以下文章