【问题标题】:Using log4net for multithreaded application将 log4net 用于多线程应用程序
【发布时间】:2011-05-01 04:25:16
【问题描述】:

我有一个应用程序,它使用 .net 线程池来拥有多个线程。它使用 log4net 将日志写入纯文本文件。像这样使用 log4net 进行异步日志记录是个好主意。还是我需要单独的 MSMQ 实现来附加消息?

【问题讨论】:

    标签: multithreading log4net


    【解决方案1】:

    您可以将 log4net 原样用于多线程应用程序的基于文件的日志记录。来自所有线程的日志消息将被写入同一个文件。阅读所有穿插的消息可能会有些混乱,但总比没有日志记录要好。您肯定希望以 appender 格式记录线程 ID,这样您就可以知道哪些消息来自哪个线程。

    您可能可以做更多奇特的事情来处理不同线程的日志记录,但我从来没有真正走这条路。我更喜欢坚持使用基于文件的日志记录,在我看来,让所有线程都记录到一个文件比让每个线程都记录到自己的文件更容易处理。

    【讨论】:

    • 但是我刚刚查看了这个线程stackoverflow.com/questions/3119494/…。在我看来,这与你的想法不同?
    • 这取决于您使用日志记录的目的、您拥有多少日志记录等。我会从简单的 log4net 开始,如果这对您不起作用,请寻找其他选项。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多