ここでは選択肢がありません。Confluence Prometheus エクスポーターをインストールしましたが、これは数か月間機能しました。現在、Prometheus 2.xi への移行中に、失敗していることに気付きました (ただし、現在は 1.8 でもこれを行っているため、移行によるものではありません)。ターゲット システムでの変更を認識していません。
これまでに確認したこと:
- スクレイプ URL (https) は正しく、取得可能です
- promtool チェック メトリックは警告を表示しますが、エラーは発生しません (confluence_cluster_panic_count カウンター メトリックには「_total」サフィックスが必要です)
- 応答には BOM がありません
- 他の https ターゲットは問題なくスクレイピングされます
- ダブルチェックされた設定
- --log.level=debug を有効にしましたが、追加の出力はありません
デバッグするための詳細情報を取得するにはどうすればよいですか? これは、プロメテウスのログファイルに表示されるものです。
May 8 10:38:59 prometheus-2-test prometheus[3404]: level=warn ts=2018-05-08T10:38:59.038653969Z caller=scrape.go:697 component="scrape manager" scrape_pool=confluence-prod target="https://myserver:443/plugins/servlet/prometheus/metrics?token=feakingSecurityToken" msg="append failed" err="no token found"
Scarpe.go の対応する行は次のとおりだと思います。
// A failed scrape is the same as an empty scrape,
// we still call sl.append to trigger stale markers.
total, added, appErr := sl.append(b, start)
if appErr != nil {
level.Warn(sl.l).Log("msg", "append failed", "err", appErr)
// The append failed, probably due to a parse error or sample limit.
// Call sl.append again with an empty scrape to trigger stale markers.
if _, _, err := sl.append([]byte{}, start); err != nil {
level.Warn(sl.l).Log("msg", "append failed", "err", err)
}
}