c# - log4net 没有写入两个 RollingFileAppenders
问题描述
这是我的应用配置
<log4net>
<root>
<level value="ALL" />
<appender-ref ref="RollingFileAppender" />
</root>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file type='log4net.Util.PatternString' value='%property{LogPath}\%property{LogFileName}' />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="5" />
<maximumFileSize value="10MB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %level [%thread] - %message%newline" />
</layout>
</appender>
<appender name="PerformanceLogger" type="log4net.Appender.RollingFileAppender">
<file type='log4net.Util.PatternString' value='%property{LogPath}\%property{PerformanceLogFileName}' />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="1" />
<maximumFileSize value="2MB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %level [%thread] - %message%newline" />
</layout>
</appender>
<logger Name="PerformanceLogger" additivity="false">
<level value="ALL"/>
<appender-ref ref="PerformanceLogger"/>
</logger>
</log4net>
当我尝试获取记录器并写入它时。它只是为 PerformanceLogger 创建文件,但不写入。
log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
performaceLog = LogManager.GetLogger("PerformanceLogger");
但我的log.Info("test");
工作正常,它会创建一个文件并写入它。
请问这方面有什么建议吗?
解决方案
PerformanceLogger 的记录器定义不正确 - 您使用Name
而不是name
定义记录器的名称。将其更改为以下内容,它应该可以正常工作:
...
<logger name="PerformanceLogger" additivity="false">
<level value="ALL"/>
<appender-ref ref="PerformanceLogger"/>
</logger>
...
推荐阅读
- php - laravel 护照模块中个人访问令牌的过期时间
- android - 在密钥库 keystore.jks 中找不到别名为“foo”的密钥
- swift - 无法取消选择 DLRadioButton 单选按钮
- php - 如何在数据表中将 group_concat() 列显示为一列?
- sql - 我如何决定加入表格的键
- performance - Need Opinions / Perspectives - 大型数据集的分页方法
- javascript - Ajax 数据不发送,但请求文件
- postgresql - 将日期字段保存为 dd/mm/yyyy rails
- r - r Shiny 使用数据框列进行选择
- bash - 测试服务器设置 bash 脚本