私が使用しているアプリケーションのカスタムエラーハンドラーで...いらいらしていると思います.ここの誰かが洞察を提供してくれることを願っています.
サイトのデータ集約の一環として、カスタム スパイダーとパーサーは、コードベースの外で個別に構築されます。それらはデータベースに保存され、eval を介して Gearman プロセス内で実行されます。
エラーが発生した場合 (正規表現で区切り文字を忘れた場合や、コーヒーを飲んでいないときにゼロ除算エラーが発生した場合など) に、運営されている会社の ID 番号を挿入するカスタム エラー ハンドラーがセットアップされています。ほとんどの場合、このエラー ハンドラはうまく機能します。
ただし、eval されたコードに終了していないコメントがある場合、エラー ハンドラが使用されないことに気付きました。そのため、php エラー ログには、問題のある会社の ID 番号が含まれていません。
ハンドラーで次のエラー タイプを処理します。
- E_WARNING
- E_USER_WARNING
- E_ERROR
- E_USER_ERROR
ログには、コメント文字列エラーが「警告」であると記載されているため、カスタム ハンドラが呼び出されない理由がわかりません。
何かご意見は?