Job Arranger for Zabbixの変数について
ちょこちょこ触っているのですが、最初に少し悩んだので、変数についてまとめます。
- ジョブアイコンの中で設定できる変数はジョブ変数といい、そのジョブの中でしか利用できない
- 変数アイコンで設定したものはジョブネット変数といい、ジョブネットとそのジョブネットから呼ばれたジョブネット内で利用できる(環境変数扱い)
- ジョブアイコン内でジョブネット変数を参照するには
変数名:VARIABLE_NAME
値:$VARIBLE_NAME
というジョブ変数を追加する - ジョブアイコン内でジョブネット変数を書き換えられない
- ジョブネット変数を書き換えるには、計算アイコンを利用する
- 計算アイコンの計算式はexprコマンドで実行されるので、exprを書く必要はないが、ジョブアイコン内で整数計算を実行したい場合はexprコマンドを指定する必要がある
- Job Arranger側で用意したジョブコントローラ変数は普通の環境変数として利用できる
サンプル1: 自分で定義したジョブ変数とジョブコントローラ変数
ENV-1でVAL1を定義して、JOB-1, CAL-1で計算していますが、JOB-1は参照しているだけなので、値は変わりません。このジョブネット終了時のVAL1の値は2です。
サンプル2: Job Arrangerで定義しているジョブコントローラ変数
なので、ファイル存在有無によって分岐させたいときは自分で定義したジョブコントローラ変数ではなく、Job Arrangerが定義したものを使います。ここでは終了コードをセットしているJOB_EXIT_CDを利用しています。
自分で定義したジョブコントローラ変数はループ回数や、サブ・ジョブネットに引き渡すために利用することになると思います。