作者:wurtjq | 2023-08-29 17:56
这是我的log4net配置文件
我错过了什么吗?任何提示/建议,以减少日志大小,同时保持清晰度,更好的转换模式?任何有趣的黑客?
编辑:XMl文件没有进入代码块.更新.任何建议?
1> nakhli..:
没人提到编码.如果您使用中文,日语,阿拉伯语或任何双字节语言记录消息,这一点非常重要.这是一个例子:
非常有用的评论.我希望这是默认的.但是,当使用value ="utf-8"时,即使文件为空,所有文件也将包含BOM.对于典型的日志记录,通常总是有内容,因此这不是问题.但是,这对于错误和警告日志来说是不合需要的 - 理想情况下应该是空的 - 但由于BOM的原因,它仍然会显示为1 KB的大小,因此您总是需要检查它以防出现真正的错误.解决方法是使用
代替.这将省略不需要的BOM,因此空日志将显示为0 KB.
2> Dscoduc..:
RollingLogFileAppender的一个建议是使用最小的lockingModel.使用此设置,日志文件不会被锁定,而是打开然后为每次写入关闭.
只有在尝试使用多个进程(注意 - 进程,而不是线程; log4net已经是线程安全的)写入同一个日志文件时,才需要`FileAppender.MinimalLock`.否则它只会减慢速度:"这种锁定方法比FileAppender.ExclusiveLock慢得多",来自http://logging.apache.org/log4net/release/sdk/log4net.Appender.FileAppender.MinimalLock.html
我还要提一下,写入同一个日志文件的多个进程通常不是一个好主意.从[FAQ](http://logging.apache.org/log4net/release/faq.html#single-file):"问问自己是否真的需要将多个进程登录到同一个文件,然后不要做到这一点;-)".为每个进程提供自己的日志文件来写入通常是个更好的主意.
3> David Espart..:
根据消息级别(调试,信息,错误或致命)在控制台上显示时使用不同颜色进行日志记录.第二个appender是将它保存在文件中:
4> Sean..:
要减少日志文件大小,您可以尝试调整ConversionPattern:
这是我使用的格式:
之前:
2012-06-05 10:58:40,819 [1] INFO我的应用[(null)] - 我的应用程序 - ===星婷....
后:
06/05 11:17:29,151- {INFO} - 我的应用 - ===开始......
注意:Apache的文档似乎对log4net不正确 - 因为它说使用SSS几毫秒,而log4net使用fff
每行少量节省可能会产生很大的差异:)