• EnglishEspañol日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

問題を作成する

Prometheus エージェントのトラブルシューティング ガイド

詳細なログの取得

verboseLogまたはglobal.verboseLog変数をtrueに設定することにより、 newrelic-prometheus-agentチャートで詳細ログを有効にできます。

# (...)
global:
verboseLog: true
# (...)

これが値ファイルで更新されたら、次の helm upgrade コマンドを実行します。

bash
$
helm upgrade <RELEASE_NAME> newrelic-prometheus-configurator/newrelic-prometheus-agent \
>
--namespace <NEWRELIC_NAMESPACE> \
>
-f values-newrelic.yaml \
>
[--version fixed-chart-version]

ターゲットのメトリックが表示されない

指定されたフィルタに一致する Kubernetes 内のターゲットを検出するjobが少なくとも 1 つ必要です。そうでない場合、ターゲットはstatic_targetとしてリストされている必要があります。

Kubernetes でデフォルト構成を使用している場合は、ポッドまたはサービスにprometheus.io/scrape=trueアノテーションがあることを確認してください。

デフォルトでは、Prometheus エージェントはPrometheus 統合からのみメトリクスをスクレイピングします。クラスター内のすべての Prometheus エンドポイントをスクレイピングすることを選択しない限り、Prometheus エージェントはsource_labelsで定義されたラベルを使用して、スクレイピングするエンドポイントをフィルタリングします。

ダッシュボードに指標が表示されない

Prometheus 統合によって提供される一部のダッシュボードは、Kubernetes ラベルによってフィルタリングされている可能性があります。詳細については、対応する統合ドキュメントを確認してください。

指標のステータスを確認する

すべてのターゲット スクレイプは、すべてのターゲット メトリックでupメトリックを生成します。スクレイピングが成功した場合、これらの指標の値は1になります。成功しなかった場合、それらの値は0です。

FROM Metric SELECT latest(up) WHERE cluster_name= 'YOUR_CLUSTER_NAME' AND pod = 'TARGET_POD_NAME' TIMESERIES

このメトリックがターゲットに存在しない場合は、削除された可能性があります。

値が0の場合、スクレイピングは失敗しています。

フィルター規則によってドロップされたターゲット

ドロップされたターゲットを確認するには、Prometheus API のtargets endpointを使用できます。

ドロップされたすべてのターゲットを JSON 形式で一覧表示し、検出されたすべてのラベルを表示するには、次のコマンドを実行します。

bash
$
kubectl exec newrelic-prometheus-agent-0 -- wget -O - 'localhost:9090/api/v1/targets?state=dropped' 2>/dev/null

ターゲットスクレイプ失敗

upメトリクスの値が0の場合、ターゲットは Prometheus によって積極的にスクレイピングされていますが、スクレイピングは失敗したことを意味します。詳細ログで理由を確認するには、次のようなログ エントリを使用します。

bash
$
prometheus ts=timestamp caller=scrape.go:1332 level=debug component="scrape manager" scrape_pool=kubernetes-job-pod target=http://1.2.3.4:80/metrics msg="<error>" err="<error detail>"

Prometheus API のtargets endpointを使用して、アクティブなターゲット リストを確認することもできます。

JSON ですべてのアクティブなターゲットを一覧表示し、検出されたすべてのラベルを表示するには、次のコマンドを実行します。

bash
$
kubectl exec newrelic-prometheus-agent-0 -- wget -O - 'localhost:9090/api/v1/targets?state=active' 2>/dev/null

失敗したターゲットが一覧表示され、次のような出力のlastErrorフィールドにエラーが表示されます。

{
"status": "success",
"data": {
"activeTargets": [
{
"discoveredLabels": <map of labels>,
"labels": <map of labels>,
"scrapePool": "kubernetes-job-pod",
"scrapeUrl": "http://172.17.0.5:80/metrics",
"globalUrl": "http://172.17.0.5:80/metrics",
"lastError": <error detail>,
"lastScrape": "2022-09-19T14:19:20.543747971Z",
"lastScrapeDuration": 0.000372542,
"health": "down",
"scrapeInterval": "15s",
"scrapeTimeout": "10s"
},
...
]
}
}
Copyright © 2024 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.