メインコンテンツへスキップ
TimeSeriesテーブルのデータを使用して Prometheus クエリを評価します。

構文

prometheusQuery('db_name', 'time_series_table', 'promql_query', evaluation_time)
prometheusQuery(db_name.time_series_table, 'promql_query', evaluation_time)
prometheusQuery('time_series_table', 'promql_query', evaluation_time)

引数

  • db_name - TimeSeries テーブルが配置されているデータベース名。
  • time_series_table - TimeSeries テーブルの名前。
  • promql_query - PromQL 構文で記述されたクエリ。
  • evaluation_time - 評価時刻のタイムスタンプ。現在時刻でクエリを評価するには、evaluation_timeとしてnow()` を使用します。

戻り値

この関数は、パラメータ promql_query に渡されたクエリの結果タイプに応じて、異なるカラムを返します。
結果タイプ結果カラム
vectortags Array(Tuple(String, String)), timestamp TimestampType, value ValueTypeprometheusQuery(mytable, ‘up’)
matrixtags Array(Tuple(String, String)), time_series Array(Tuple(TimestampType, ValueType))prometheusQuery(mytable, ‘up[1m]‘)
scalarscalar ValueTypeprometheusQuery(mytable, ‘1h30m’)
stringstring StringprometheusQuery(mytable, ‘“abc”‘)

PromQL でサポートされている機能

セレクタ

インスタントセレクタ、レンジセレクタ、ラベルマッチャー (=!==~!~) 、OFFSET修飾子、@タイムスタンプ修飾子、サブクエリ。

関数

カテゴリ関数
範囲rate, irate, delta, idelta, last_over_time
数学abs, sgn, floor, ceil, sqrt, exp, ln, log2, log10, rad, deg
三角関数sin, cos, tan, asin, acos, atan, sinh, cosh, tanh, asinh, acosh, atanh
DateTimeday_of_week, day_of_month, days_in_month, day_of_year, minute, hour, month, year
scalar, vector
ヒストグラムhistogram_quantile
その他time, pi
注記: histogram_quantile は、従来のヒストグラムのバケット (le ラベルで識別) に対して線形補間を使用します。ネイティブヒストグラムはまだサポートされておらず、phi (分位点レベル) 引数は現時点では定数スカラーである必要があります。histogram_quantile(time() / 1000, ...) のようにステップごとに変化する式は、NOT_IMPLEMENTED エラーで拒否されます。

演算子

on()/ignoring() および group_left()/group_right() 修飾子を含む、すべての算術 (+, -, *, /, %, ^) 、比較 (省略可能な bool を伴う ==, !=, <, >, <=, >=) 、論理 (and, or, unless) 二項演算子。 単項演算子 +-

集計演算子

sum, avg, min, max, count, stddev, stdvar, group, quantile, topk, bottomk, limitk — オプションで by() または without() 修飾子を使用できます。 現在は未対応: count_values

SELECT * FROM prometheusQuery(mytable, 'rate(http_requests{job="prometheus"}[10m])[1h:10m]', now())
最終更新日 2026年6月25日