New Relic Kubernetes OpenTelemetry Collector は堅牢で信頼性が高く設計されていますが、それでも問題が発生する可能性があります。このトラブルシューティング ドキュメントでは、発生する可能性のある一般的な問題のトラブルシューティング手順について説明します。
Collectorポッドの一般的な問題
問題が発生しているコレクター ポッドのログを確認します。 次のコマンドを実行します:
$kubectl logs <otel-pod-name> -n newrelic
トラブルシューティングの詳細なDEBUG
レベルのログを有効にするには、 nr-k8s-otel-collector
HelmチャートでverboseLog
問題をtrue
に設定します。
メトリクス収集の失敗
問題:メトリクスが収集されないか、 New Relicに送信されません。
トラブルシューティング:
スクレイプ設定の確認:コレクターの設定 (
extraConfig
またはdefault
) 内のprometheus
レシーバー設定が正しいことを確認してください。bash$kubectl describe configmap prometheus-config -n monitoringポッドのアノテーションを確認する: Prometheus サービス検出を使用している場合は、アプリケーション ポッドに正しい
prometheus.io/scrape=true
アノテーションがあることを確認してください。bash$kubectl get pods --namespace=[your-namespace] --show-labels | grep 'prometheus.io/scrape=true'ネットワーク接続をテストします。コレクター ポッドがメトリクス エンドポイントに到達できることを確認します。
bash$kubectl exec [prometheus-pod-name] -- curl <http://service:port>
設定のオーバーライドが有効にならない
問題:カスタム設定が正しく適用されません。
トラブルシューティング:
values.yaml
を確認してください:values.yaml
ファイルのextraConfig
セクションにタイプミスや誤ったインデントがないかどうかを再確認してください。bash$cat helm-charts/charts/nr-k8s-otel-collector/values.yaml | grep extraConfig検証が適用されました
ConfigMaps
: Helm チャートはvalues.yaml
からConfigMaps
を生成します。結果のConfigMap
を調べて、カスタム設定が存在することを確認します。bash$kubectl describe configmap [collector-configmap-name] -n monitoring
Collector起動に失敗
問題: OpenTelemetry コレクター ポッドが初期化に失敗するか、繰り返しクラッシュします。
トラブルシューティング:
ポッド ログを検査する:最も一般的な最初のステップです。構成ミスまたは依存関係の欠落を示す特定のエラーメッセージを探してください。
bash$kubectl logs [collector-pod-name] --namespace=monitoring環境変数の検証:必要な環境変数が正しく挿入されていることを確認します。
bash$kubectl exec [collector-pod-name] -- env | grep -i [variable-name]
ネットワーク障害
問題:コレクターが New Relic と通信したりデータを送信したりできません。
トラブルシューティング:
DNS 解決を確認する:コレクター ポッドがサービス名または New Relic エンドポイントを解決できることを確認します。
bash$kubectl exec [collector-pod-name] -- nslookup service-name接続テストを実行する: 内部サービスまたは外部の New Relic エンドポイントへの接続をテストします。
bash$kubectl exec [collector-pod-name] -- curl -I <http://service-name:port>ネットワーク ポリシーを確認する: クラスターに厳格なネットワーク ポリシーがある場合は、OpenTelemetry Collector ポッドから内部サービスおよび外部の New Relic エンドポイントへのトラフィックが許可されていることを確認します。
bash$kubectl describe networkpolicy -n [namespace]
サポート
のOpenTelemetry オブザーバビリティに問題がある場合は、以下を参照してください。Kubernetes
- 同様の問題については、GitHub の問題セクションを参照するか、新しい問題を開くことを検討してください。