0

私のWebサーバーは私のものとは異なるタイムゾーンにあり、Log4perl構成でこのパターンレイアウトを使用しています:

log4perl.appender.LOGFILE.layout=PatternLayout
log4perl.appender.LOGFILE.layout.ConversionPattern=%d | %p | %l | %c | %m%n

%d は、サーバーのタイムゾーンで日付/時刻を生成します。代わりに、ローカルタイムゾーンで日付/時刻を記録するにはどうすればよいですか?

私は次のことを認識しています。

$Log::Log4perl::DateFormat::GMTIME = 1;

日付/時刻が GMT で記録されますが、任意のタイムゾーンをサポートするドキュメントは見つかりませんでした。

4

1 に答える 1

0

通常、Perl のタイム ゾーンを設定すると、ログも修正されます。あなたの目的には鈍すぎるかもしれません:

use POSIX qw(tzset);

$ENV{TZ} = 'desired time zone goes here';
tzset;

さらに率直に言うと、アクセスできる場合は、Web サーバー自体の環境で TZ を設定し、すべてを目的のゾーンに配置できます。

しかし、すべてを UTC で記録したほうがよいと思います。

于 2012-06-17T12:37:45.240 に答える