如何判断 Log4perl 在运行期间是否发出任何警告?
我一直在许多脚本中广泛使用 Log4perl 。我想扩充这些脚本,以便在记录了任何 WARN
或 ERROR
消息时设置错误代码。根据现有文档,我找不到任何明显的方法来做到这一点。
我想避免对现有脚本进行强力重写,以添加对每个 WARN
或 ERROR
日志消息的检查;如果可能的话,我更愿意在脚本退出之前处理它,就像这样的伪代码:
if $log->has_warnings_or_errors then
exit 1
else
exit 0
有没有简单的方法来调用 Log4Perl 来确定当前记录器是否有某些级别的问题消息?
I've been using Log4perl extensively in a number of scripts. I'd like to augment those scripts to set an error code if any WARN
or ERROR
messages have been logged. I couldn't find any obvious way to do this based on existing documentation.
I'd like to avoid a brute-force rewrite of my existing scripts to add a check on every WARN
or ERROR
log message; I'd prefer to handle it prior to script exit if possible like this pseudocode:
if $log->has_warnings_or_errors then
exit 1
else
exit 0
Is there any easy way to call Log4Perl to determine if the current logger has issues messages of certain levels?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用 appender。
MyCounter.pm:
myprog:
输出:
注释掉
...->warn
、...->error
和...->fatal
行来获取Use an appender.
MyCounter.pm:
myprog:
Output:
Comment out the
...->warn
,...->error
, and...->fatal
lines to get您可以使用 包装器 并编写自定义
fatal
、error
和warn
方法,用于递增计数器以及返回该计数器值的访问器。You could use a wrapper and write custom
fatal
,error
andwarn
methods that increment a counter and an accessor that returns the value of that counter.