全部產品
Search
文件中心

Simple Log Service:從MetricStore到MetricStore

更新時間:Jun 30, 2024

定時SQL功能用於定時分析資料、儲存彙總資料、投影與過濾資料。Log Service支援源MetricStore中的資料通過定時SQL處理後儲存到目標MetricStore中。

前提條件

操作步驟

重要

目前,定時SQL功能在公測階段,僅收取SQL獨享版計算資源消耗費用。費用說明請參見按使用功能計費模式計費項目

  1. 登入Log Service控制台

  2. 在Project列表地區,單擊目標Project。

    image

  3. 時序儲存 > 時序庫頁簽中,單擊目標MetricStore。

  4. 執行查詢和分析操作。

    1. 在頁面右上方,單擊15分鐘(相對),設定查詢和分析的時間範圍。

    2. 直接輸入PromQL語句,單擊立即執行

      具體操作,請參見查詢和分析時序資料

    說明

    本步驟為定時SQL任務的預覽操作,用於驗證您所使用的查詢和分析語句是否正確,執行結果是否有資料。

  5. 選擇更多操作 > 另存新檔定時SQL

    建立任務

  6. 建立定時SQL任務。

    1. 計算配置嚮導中,完成如下配置,然後單擊下一步

      參數

      描述

      任務名稱

      SLS任務的唯一名稱。

      顯示名稱

      定時SQL任務的顯示名稱。

      任務描述

      定時SQL任務的描述。

      資源集區

      Log Service提供增強型資源集區用於資料分析。

      增強型資源集區複用SQL獨享版的計算能力,提供足夠的分析並發數,與您在控制台上的SQL分析操作進行資源隔離。增強型資源集區根據SQL分析操作所消耗的CPU時間收取費用。更多資訊,請參見開啟SQL獨享版

      寫入模式

      選擇時序庫匯入時序庫,即表示源MetricStore中的資料通過定時SQL處理後將儲存到目標MetricStore中。

      SQL代碼

      顯示您在步驟4中輸入的查詢和分析語句。此處的預覽操作與步驟4中的操作一致,用於驗證您所使用的查詢和分析語句是否正確,執行結果是否有資料。

      SQL任務運行時,Log Service將執行該查詢和分析語句分析資料。

      重要

      匯入MetricStore的推薦行為是每次匯入目前時間點的指標值,因此推薦使用promql_query函數。如果使用promql_query_range函數,會導致大量資料膨脹。

      SQL配置

      結果指標名

      如果您要修改您所分析的指標名,您可以輸入修改後的指標名。更多資訊,請參見時序資料(Metric)

      重要

      建議分析的對象為單個指標時,修改指標名,實現重新命名。

      如果分析對象為多個指標,則修改指標名後,會將所有的指標名修改為同一個相同的指標名。

      Rehash

      開啟Rehash開關後,您可以配置雜湊列,用於將同一Label值的資料寫入到一個Shard中,增強資料局部性,提升查詢效率。

      雜湊列的取值取決於時序資料已有的Label資訊。例如時序資料已有的Label資訊為{"alert_id":"alert-1608815762-545495","alert_name":"警示恢複關閉","status":"inactive"},則雜湊列的可選值為alert_idalert_namestatus。如果您配置雜湊列status,則status欄位值相同的資料將被寫入到同一個Shard中。

      附加Labels

      添加靜態標籤,索引值對形式,可用於標識指標的相關屬性。

      例如配置label_keyapp,配置label_valueingress-nginx

      目標

      目標Region

      目標Project所在地區。

      目標Project

      用於儲存SQL分析結果的目標Project名稱。

      目標庫

      用於儲存SQL分析結果的目標MetricStore名稱。

      寫目標授權

      您可以通過如下方式授予定時SQL任務寫資料到目標MetricStore的許可權。

      • 預設角色:授權定時SQL任務使用阿里雲系統角色AliyunLogETLRole將運行結果寫入目標MetricStore。

        重要

        僅在首次配置時需要操作,且需要由目標Project所屬的阿里雲帳號完成。

      • 自訂角色:授權定時SQL任務使用自訂角色將運行結果寫入目標MetricStore。

        您需先授予自訂角色寫資料到目標MetricStore的許可權,然後在角色ARN中輸入您自訂角色的ARN。詳細說明如下:

      執行SQL授權

      您可以通過如下方式授予定時SQL任務讀取源MetricStore資料以及在當前Project下執行SQL分析操作的許可權。

      • 預設角色:授權定時SQL任務使用阿里雲系統角色AliyunLogETLRole執行對應操作。

        重要

        僅在首次配置時需要操作,且需要由目標Project所屬的阿里雲帳號完成。

      • 自訂角色:授權定時SQL任務使用自訂角色執行對應操作。

        您需先授予自訂角色相關許可權,然後在角色ARN中輸入您自訂角色的ARN。更多資訊,請參見步驟一:授予帳號A下的RAM角色a分析源Logstore的許可權

    2. 調度配置嚮導中,完成如下配置,然後單擊確定

      參數

      描述

      調度間隔

      調度定時SQL任務的頻率,每調度一次定時SQL任務產生一個執行執行個體。調度間隔決定每個執行執行個體的調度時間。

      • 每小時:每小時調度一次定時SQL任務。

      • 每天:在每天的某個固定時間點調度一次定時SQL任務。

      • 每周:在周幾的某個固定時間點調度一次定時SQL任務。

      • 固定間隔:按照固定間隔調度定時SQL任務。

      • Cron:通過Cron運算式指定時間間隔,按照指定的時間間隔調度定時SQL任務。

        Cron運算式的最小精度為分鐘,24小時制,例如0 0/1 * * *表示從00:00開始,每隔1小時運行一次。

        當您需要配置時區時,需選擇Cron模式。常見的時區列表請參見時區列表

      調度時間範圍

      調度的時間範圍,具體說明如下:

      • 某時間開始:指定第一個執行個體被調度的開始時間。

      • 特定時間範圍:指定執行個體被調度的起止時間,即定時SQL任務僅在該時間範圍內可被執行。

      重要

      執行個體的調度時間必須在該範圍內,超出該範圍時,定時SQL任務不再產生新執行個體。

      SQL時間視窗

      定時SQL任務運行時,僅分析該時間範圍內的日誌。時間視窗與執行個體調度時間共同作用生效。該時間範圍不能大於調度間隔的5倍且不能超過1天。更多資訊,請參見時間運算式文法

      例如,調度間隔固定間隔10分鐘起始時間2021-04-01 00:00:00順延強制30秒SQL時間視窗[@m-10m,@m),則SQL任務運行時,在00:00:30時刻產生第一個執行執行個體,分析的是[23:50:00~00:00:00)期間的日誌。更多資訊,請參見調度與執行情境

      SQL逾時

      執行SQL分析操作失敗時自動重試的閾值。當重試時間超過指定的最大時間或者重試次數超過最大次數時,該執行執行個體結束,狀態為失敗。您可以根據失敗原因,手動重試該執行個體。具體操作,請參見重試定時SQL任務執行個體

      順延強制

      調度時間點往後順延強制的時間。取整範圍:0~120,單位:秒。

      當資料寫入MetricStore存在延遲等情況時,可通過順延強制來保證資料的完整性。

      建立定時SQL任務後,您可以到目標MetricStore中查看SQL執行結果資料。

SDK樣本

使用Java SDK建立定時SQL任務