我对这种配置中的目的Using
感到困惑。
不幸的是,关键字“ using”是一个非常常见的词,因此谷歌搜索没有给出可用的结果:
a)使用代码进行配置时,示例中没有看到类似的构建器方法,只有.WriteTo()
方法
b)有趣的是,我什至把它注释掉了,但仍然一切正常(两个控制台,两个文件)。
WriteTo
元素下面的两个Name元素(即Console
和File
)不是这里的两个下沉吗?也许Using
是寻找类的名称空间? (然后为什么在注释掉后仍然起作用?这还意味着控制台接收器和文件接收器都在名称空间Serilog.Sinks.Console下)
"Serilog": {
"Using": [ "Serilog.Sinks.Console" ],
"MinimumLevel": {
"Default": "Debug",
"Override": {
"Microsoft": "Debug",
"System": "Warning"
}
},
"WriteTo": [
{ "Name": "Console" },
{
"Name": "File",
"Args": {
"path": "%TEMP%\\Logs\\mylog.txt"
//"outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss.fff} [{Level:u3}] [Req: {RequestInfo}] {Message}{NewLine}{Exception}"
}
}
]
}