C# 如何在不使用布局的情况下在自定义目标中获取ThreadId?
我确实创建了一个自定义db目标来登录到我的数据库。这是一个非常简单的目标,它只覆盖C# 如何在不使用布局的情况下在自定义目标中获取ThreadId?,c#,nlog,C#,Nlog,我确实创建了一个自定义db目标来登录到我的数据库。这是一个非常简单的目标,它只覆盖Write方法来在我的数据库中创建日志条目 这工作正常,所有信息都由LogEventInfo传递 但是现在我想记录threadId。据我所知,NLog使用布局参数${threadid}来实现这一点。但我不想使用布局渲染器写入数据库 我的问题 是否可以向LogEventInfo询问threadId?如果是:如何?如果否:NLog从何处获取此id?您可以使用threadId布局创建属性(首选)或变量,并呈现该属性或变量
Write
方法来在我的数据库中创建日志条目
这工作正常,所有信息都由LogEventInfo
传递
但是现在我想记录threadId。据我所知,NLog使用布局参数${threadid}
来实现这一点。但我不想使用布局渲染器写入数据库
我的问题
是否可以向LogEventInfo
询问threadId
?如果是:如何?如果否:NLog从何处获取此id?您可以使用threadId布局创建属性(首选)或变量,并呈现该属性或变量
e、 g
完全正确。我想我想把它复杂化了,尽量避免渲染太多:D
Layout threadIdLayout = "${threadid}"; //for performance, as static property on the custom class is recommend
var threadId = threadIdLayout.Render(logEvent);