問題
アプリケーションのトラフィックを生成して、New Relic UIでデータが表示されるまで数分間待ったものの、Javaアプリケーションがデータを報告していない。
解決策
ご利用のウェブアプリケーションにリクエストを送信してから2、3分以内に、APM UI内にデータが表示されます。数分待ってもデータが表示されない場合:
Webサーバーを再起動します。
New Relic Diagnosticsを使用すると、問題を自動的に特定できる場合があります。
newrelic.jar
ファイルが正しくインストールされ、-javaagent
引数がJVMに正しく渡されたことを確認します。Webサーバーがまだ実行されていない場合は、起動します。
ターミナルまたはコンソールで、適切なコマンドを実行します。
Linux または macOS
ps -ef | grep javaWindows:
wmic process where "name='java.exe'" get ProcessID, Commandline /format:listモニタリングしようとしているサービスのプロセスを検索し、
-javaagent
引数が存在するかどうかを確認します。-javaagent
引数が表示される場合:問題はエージェントの起動にあるか、またはエージェントがファイアウォールを介してコレクターのIP範囲と通信できません。-javaagent
引数が表示されない場合:引数がJVMに渡されませんでした。起動スクリプトまたはその他のリソースをチェックして、引数が渡されるのを妨げる要因がないことを確認してください。環境に引数を渡す方法の詳細については、JVMの引数にJavaエージェントを含めるを参照してください。
どちらの解決策も機能しない場合は、読み続けてください。
newrelic.jar
とnewrelic.yml
ファイルが、同じディレクトリ内にあることを確認してください。newrelic.config.file
システムプロパティを使用して、設定ファイルの非デフォルトロケーションを指定した場合、設定ファイルがそのロケーションに実際に存在し、正しくフォーマット化されていることを確認してください。finest
レベルのログを生成して、ログにエラーがないか確認してください。ログファイルが見つからない場合は、ログファイルが見つからない(Java)を参照してください。アプリケーションサーバーログに目を通して、New Relic Javaエージェントに関連したエラーがないか確認してください。トラブルシューティングページのJavaエージェントのブートストラップエラーとJavaアプリサーバーの起動エラーでは、Javaエージェントデータのレポートを阻止するアプリケーションサーバーログの観測可能エラーの例が示されています。
アプリが予測名にレポートしていることを確認:New Relicログファイルで、
"reporting to"
を検索し、メッセージ内のリンクを選択します。例:{"message":"Reporting to: https://rpm.newrelic.com/accounts/000/applications/000000"}複数のアプリケーション名にレポートしている場合は、このメッセージを伴う複数の行を探してください。
メッセージのリンクが予期したアプリケーションへ移動しない場合、アプリケーションの名前設定が
newrelic.yml
とweb.xml
display-name
設定の両方で同じであることを確認します。