使用log4net为每条消息创建新文件

本文关键字:新文件 文件 创建 消息 log4net 使用 | 更新日期: 2023-09-27 18:20:35

我正在使用log4net来跟踪应用程序错误和调试信息,所有这些都会放在一个大文件中,并且运行良好。

但我也想创建一个单独的log4net appender,用于将传入消息转储到磁盘。这些将在一个单独的目录中,我希望每次对log.Info的调用都被写入一个新文件,最好在文件名中有一个时间戳。

这样,我就可以很容易地调出在给定时间戳发送到组件的特定消息。

这可以通过配置完成吗?

使用log4net为每条消息创建新文件

这样的东西适合你吗?

private void LogFile(string logFileName, string message, Exception ex)
{
    log4net.ThreadContext.Properties["Version"] = "1";
    log4net.GlobalContext.Properties["LogName"] = logFileName;
    ILog logger = LogManager.GetLogger("DeIdentifyDicom");
    log4net.Config.XmlConfigurator.Configure();
    if (ex != null)
    {
        logger.Fatal(message, ex);
    }
    else
    {
        logger.Fatal(message);
    }
}

如何在运行时定义日志文件?