使用 Log4J 属性文件免除给定类不写入我的日志文件的义务

发布于 2024-09-15 18:24:17 字数 1056 浏览 4 评论 0原文

我正在使用 log4j 进行日志记录。

我最近添加了一个库(称为 DBPool 的连接池库),它正在向我的日志文件生成大量输出。日志文件在 30 分钟内达到其最大文件大小。

日志文件的过多输出也使我的调试变得非常困难,因为我无法在日志文件中轻松找到我感兴趣的行,这阻碍了我调试代码。

我的问题是,如何使用 log4j 避免给定类写入我的日志文件?

这是我的 log4.properties 文件的内容。

log4j.rootCategory=DEBUG, dailyApp
log4j.rootCategory=DEBUG, dailyApp 
log4j.appender.A1=org.apache.log4j.ConsoleAppender 
log4j.appender.A1=org.apache.log4j.ConsoleAppender   
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d %-4r [%t] %-5p %c{2} %x - %m%n
log4j.appender.dailyApp=org.apache.log4j.RollingFileAppender

log4j.appender.dailyApp.File=logs/myLog.log

log4j.appender.dailyapp.MaxFileSize=1024KB
log4j.appender.dailyApp.MaxBackupIndex=5

log4j.appender.dailyApp.layout=org.apache.log4j.PatternLayout
log4j.appender.dailyApp.layout.ConversionPattern=%d %-4r [%t] %-5p %c{2} %x - %m%n
log4j.logger.httpclient=INFO
log4j.logger.org.apache.commons.httpclient=INFO

我不想登录logs/myLog.log 的类是snaq.db.ConnectionPool

谢谢。

I am using log4j to do my logging.

I lately added a library (Connection pooling lib called DBPool) and it is producing a lot of output to my log file. The log file reaches its max file size in less than 30minutes.

The excessive output to my log file is also making my debugging very hard because I cannot see easily locate my lines of interest in the log file is hindering me from debugging my code.

My question is, How do I exempt a given class from writing in my log file using log4j?

Here is my log4.properties file's contents.

log4j.rootCategory=DEBUG, dailyApp
log4j.rootCategory=DEBUG, dailyApp 
log4j.appender.A1=org.apache.log4j.ConsoleAppender 
log4j.appender.A1=org.apache.log4j.ConsoleAppender   
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d %-4r [%t] %-5p %c{2} %x - %m%n
log4j.appender.dailyApp=org.apache.log4j.RollingFileAppender

log4j.appender.dailyApp.File=logs/myLog.log

log4j.appender.dailyapp.MaxFileSize=1024KB
log4j.appender.dailyApp.MaxBackupIndex=5

log4j.appender.dailyApp.layout=org.apache.log4j.PatternLayout
log4j.appender.dailyApp.layout.ConversionPattern=%d %-4r [%t] %-5p %c{2} %x - %m%n
log4j.logger.httpclient=INFO
log4j.logger.org.apache.commons.httpclient=INFO

The class I do not want to log into logs/myLog.log is snaq.db.ConnectionPool

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

-残月青衣踏尘吟 2024-09-22 18:24:17

据我所知,以下内容应该有效,就像配置底部的两个 INFO 级别一样。

log4j.logger.some.package.name=OFF

As far as I know the following should work, like with the two INFO levels at the bottom of your configuration.

log4j.logger.some.package.name=OFF
天涯沦落人 2024-09-22 18:24:17

添加此行

log4.logger.snaq.db = ERROR

应该有所帮助

Adding this line

log4.logger.snaq.db = ERROR

should help

烙印 2024-09-22 18:24:17

将此行添加到配置文件应该可以:

log4j.snap.db.ConnectionPool=ERROR

这不会禁用此类实例的日志记录,但将最低级别设置为错误。

Adding this line to the configuration file should work:

log4j.snap.db.ConnectionPool=ERROR

This will not disable logging for instances of this class but set the minimum level to error.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文