當您需要將某個Prometheus執行個體的資料匯出,進行自訂業務處理時,可以使用Prometheus資料投遞功能,將Prometheus執行個體資料投遞至MaxCompute處理。MaxCompute能協助您結合其他的資料來源執行MaxCompute,加工後用於報表分析等。
前提條件
已接入Prometheus執行個體,具體操作,請參見:
已部署投遞目標雲訊息佇列Kafka版,並建立Topic等資源。具體操作,請參見概述。
已開通Function Compute (FC)服務。具體操作,請參見開通Function Compute服務。
已開通事件匯流排EventBridge服務。具體操作,請參見開通事件匯流排EventBridge並授權。
說明資料投遞功能依賴事件匯流排EventBridge,事件匯流排 EventBridge 已於2025年06月03日正式商業化,事件匯流排 EventBridge 計費資訊,請參見計費概述。
注意事項
選擇專用網路進行資料投遞時,如果Prometheus執行個體所在VPC與目標VPC不在同一個,您需要保證目標VPC內的vSwitch的IP已加入Prometheus執行個體的白名單中,否則會導致網路不通。vSwitch的網段資訊可以在專用網路控制台的交換器詳情頁面擷取。
支援資料投遞的資料來源列表。
執行個體類型
說明
Prometheus for 雲端服務
除cloud-product-prometheus名稱開頭的免費執行個體
Prometheus for Container Service
無
Prometheus for Flink Serverless
無
Prometheus for Kubernetes
無
通用
除通過OpenTelemetry地址上報上來的資料
僅支援從建立任務開始後的即時資料匯出,不支援歷史資料的投遞。
費用說明
資料投遞至MaxCompute時將建立Function Compute (FC)服務,服務名首碼為{task_name}_SINK_FC_TO_MAXCOMPUTE,由Function Compute (FC)將資料寫入MaxCompute中,因此將收取Function Compute服務費用。資料會攢批後發送給Function Compute (FC),因此調用Function Compute (FC)次數越少,產生的相關費用越少。您可以登入Function Compute控制台查看當前FC資源狀態。
步驟一:準備MaxCompute資源
根據MaxCompute文檔,任意選擇一種方式串連至MaxCompute專案。具體操作,請參見選擇串連工具。
確定表結構:設定表結構的列名與Prometheus資料標籤名保持一致。若表的列名找不到對應的標籤值,那麼該列會被寫入NULL值。當存在多種指標資料時,表列名應該是這些指標標籤名的並集。
假設您匯出的指標為以下的兩種:
您需要在MaxCompute中根據下面的例子建立SQL表。具體操作,請參見使用SQL分析。
CREATE TABLE metric (
__name__ VARCHAR(50) NOT NULL,
cluster_id VARCHAR(50),
host VARCHAR(50),
node_id VARCHAR(50),
job VARCHAR(50),
instance VARCHAR(50),
cpu VARCHAR(50),
__value__ DOUBLE,
timestamp BIGINT
);至少存在以下欄位:__name__、__value__和timestamp,它們是Prometheus資料的基本標籤。建議您根據業務需要構造表結構,並設定足量欄位作為標籤映射。若您丟失關鍵標籤,表將收到大量重複的資料。
步驟二:建立投遞任務
在左側導覽列,單擊。
在資料投遞頁面,單擊頂部功能表列選擇目標地區,然後單擊建立任務。
在對話方塊中輸入任務名稱和任務描述後,單擊確定。
在任務編輯頁面,配置資料來源和投遞目標。
單擊+ 添加資料來源,配置以下參數,然後單擊確定。
配置項
說明
樣本
Prometheus執行個體
被投遞的Prometheus資料來源。
c78cb8273c02*****
資料過濾
設定需要過濾的指標標籤,支援Regex。多個條件需要換行,條件需要同時滿足,才會投遞。
__name__=AliyunEcs_CPUUtilization|AliyunEcs_memory_usedutilization regionId=cn-hangzhou id=i-2ze0mxp.*資料打標
設定需要新增的標籤,支援對投遞的指標資料新增多個label。如果存在多個,則換行。
deliver_test_key1=ssss deliver_test_key2=yyyy單擊添加目標,選擇目標類型為雲原生MaxCompute MaxCompute,請按照表單所需填寫其餘資訊,然後單擊確定。
配置完成後,在任務編輯頁面,單擊確定,然後單擊儲存建立投遞任務。
步驟三:驗證資料被投遞至MaxCompute
在SQL代碼編輯框,輸入以下SQL語句查詢metric表中的資料,單擊運行,在結果頁簽查看執行結果。
select * from metric limit 20;