LoginSignup
1
0

New Relic PHPアプリケーションでエラーを無視したかったので設定を調べた

Posted at

はじめに

座喜味です。株式会社じげんで、リフォームマッチングサイトをはじめとした、リフォーム関連のサービス開発を担当しているエンジニアマネージャーです。
New Relicは前年度に導入して、主にPHP Laravelのアプリケーションで活用しています。
ひとつのアプリケーションにAPM Agentを入れたところ、Errors Inboxで無視したいエラーが大量に出ていてノイズになっていていらない通知が大量に出ていました。
アプリケーションのソースコードに手を入れずに、New Relicで無視する設定がないか調べてみたので記したいと思います。

Errors Inboxの公式ドキュメントを見る

まずはErrors Inboxの公式ドキュメントを確認しました。
https://docs.newrelic.com/jp/docs/apm/agents/manage-apm-agents/agent-data/manage-errors-apm-collect-ignore-or-mark-expected/#expected

スクリーンショット 2023-12-16 13.51.28.png

!? Java、Node.js、Python、Ruby、Go、.NETのみと書かれています..!
うーむ。。ないはずはないだろうと思ったのでPHP Agentの設定のドキュメントを見てみることにしました。

PHP Agentのドキュメントを見る

PHP Agentのドキュメントを見たところそれらしき設定がありました。
https://docs.newrelic.com/docs/apm/agents/php-agent/configuration/php-agent-configuration/#inivar-err-ignore-exceptions

スクリーンショット 2023-12-16 13.54.52.png

newrelic.iniファイルのnewrelic.error_collector.ignore_exceptions を設定することで無視設定ができるようです。複数指定したい場合はcomma区切りで指定してくれとのことです。
agentのソースコードを見る限りでもcommaで分けて処理していそうでした。
https://github.com/newrelic/newrelic-php-agent/blob/1563e8045968fe0c6ee228c566ca080afceba6c1/agent/php_error.c#L214C27-L214C62

newrelic.iniに無視したい例外を指定してテスト環境でデプロイしてみたところ、該当の例外がErrors Inboxに通知されなくなったことが確認できました。

最後に

New Relicの公式ドキュメントだとPHPのリンクがないことが多い気がするのですが、設定に詰まった際には今後はPHP Agentのドキュメントを確認するようにしたいと思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0