這篇文章整理 Prometheus `relabel_config` 的核心用途:在看 Prometheus Operator 產生的 YAML 時常見的 `source_labels` 到底在做什麼,以及 relabel 能對標籤與指標做哪些增刪改寫的操作。文中也附上更深入的教學連結。
為什麼會看到 source_labels?
當我們在看使用 Prometheus Operator 產生出來的 YAML 檔案時,會發現裡面用了許多的 `source_labels` 標籤。這個是讓 Operator 可以進一步處理資料標籤的方式(如增/刪要送出的資料、端點)。
relabel_config 能做什麼?
Endpoint 的值是由 `scheme` + `address` + `metrics_path` 所組成。
透過 relabel_config 可以做到:
- 添加新標籤
- 更新現有標籤
- 重寫現有標籤
- 更新指標名稱
- 刪除不需要的標籤
- 刪除不需要的指標
- 在特定條件下刪除指標
- 修改標籤名稱
- 從多個現有標籤構建標籤
更多教學
關於 Service Discovery 與 Relabel 的完整流程,請見這篇整理:Prometheus Service Discovery & Relabel。
延伸閱讀
- Prometheus Operator 是什麼?Kubernetes 監控的自動化利器:同樣聚焦 Prometheus、監控,可接著比較不同情境的做法。
- Prometheus 如何查看監控目標的 exporter 資訊:同樣聚焦 Prometheus、監控,可接著比較不同情境的做法。
- Prometheus 執行時更新 config 的兩種方式:同樣聚焦 Prometheus、監控,可接著比較不同情境的做法。
常見問題
relabel_config 的 Endpoint 是由什麼組成的?
由三個內部標籤組成:`scheme`(協定)、`address`(位址)與 `metrics_path`(抓取路徑),relabel 階段可以改寫這些值來調整抓取端點。
relabel_config 可以刪除指標嗎?
可以。透過 `action: drop` 或在特定條件下匹配標籤後 drop,可以在抓取前就過濾掉不需要的指標,減少儲存負擔。
source_labels 在 Operator 產生的 YAML 裡做什麼?
`source_labels` 指定 relabel 規則要從哪些現有標籤取值,搭配 `regex`、`target_label` 等欄位,用來新增、重寫或刪除標籤與指標。
參考資料
最後更新
2026-08-28(原文發布於 2022-12-16,本文保留原始筆記內容並補上 GEO 結構。)
關於作者 {#author}
Claire Chang | 企業 AI 導入與流程轉型顧問。專注於 AI Agent 架構設計、ERP 系統整合與企業 AI 治理。
首次發布:2022-12-16
