問題A:ログにSSL/接続エラーが表示される
New Relic Java エージェントの ログデータ には、SSL または接続エラーが表示されています。
ヒント
HTTPS で New Relic コレクターと通信する方法については、 Configuring your SSL certificates を参照してください。
ソリューションA
SSLでの接続に失敗すると、Javaエージェントのログファイルの初期に表示されます。例えば、以下のようなものです。
PKIX path building failed: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath
INFO: connection error: java.net.SocketException: java.lang.ClassNotFoundException: Cannot find the specified class com.ibm.websphere.ssl.protocol.SSLSocketFactory
これらのエラーが表示された場合、JDKインスタンスがカスタマイズされたトラストストアを使用している可能性があります。
推奨事項: New Relic の証明書の発行元である DigiCert グローバル ルート証明機関 (CA) を信頼ストアに追加します。
DigiCert グローバル ルート CA は、 [その他のルート証明書] セクションで DigiCert からダウンロードできます ([PEM のダウンロード] オプションを選択します)。
証明書をトラストストアにインポートするには、このコマンドを使用するか、または Oracle の Java SE のドキュメントである keytool を参照してください。
keytool -importcert -alias ca_alias -file ca_file.pem -keystore truststore.ts -storepass ts_password
パラメータは以下の通りです。
パラメータ | 説明 |
---|---|
| インポートした証明書のトラストストアで使用するエイリアスです。 |
| 追加する証明書を含むファイルです。 |
| 証明書が追加されるトラストストア。 |
|
|
問題点B:ログに例外が見られる
New Relic Java エージェントのログ データには、次のCertificateException
が表示されます。
java.security.cert.CertificateException: Could not parse certificate: java.io.IOException: Illegal header: -----BEGIN CERTIFICATE-----
これは、この JDK の問題 に関連している可能性が高いです。
ソリューションB
証明書のヘッダーとフッターに末尾のホワイトスペースがないことを確認してください。空白がある場合は、編集するか、別の証明書を使用してください。