1

Apache2 と ModPerl を使用して Catalyst Web アプリケーションをホストしています。Web アプリケーションは、Log4perl モジュールを使用してログファイルを生成します。

問題は、Apache サービスの開始時にログ エントリのみが生成されることです。その後、新しいエントリは生成されませんでした。

代わりにCatalystの統合開発サーバーを使用すると、ログエントリは正常に生成されます。

私はすでにアクセス権を確認しましたが、これらは問題ないようです。Apache プロセスは所有者であり、書き込み可能です。

誰でもこの問題の原因を考えていますか???

これは私のlog4perl構成です:

log4perl.logger.myapp=情報、ログファイル

log4perl.appender.LOGFILE=ログ::ログ4perl::アペンダー::ファイル

log4perl.appender.LOGFILE.filename=myapp.log

log4perl.appender.LOGFILE.mode=追加

log4perl.appender.LOGFILE.layout=パターンレイアウト

log4perl.appender.LOGFILE.layout.ConversionPattern=[%d] [%p] %m%n

4

1 に答える 1

0

Apache2 と mod_perl で実行するテスト アプリケーションをセットアップし、これを動作させました。これについて私が取ったメモは次のとおりです。

Log::Log4perl::Catalyst を使用して、Catalyst 内でログを記録しました。Log4perl を使用しているとのことでしたが、Catalyst 拡張機能を使用しているかどうかはわかりませんでした。私のメインパッケージには、次の行がありました。

use Log::Log4perl::Catalyst;
...
__PACKAGE__->log(Log::Log4perl::Catalyst->new('/full/path/to/l4p.conf'));

ログ構成ファイルへのフル パスを指定する必要がありました。機能することを確認するために、いくつかのログ ステートメントを追加しました。

上記のサンプルを使用しましたが、1 つ変更しました。ログの場所へのフル パスを再度指定する必要がありました。

log4perl.appender.LOGFILE.filename=/full/path/to/myapp.log

これらのことを行った後、メイン サイトにアクセスすると、ログ ファイルが更新されました。

于 2013-05-04T13:48:19.670 に答える