我的网络服务器位于与我不同的时区,我在Log4perl配置中使用此模式布局:
log4perl.appender.LOGFILE.layout=PatternLayout
log4perl.appender.LOGFILE.layout.ConversionPattern=%d | %p | %l | %c | %m%n
%d在服务器的时区中生成日期/时间。如何让它在我当地的时区记录日期/时间呢?
我知道以下内容:
$Log::Log4perl::DateFormat::GMTIME = 1;
导致在GMT中记录日期/时间但是我在文档中找不到任何支持任意时区的内容。
答案 0 :(得分:0)
如果您通常为Perl设置时区,那么也会修复日志。对于你的目的,可能是一种过于钝的仪器:
use POSIX qw(tzset);
$ENV{TZ} = 'desired time zone goes here';
tzset;
如果你有权访问,你可以在网络服务器本身的环境中设置TZ并将所有内容放在所需的区域内。
但我认为你最好用UTC记录所有内容。