最近接手維護了公司的指標監控系統,之後踩到坑就沒站起來過。。
本次問題的起因是我們設定了一些指標的刪除策略沒有生效:
- action: drop_metrics
regex: "^envoy_.*|^url\_\_\_\_.*|istio_request_bytes_sum"
與這兩個容易引起誤解的設定relabel_configs/metric_relabel_configs
有關。
他們都是對抓取的資料進行重新命名、過濾、新增、刪除等操作,但應用場景卻完全不同。
我們使用了 VictoriaMetrics 替換了 Prometheus,VM 完全相容 Prometheus ,所以本文也對 Prometheus 同樣適用。
但這裡其實是有一個錯誤理解的,我是通過 VM 的服務發現頁面的指標響應頁面查詢指標的,開啟之後確實能搜到需要被刪除的相關指標。
但其實即便是真的刪除了資料這個頁面也會有資料存在,刪除的資料只是不會寫入 VM 的時序資料庫中。
這一點是在後續查原始碼時才發現;後面我設定對了依然在這裡檢視資料,發現還是沒有刪除,這個錯誤理解浪費了不少時間