有许多使用应用程序设置配置配置接收器及其属性的示例。但是,我无法通过应用程序设置真正地围绕配置自定义浓缩器。可以这样做吗?我试图使用我的类和程序集名称的完整路径来指定配置,但它似乎不起作用。以下是我尝试使用的配置示例:
<add key="serilog:enrich:with" value="MyApp.Logging.Serilog.MyEnricher, MyApp" />
答案 0 :(得分:1)
键值对语法当前需要为此情况定义的扩展方法才能工作,例如:
static class MyLoggerEnrichmentConfigurationExtensions
{
public static LoggerConfiguration WithMyEnricher(this LoggerEnrichmentConfiguration enrich)
{
return enrich.With(new MyEnricher());
}
}
然后引用并调用如下:
<add key="serilog:using:MyApp" value="MyApp" />
<add key="serilog:enrich:WithMyEnricher" />