查詢建置器

使用 Query Builder,您可以為自訂的 IBM® Cloud Logs 面板 widget 建立查詢,而不需要瞭解 DataPrime, Lucene 或 PromQL 的語法。

當您定義 widget 時,您可以選擇要使用 「建立」「查詢」 模式。

基於度量的查詢

當您建立使用度量單位的 widget 時,請選擇建立模式,然後選擇度量單位作為您的來源。

查詢類型

查詢類型請選擇即時範圍查詢。 查詢會在儀表板時間選擇器或 widget 時間範圍所定義的特定時間範圍內執行。

  • 即時查詢模式會顯示單一時間點上的度量值,特別是所選時間範圍的結束時間戳記。 即時查詢模式是即時監控的理想選擇,可在可視化的瞬間提供資料快照。 它的效能也較高,只擷取最新的資料點,而不需要擷取整個資料集。

  • 範圍查詢模式擷取並匯總指定時間範圍內的度量資料。 它會返回開始和結束時間戳之間符合您查詢的所有資料點。 隨著時間範圍的變化,系統會自動調整時間間隔,以最佳化圖形中顯示的資料點數量。 範圍查詢模式最適合用於識別趨勢或評估特定期間的效能。

度量值名稱

從動態填滿可用度量的下拉式功能表中選擇您偏好的度量。 您可以使用自動完成功能來探索度量名稱、標籤和值。

過濾器

若要新增篩選器,請按一下 +。選擇一個度量標籤和相關值來篩選您的度量。

從下拉式功能表中選擇 =!= 運算符號,以包含或排除一個或多個數值。 透過使用 =~!~ 運算符號,您可以輸入 RegEx 表達式。

若要新增更多標籤值對,請按一下 + 以新增一行。

Functions

透過選擇指標和標籤建立有效的 Prometheus 查詢,但您也可以使用函數建立更複雜的查詢。

若要新增功能,請按一下 +。在 aggregationcountrollup 功能之間進行選擇。

聚合函數會計算一組數值,並傳回單一數值。 這些功能包括 SUM(), AVG(), MIN(), MAX(), COUNT() 等。 選擇功能後,在下拉式功能表中選擇要聚合的標籤或輸入標籤值。

總計函數
聚集 說明
average 選取時間範圍內所有資料點的平均值。
count 選取時間範圍內的資料點總數。
min 在選取的時間範圍內,資料點中最小的值。
max 在選取的時間範圍內,資料點中的最大值。
sum 選取時間範圍內所有資料點的總和。
quantile quantile(phi, q) by (group_labels) 函數是一個集合,它會計算 q 所傳回時間序列內每組標籤的 phi-quantilephi 的值必須在 [0...1] 的範圍內。 具有相同時間戳記的每組點會分別計算量化值。
histogram_quantile histogram_quantile 函數是一個轉換函數,可根據提供的直方圖桶計算 phi-percentilephi 的值必須介於 [0...1] 之間。 例如,histogram_quantile(0.5, sum(rate(http_request_duration_seconds_bucket[5m])) by (le)) 會返回過去 5 分鐘內所有請求的中位請求持續時間。

計數函數在一組數值上執行計算,並傳回單一數值。 這些功能包括 Count(), Absent(), Absent over time(), Present over time(), Changes(), Resets() 等。

計數功能
計數 說明
count 選取時間範圍內的資料點總數。
absent 如果時間序列沒有點,則返回 1。 否則會返回空結果。
absent over time 如果提供的時間範圍不包含原始樣本,則返回 1。
present over time 如果在提供的時間範圍內至少有一個原始樣本,則返回 1。
changes 時間序列值在提供的時間範圍內變更的次數。
resets 在提供的時間範圍內計數器重設的次數。

滾動函數是指在指定時間範圍內匯集時間序列資料的函數。 這些函數會計算某個時間視窗的度量值,例如 average (avg_over_time), sum (sum_over_time), minimum (min_over_time), maximum (max_over_time), count (count_over_time),以及 quantiles (quantile_over_time)。 它們用於總結及分析度量資料。

滾動功能
捲軸 說明
average over time 計算時間範圍內時間序列值的平均值。
max over time 找出時間範圍內時間序列資料的最大值。
min over time 確定時間範圍內時間序列資料的最小值。
sum over time 計算時間範圍內的時間序列值總和。
count over time 在時間範圍內計算時間序列中非 NaN 元素的數量。
quantile over time 計算時間範圍內時間序列資料的指定量化值。

選擇功能後,選擇要查詢的範圍為數字或 ${__range}${__range} 代表儀表板時間範圍的長度。 它會以 PromQL 支援的間隔字串呈現。 例如,如果您選擇時間範圍從 13.0014.30,則 ${__range} 變數會顯示為 90m

使用排序功能,您可以在查詢中對資料進行排序、排序和過濾。 您可以使用它們根據特定的指標和值來精煉您的結果。

若要新增階級函數,請按一下 +,然後從 TOPK, SORT,或 SORT Descending 中選擇。 選擇排名函數後,請透過指定度量單位和參數進行設定 (例如,填入您希望查詢擷取的 K 結果數目 TOPK)。

等級功能
Rank 說明
TOPK 根據指定的指標,從資料集中擷取 K 最高的結果。 使用 TOPK 顯示排名最高的資料點。
SORT 根據選取的指標,以升序排列資料。 使用 SORT 從最小值到最大值來組織資料。
SORT Descending 根據選取的指標,以降序排列資料。 使用 SORT Descending 將最大值優先排列在結果集的開頭。

基於日誌的查詢

使用基於日誌的 Query Builder,您可以透過製作基於 Lucene 的查詢,然後再加入篩選器和函式,來建立複雜的查詢。

當您建立使用日誌的 widget 時,請選擇建立模式,然後選擇日誌作為您的來源。

您也需要選擇在 優先洞察 或 分析及警示 資料管道中查詢日誌。

過濾器

若要新增篩選條件,請按一下 +。選擇標籤和相關值。

從下拉式功能表中選擇 =!= 運算符號,以包含或排除一個或多個數值。 透過使用 =~!~ 運算符號,您可以輸入 RegEx 表達式。

若要新增更多標籤值對,請按一下 +

Functions

若要新增函數,請按一下 +。使用函數選取聚集值。

記錄功能
功能 說明
Count 選取時間範圍內的資料點總數。
Count Distinct 選取時間範圍內唯一資料點的數量。
Sum 選取時間範圍內所有資料點的總和。
Min 在選取的時間範圍內,資料點中最小的值。
Max 在選取的時間範圍內,資料點中的最大值。
Average 選取時間範圍內所有資料點的平均值。
Percentile XX 代表少於 XX% 的資料點所在的值。 例如,Percentile 95 是少於 95% 的資料點所在的值。

使用 Group by,您可以依一個或多個欄位將查詢結果分組。

DataPrime 查詢

您可以建立 DataPrime 查詢,作為 widget 的基礎。

您需要選擇在 優先洞察 或 分析及警示 資料管道中查詢日誌。

當您基於日誌資料建立查詢時,您可以選擇透過點擊查詢產生器中的 「轉換為 DataPrime 將查詢轉換為 DataPrime 語法語言。

轉換後,轉換後的查詢會出現在 DataPrime 索引標籤下。

當您變更資料來源,或將您的查詢轉換為 DataPrime, 之後,您在 Query Builder 中的原始查詢參數將會遺失。 儲存您的 widget 會保留 widget 的最新狀態。

小工具時間

儀表板的時間選擇器設定您查詢的預設時間範圍。 若要自訂您要設定的 widget 的時間框架,請按一下 Widget 時間,然後將切換開關切換至關閉,使其與儀表板的時間框架解除連結。 然後,您可以針對要設定的 Widget 選擇標準或自訂時間範圍。