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

ラベル付きメトリックは、PromQL クエリ言語を用いてグラフに表示できます。Mackerel では、PromQL の以下の機能がサポートされています。

時系列セレクタ

なお、__name__ ラベルを用いたメトリック名の指定には対応しておりません。

範囲ベクトルセレクタの制約事項

範囲ベクトルセレクタで指定した期間とグラフの表示期間が大きく異なる場合、グラフの表示が正しく行われないことがあります。

これには、PromQL で 5 分間の期間を指定(sum(irate(nginx_http_requests_total[5m])))し、グラフの表示期間が 1 日の場合等が該当します。

この制限を回避するためには、範囲ベクトルセレクタで指定する期間でグラフの表示期間をできる限り近い値に指定してください。

修飾子

集計演算子

また、集計に用いるラベルを制御する bywithout 修飾子に対応しています。

二項演算子

(vector) x (vector)(vector) x (scalar)(scalar) x (vector)(scalar) x (scalar) の 4 パターンで定義されます。

ベクトル同士の演算を実現するために、ベクトルマッチングという仕組みが実装されています。一対一対応(算術・比較演算子)と多対多対応(集合演算子)は既に実装が完了しています。

group_leftgroup_right 修飾子を用いた一対多対応は未実装です。

算術演算子

比較演算子

集合演算子

関数

レート関数

<aggregation>_over_time 関数

ラベル関数

型変換関数