フィル

関数説明
fill()メトリクスに欠落しているメトリクス値を補間します。<METRIC_NAME>{*}.fill(<METHOD>, <LIMIT>)

fill() 関数は 2 つのパラメーターを持ちます。

  • METHOD: 補間方法として使用する関数。以下から選択します。

    • linear: ギャップの最初から最後までを線形補間します。
    • last: ギャップの最後の値でギャップを埋めます。
    • zero: ゼロ値でギャップを埋めます。
    • null: 補間を無効にします。
  • LIMIT [任意デフォルト=300最大=600]: 補間するギャップの最大サイズを表す補間制限 (秒単位)。

.fill() 関数とその補間への影響についての詳しい説明は、補間と塗りつぶし修飾子を参照してください。

デフォルトゼロ

関数説明
default_zero()疎なメトリクスにデフォルト値を追加します。default_zero(system.load.1{*})

default_zero() 関数は、値 0 を使用して空の間隔を埋めます。補間が有効の場合は、補間を使用します。: GAUGE タイプのメトリクスには、デフォルトで補間が有効になっています。大部分の関数と同様、default_zero()時間集計と空間集計に評価されます。

ユースケース

default_zero() 関数は、次のような使用例に対応します (使用例は他にもあります)。

  • 疎なメトリクスに対して算術演算を行う際にゲージを 0 に揃える (注: as_count() または as_rate() としてクエリされる COUNT または RATE タイプのメトリクスは、常に 0 に揃えられます。したがって、default_zero() を使用しても揃え方に変更はありません。これは GAUGE タイプのメトリクスにのみ影響します)。
  • モニターがデータなし状態に入る前に、モニターのアラートを解消する。これは、単純なアラートとマルチアラートの両方に有効ですが、0 の値でモニターがトリガーされることはありません。たとえば、avg(last_10m):avg:system.cpu.idle{*} < 10 というクエリを使用したモニターでは正しく機能しません。値が 0 と評価されると、このモニターが (解消ではなく) トリガーされるためです。as_count() クエリを使用したエラー率モニターにはこの関数を使用しないでください。詳細についてはモニター評価での as_count() を参照してください。
  • (空ではないが) 疎な系列内の空の間隔を埋める。これには、視覚的な理由またはモニター評価で時系列の最小/最大/平均を調整する目的があります。評価ウィンドウにデータのポイントがない場合、default_zero() は何の効果もありません。
  • 時系列ウィジェットで、データがない場合に値 0 を表示する。

default_zero() 関数の具体的な動作を示すために、以下のような DogStatsD を使用したカスタムメトリクスに対して単一のポイントが作成されるとします。

$ echo -n "custom_metric:1|g" | nc -4u -w0 127.0.0.1 8125

このメトリクスを過去 30 分間クエリすると、タイムスタンプは 1 つです。クエリのロールアップ間隔のうち、1 つにしかポイントがないためです。

avg:custom_metric{*}

+---------------------+---------------+
| Timestamp           | custom_metric |
+---------------------+---------------+
| ---------           | ---------     |
| 2019-04-17 17:45:00 | 1             |
+---------------------+---------------+

default_zero() 関数は、このポイントを前方に 5 分間 (ゲージの補間制限のデフォルト値) 補間してから、残りの空の間隔を 0 で埋めます。

default_zero(avg:custom_metric{*})

+---------------------+-----------------------------+
| Timestamp           | default_zero(custom_metric) |
+---------------------+-----------------------------+
| ---------           | ---------                   |
| 2019-04-17 17:30:00 | 0                           |
| 2019-04-17 17:31:00 | 0                           |
...
| 2019-04-17 17:44:00 | 0                           |
| 2019-04-17 17:45:00 | 1                           |
| 2019-04-17 17:46:00 | 1                           |
| 2019-04-17 17:47:00 | 1                           |
| 2019-04-17 17:48:00 | 1                           |
| 2019-04-17 17:49:00 | 1                           |
| 2019-04-17 17:50:00 | 1                           |
| 2019-04-17 17:51:00 | 0                           |
| 2019-04-17 17:52:00 | 0                           |
...
+---------------------+-----------------------------+

参考資料

PREVIEWING: brett0000FF/node-compatibility