
Zabbix6.0 トリガー関数の変更で困った話
こんにちは、mtokです。 Zabbix6.0 LTSバージョン(長期サポートバージョン)が公開されてから1年が経過しましたが 長期サポートのついた最新バージョンということもあり、現在利用中の方も多いのではと思います。 今回はZabbix5.0から6.0へ移行する時に困ったトリガー関数について書きます。
6.0のトリガー関数について
Zabbix6.0の変更点はいくつかございますが、
その中でもトリガー関数は過去バージョンと比べて大きな仕様変更がありました。
Zabbix5.0では
{アイテムキー.トリガー関数(パラメータ)}>1
Zabbix6.0では
トリガー関数(アイテムキー,パラメータ)>1
といったようにトリガー関数の定義方法が大きく変わっています。
エラー発生!
Zabbix6.0の画面で初期設定(ホスト、テンプレート、アイテム、トリガー作成)をしていたところ、 手動で登録したトリガーが一部機能していないことに気付きました。 エラー内容Cannot evaluate function count(アイテムキー,#5,0,"ne"): operator "0" is not supported for function COUNT.どうやらcount関数の定義でエラーが出たようです。
原因は…
Zabbix5.0側
{アイテムキー.count(#5,0,ne)}>3
Zabbix6.0側
count(アイテムキー,#5,0,"ne")>3
何が違うのかな~と設定画面を眺めていたら...
パラメータの指定順番が TVO → TOV に変わっていました。
Zabbix公式ページでは count(アイテムキー,#5,"ne",0)>3 と設定するのが正しいようです。
よく見ればわかることですが、古いバージョンの順番に慣れていたので
完全に目が流れていました。
ちなみに
アイテムとトリガーをテンプレートとして管理している場合は 『テンプレートのエクスポート/インポート』を利用することで Zabbix5.0で設定したトリガー書式でも、Zabbix6.0仕様に自動変換されます。
“最新バージョンの変化を肌で感じたい方” 以外はこの機能を使うと、かなり楽できます。
Zabbix6.0では、新機能が続々と開発されているようなので今後に期待です。






