C#记录“线程”上下文

时间:2018-07-02 00:15:30

标签: c# logging

我正在尝试记录数据,但是我想有一种方法可以对日志进行“分组”,以便查看为特定实例\用户调用的代码。例如,如果我有多个类和方法:

DateTime  UniqueId  Method  Class  Data
{date}    {111}     M1      C1     Input = {...}
{date}    {999}     M1      C1     Input = {...}
{date}    {999}     M2      C2     Input = {...}
{date}    {111}     M2      C2     Input = {...}

最重要的方面是uniqueId。如果我有100行,并且知道一个uniqueId = 111的用户有问题,我只想过滤UniqueId = 111的日志。换句话说,我想添加一个UniqueId的唯一上下文,或者说一个threadId每次通话。

谢谢

1 个答案:

答案 0 :(得分:0)

如果这是您要实现的专有日志记录框架,请检查.NET“ Reflection”库以查找可帮助您使用CallerMemberName,CurrentThreadContext等属性的方法。

如果这是更大系统中的功能,那么为什么要重新发明轮子。进入已建立的日志记录框架,例如:NLog或Log4Net等。