2017-11-16 21 views
2

私はSymfonyアプリケーションをReactPHPエンジンの上に構築しようとしています。MonologとReactPHPの使用

私のアプリケーションは、devel環境下の通常のファイルログと、生産中のレベル=エラーのシンプルなsyslogログで構成されています。どちらの環境でも私は "debug"を有効にしています。そうしないとReactPHPがなくても単純なApacheを使っていても、syslogにエラーはありません。

ReactPHPを使用すると問題が発生します。 devel環境を使ってsymfonyカーネルを初期化すると、すべてがログに記録されますが例外はありません。 Monologが例外を処理しておらず、エラーがログに記録されているので、私は何か間違っているようです。

  • あなたはこのすべてのハンドラが有効になっている(と私は私のReactPHPファイル内のカーネル初期化中に同様にそれを追加する必要があります)symfonyのアプリケーションの初期化のどの部分を知っていますか?
  • もしそうでなければ、SymfonyはReactPHPでも同じように動作するでしょうか?つまり、カーネルは常にエラー/例外を処理し、MonologBu​​ndleで設定した方法でログを記録し、その後、例外をもう一度スローする必要があります。

答えて

0

これは単なる推測ですが、ReactPHPは、サーバーが起動したまま、実行し、すべての捕捉されない例外のために死なないことを確認するために、その要求ハンドラ内のキャッチされない例外をキャッチする一方、多分あなたのエラーは通常、PHPのset_exception_handler()を経由して記録されます。

+0

はい、おそらく、この 'set_exception_handler()'がSymfonyに導入されていますか? – mmoreram

+0

https://github.com/symfony/symfony/blob/44b2f97dcd2ba10857dd545e424ad4f48c9dbea1/src/Symfony/Component/Debug/ErrorHandler.php#L135 – kelunik

関連する問題