在某些情况下,我想将上下文信息添加到消息(例如当前经过身份验证的用户)中,而不必将其包含在消息模板中。
我想做到这一点:
logger.Information("Doing stuff {Foo} with the thing {Bar}. {User}", foo, bar, user)
但没有{User}
在模板中。
我已经知道了,LogContext
但是在仅向一个事件中添加上下文信息时,这似乎有点矫枉过正。
我也知道我可以使用低级 APIlogger.Write(LogEvent evnt)
来实际控制包含哪些属性,但这对于我想要完成的任务来说似乎有点太多了。
我很确定有一种非常明显的简短而优雅的方式,但我还没有找到它:)
更新 :
我后来才发现这个问题或多或少相似:Add custom properties to Serilog