龙虎赌博

This is a translation of the original English documentation page. Help us make it better.

7 計算

概要

计算项目を使用すると、他の项目の値を基に计算を行うことができます。

计算では、次の両方を使用できます。

  • 个々の项目の単一の値
  • 集計のために複数の項目を選択するための複雑なフィルター (aggregate calculationsを 参照してください。

このように、計算 item は仮想データソースを作成するための手段です。すべての計算は龙虎赌博 server のみによって行われます。
値は使用された算术式に基づき定期的に计算されます。

计算结果のデータは他のアイテムと同様に窜补产产颈虫データベースに保存され、ヒストリー値とトレンド値の両方が保存され、
グラフを作成することも可能です。

計算結果がfloat値の場合、計算された item の情報タイプが数値(符号なし)であれば、整数に切り詰められます。

計算 item は、トリガー式expressions と构文を共有しています。
計算 item は、文字列との比較も可能です。計算項目は、他の項目型と同様に、マクロや他のエンティティから参照することができます。

計算 item を使用するには、 item タイプ Calculated を选択します。

设定可能なフィールド

キーは、(ホストごとに)一意なアイテム识别子です。サポートされているシンボルを使用して、任意のキー名を作成することができます。

计算の定义は、Formulaの栏に入力してください。数式とキーの间には事実上何の関係もありません。
キーのパラメータは、数式では一切使用されません。

简単な式の构文は以下の通りです。

function(/host/key,<parameter1>,<parameter2>,...)

ここで

function One of the supported functions: last, min, max, avg, count, etc
host Host of the item that is used for calculation.
The current host can be omitted (i.e. as in function(//key,parameter,...)).
key Key of the item that is used for calculation.
parameter(s) Parameters of the function, if required.

関数パラメータ、item フィルタパラメータ、定数を参照するために使用される場合、数式内の
User macros は展開されます。関数、ホスト名、item キー、item キーパラメータ、
演算子を参照する场合、ユーザーマクロは展开されません。

より复雑な式では、関数、演算子、および括弧を组み合わせて使用することができます。トリガー式でサポートされている
すべての関数と演算子 operatorsを使用することができます。
ロジックと演算子の优先顺位は全く同じです。

龙虎赌博はトリガー式とは異なり、新しい値を受け取った時ではなく、item の更新間隔に従って計算された item を処理します。

計算 item 式の中で履歴関数によって参照される item は、すべて存在し、データを収集している必要があります。
また、参照される item の item キーを変更した場合、そのキーを使用しているすべての数式を手動で更新する必要があります。

計算された item は、いくつかのケースでサポートされなくなることがあります:

  • referenced item(s)
    • is not found
    • is disabled
    • belongs to a disabled host
    • is not supported (except with nodata() function and operators with unknown values)
  • no data to calculate a function
  • division by zero
  • incorrect syntax used

使用例

例1

'/' のディスク空き容量のパーセンテージを計算します。

Use of function last:

100*last(//vfs.fs.size[/,free])/last(//vfs.fs.size[/,total])

窜补产产颈虫はフリーディスクスペースとトータルディスクスペースの最新値を取得し、指定された计算式に従ってパーセンテージを计算します。

例2

窜补产产颈虫で処理された値の10分间の平均値を计算します。

Use of function avg:

avg(/龙虎赌博 Server/zabbix[wcache,values],10m)

長い時間の計算 item を多用すると、龙虎赌博 server のパフォーマンスに影響を与える可能性があることに注意してください。

例3

别迟丑0の総帯域幅を计算する。

2つの関数の合计:

last(//net.if.in[eth0,bytes])+last(//net.if.out[eth0,bytes])
例4

受信トラフィックのパーセンテージを计算する。

より复雑な表现:

100*last(//net.if.in[eth0,bytes])/(last(//net.if.in[eth0,bytes])+last(//net.if.out[eth0,bytes]))

Examples of aggregate calculationsを参照してください。