2
我有以下用於多個腳本的log4perl.conf配置文件。它被配置爲顯示來自所有日誌級別的消息。在Log4Perl中定義多個日誌級別
# Log4perl configuration file
log4perl.rootLogger = ALL, screen, file
log4perl.appender.screen = Log::Log4perl::Appender::Screen
log4perl.appender.screen.stderr = 0
log4perl.appender.screen.layout = PatternLayout
log4perl.appender.screen.layout.ConversionPattern = %d %p> %m%n
log4perl.appender.file = Log::Log4perl::Appender::File
log4perl.appender.file.filename = sub { my $script=$0; $script =~ s/(dev|test|prod)\/script/log/; $script =~ s/\.[^.]+$//; return "$script.log" }
log4perl.appender.file.mode = append
log4perl.appender.file.layout = PatternLayout
log4perl.appender.file.layout.ConversionPattern = %d %p> %m%n
腳本使用該代碼段初始化:
use Log::Log4perl;
# Logger configuration
Log::Log4perl->init('/etc/log4perl.conf');
$logger = Log::Log4perl->get_logger();
什麼是調整日誌記錄級別,而不必因爲有使用多個腳本每次修改配置文件的最好方法相同的配置。
我可以創建一個新的記錄器並讓腳本使用該記錄器而不是根記錄器嗎?
你是說你想暫時改變日誌級別(就像在單個腳本的一小部分中一樣)而不對配置進行修改?或者你想爲每個腳本單獨記錄? – ThisSuitIsBlackNot
我希望能夠在不影響其他腳本的情況下臨時更改單個腳本的日誌記錄級別。不確定最好的方法來實現。 –