如何在不同的 log4perl 配置之间切换?

发布于 2024-10-28 17:56:23 字数 273 浏览 3 评论 0原文

我将 log4perl 与一组脚本和对象一起使用。我希望能够根据命令行或环境参数在不同的日志配置之间切换,例如在“详细”模式下,打印出从 INFO 级别向上的所有消息,“调试”模式将 DEBUG 消息发送到 STDERR 和其他消息STDOUT,以及抑制除 FATAL 消息之外的所有输出的静默模式。

最好的方法是什么?我是否应该有多个记录器配置文件并根据脚本运行的模式加载适当的文件?如果我正确理解文档,我想更改根记录器的详细程度和阈值,以便附加到对象的所有记录器(即具有类别的记录器)将遵守与根记录器相同的规则。

I'm using log4perl with a set of scripts and objects. I'd like to be able to switch between different logging configurations according command line or environment parameters, e.g. in 'verbose' mode, print out all messages from INFO level upwards, a 'debug' mode that sends DEBUG messages to STDERR and other messages to STDOUT, and a silent mode that suppresses all output except FATAL messages.

What is the best way to do this? Should I have several logger config files and load the appropriate file depending on the mode that the script is to run in? If I understand the docs correctly, I want to be altering the verbosity and threshold of the root logger so that all loggers attached to objects (i.e. loggers with categories) will obey the same rules as the root logger.

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

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

发布评论

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

评论(1

情域 2024-11-04 17:56:23

是的,有多种配置可供选择。使用 Log::Log4perl::CommandLine 进行命令行集成。

Yes, have several configurations to choose from. Use Log::Log4perl::CommandLine for the command-line integration.

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