代码之家  ›  专栏  ›  技术社区  ›  Wrmcodeblocks

无法在带有serilog的appsettings中为serilog指定Http接收器。水槽。Http nuget包

  •  0
  • Wrmcodeblocks  · 技术社区  · 6 年前

                _seriLog = new LoggerConfiguration()
                    .WriteTo.DurableHttpUsingTimeRolledBuffers("http://192.168.100.178:8080")
                    .CreateLogger();
    

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <appSettings>
            <add key="serilog:minimum-level"  value="Verbose"/>
            <add key="serilog:using:Http" value="Serilog.Sinks.Http" />
            <add key="serilog:write-to:Http.requestUri" value="http://192.168.100.178:8080" />
        </appSettings>
        <startup>
            <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
        </startup>
    </configuration>
    

    stack trace

    更新:实际上启动项目引发了一个异常:无法加载文件或程序集的Serilog。水槽。Http'。请参阅下面的解决方案。

    0 回复  |  直到 6 年前
        1
  •  0
  •   FantasticFiasco    6 年前

    我想你忘了添加 <add key="serilog:write-to:DurableHttpUsingTimeRolledBuffers" /> 到您的配置。我的配置看起来像这样,并且似乎按预期工作。

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <appSettings>
        <add key="serilog:using:Http" value="Serilog.Sinks.Http" />
        <add key="serilog:write-to:DurableHttpUsingTimeRolledBuffers" />
        <add key="serilog:write-to:DurableHttpUsingTimeRolledBuffers.requestUri" value="http://localhost:8080/log-events" />
      </appSettings>
    </configuration>
    
        2
  •  0
  •   Wrmcodeblocks    6 年前

    this github issue ,并添加了Serilog。下沉Http nuget包到ProjectA。立即修复了问题。