2017-07-10 9 views
0

私はPHPとApacheで動作するレガシーアプリケーションを持っています。PHP:access.logへの情報の送信、error.logへのエラー

すべてのログはerror_log()でログに記録され、Apacheのerror.logになります。

エラーメッセージをerror.logに送信し、その他のログをaccess.logに送信したいとします。

私のオプションは何ですか? Apacheのログ形式は、他のツールで解析しているため、大幅に改訂することはありません。

  • a solution using apache_noteを参照してください。
  • ApacheとPHPの両方をsyslogに書き出し、ソースと重大度でメッセージをフィルタリングするようにsyslogを構成すると、2つ以上のライターできちんとしたaccess.logerror.logができると思います。

私は単純な解決法がありませんか?

+3

'access.log'はアプリケーションログ用ではありません。アプリケーションロギングには[Monolog](https://packagist.org/packages/monolog/monolog)のようなPSR-3ロガーを使用してください。 –

+0

@AlexHowansky:あなたのコメントを適切な答えにしてください、私はそれを受け入れます。 – 9000

+0

こんにちは。それが完全な答えのための十分な詳細を含んでいたとは思わなかった、私は少し精緻化した。 –

答えて

1

access.logは、Webサーバーの接続アクティビティを記録するためのものであり、アプリケーションログに使用しないでください。ロガーインタフェースの定義については、PSR-3を参照してください。これは、Monologのような人気のあるパッケージによって実装されています。