从多个线程生成的Log4Net读取日志

Ben*_*zar 8 logging log4net multithreading

我有一个脚本,有多个线程并行运行.这些线程写入Log4Net RollingFileAppender文件.读取此日志非常令人困惑,因为所有线程日志都已混淆.我想知道什么是编写这些日志的好方法,以及读取这些文件的最佳方法是什么,因此阅读特定线程的调试信息变得更加容易.

Ath*_*way 7

更新配置文件以在日志输出中包含线程名称.如果在代码中设置线程名称,则会将相同的名称记录到您的文件中.这是通过log4net配置文件<conversionPattern>标记包含线程名称的简单示例:

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
    <file value="service.log" />
    <appendToFile value="true" />
    <rollingStyle value="Size" />
    <maxSizeRollBackups value="10" />
    <maximumFileSize value="2MB" />
    <staticLogFileName value="true" />
    <layout type="log4net.Layout.PatternLayout">
        **<conversionPattern value="%-5level : [%t] - %message%newline" />**
    </layout>
</appender>
Run Code Online (Sandbox Code Playgroud)

更新 我写了一个简单的POC应用来证明这一点.http://codereport.net/logging-the-thread-name-with-log4net/