似たようなOSS:
記事:
sudo service prometheus stop sudo mv /mnt/disk1/prometheus/data/wal /mnt/disk1/prometheus/data/wal.$(date +%Y%m%d) sudo service prometheus start sudo service prometheus status # 問題なければ削除 sudo rm -rf /mnt/disk1/prometheus/data/wal.20250201
Thanosの利用:
--wait --wait-interval=4h --compact.cleanup-interval=0s --compact.progress-interval=0s
Deploy Thanos Compactor
--storage.tsdb.wal-compression
This flag was introduced in 2.11.0 and enabled by default in 2.20.0.
多いメトリクスを探す:
up # grafanaでjob=だけを抽出 /.*job="([^"]+)/
{instance="<IP>:<PORT>",job="example"}# job毎の件数, top 10
topk(10,count by (job)({__name__=~".+"}))
# 別の書き方?
topk(10,count by (__name__, job)({__name__=~".+"}))
# メトリクス毎の件数, top 10
topk(10,count({__name__=~".+"}))
# instance毎の件数, top 10
topk(10,count by (__name__, instance)({__name__=~".+"}))記事:
参考ダッシュボード:
ssh -fNg -L 9090:localhost:9090 user@hostA # sshポートフォワーディングを終了する場合 pkill -u $USER -f 9090:
# 認識されている、指定jobだけ抽出
up{job="fluent-bit"}
# 認識されている、指定jobの件数
count(up{job="fluent-bit"})# up : 有効なendpointを返す curl -s "http://localhost:9090/api/v1/query?query=up&time=$(date +%s)" | jq . { "status": "success", "data": { "resultType": "vector", "result": [ { "metric": { "__name__": "up", ...
記事:
topk(10, ...)
bottomk(10, ...)
# すべてのjobにマッチ
http_requests_total{job=~".*"}
# serverで終わる文字にマッチ
http_requests_total{job=~".*server"}
count(up{job="$job"})count(fluentbit_uptime{job="$job")