Serilog的CouchDB接收器似乎没有使用LogContext

时间:2015-02-05 07:23:16

标签: c# logging couchdb serilog

我不确定如何将Serilog的LogContext与CouchDB接收器一起使用。

显示我当前用法的简单示例:

using (LogContext.PushProperty("Track", "hi"))
{
    this.Log.Information("test");
}

我在CouchDB Futon中看到的: Test

我的理解是LogContext将添加一个" Track"字段值为" hi"到所有Seri​​log原木,直到它被处理掉。但是,我没有看到这种情况发生。

1 个答案:

答案 0 :(得分:2)

(不知道如何回答我自己的问题,我通过进一步的研究找到了解决方案。)

为了像我一样使用LogContext类,需要使用以下命令初始化记录器: .Enrich.FromLogContext()

我以为我做过这个,但我......没有。

this.Log = new LoggerConfiguration()
    .WriteTo.ColoredConsole()
    .WriteTo.CouchDB("http://127.0.0.1:5984/logs")
    .Enrich.FromLogContext()
    .CreateLogger();

解释如下:https://github.com/serilog/serilog/wiki/Enrichment