gpt4 book ai didi

c# - log4net log4net.Util.PatternString 从代码配置

转载 作者:太空狗 更新时间:2023-10-29 23:52:33 24 4
gpt4 key购买 nike

我有一个带有 log4net 的控制台应用程序,我想从代码中添加日志文件名。 (我后面用线程)

class Program
{
static void Main(string[] args)
{
{
log4net.GlobalContext.Properties["fname"] = "aaaa";
log4net.Config.XmlConfigurator.Configure();
}
}
}

<appender name="default" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="d:\\TEMP\\default_%property{fname}.log"/>
...
</appender>

然后我得到 (null)。

感谢您的帮助。

最佳答案

它对我有用——我用的是 log4net 1.2.11以下是我正在使用的示例配置(我使用了与您相同的 C# 代码):

<?xml version="1.0"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
</configSections>

<log4net>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="default_%property{fname}.log"/>
<appendToFile value="true"/>
<rollingStyle value="Size"/>
<maxSizeRollBackups value="10"/>
<maximumFileSize value="100KB"/>
<staticLogFileName value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
</layout>
</appender>

<root>
<priority value="ALL"/>
<appender-ref ref="RollingFileAppender"/>
</root>

</log4net>
</configuration>

关于c# - log4net log4net.Util.PatternString 从代码配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7077082/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com