tail -f /dev/null

If you haven't had any obstacles lately, you're not challenging. be the worst.

📝 Zabbix trigger の threshold

基本的な使い方は公式サイトに記載されているが、癖のある閾値の見方をするトリガー設定もあるので📝しておく。

regexp(), iregexp()

  • 最新値がregular expressionと一致するかどうかチェックする。
  • parameterはPOSIXのregular expression。

iregexp("WARNING", 10(sec)[#3])

((({xxx:log[/var/log/messages,"error"].iregexp(error)})=1) and
(({xxx:log[/var/log/messages,"error"].nodata(60)})=0))

出力ログにて WARNING が含まれている場合、トリガーが実行される。

{Template_xxx:check_xxx[{Conditional expression}].iregexp("WARNING")}<>0

count

前提: アイテムの取得間隔は1分とする。

直近7回で、CPU利用率80%以上が3回以上(3/7回)続いた場合はトリガーが実行される。

{Template OS Windows:system.cpu.util[,system,avg1].count(#7, 80, "gt")}>3

dayofweek()

月(18:00~)から金(24:00)までで、 WARNING が検出されたらトリガーが実行される。

({Template_xxx:check_xxx[{Conditional expression}].str("WARNING")}=1) and
({Template_xxx:check_xxx[{Conditional expression}].dayofweek()}<6) and
(({Template_xxx:check_xxx[{Conditional expression}].dayofweek()}=1) and
({Template_xxx:check_xxx[{Conditional expression}].time(0)}<180000)=0)

6:00から6:30までで、CPUのLAをチェックする。

({Template_xxx:system.cpu.load[percpu,avg5].avg(20m)}>5) and
(({Template_xxx:system.cpu.load[percpu,avg5].time(0)}<060000) or
({Template_xxx:system.cpu.load[percpu,avg5].time(0)}>063000))

regular expression

error_message 1 » WARNING|CRITICAL|UNKNOWN|ERROR [result is true]

@error_message を検出した場合、トリガーが実行される。

{Template_xxx:check_xxx[{Conditional expression}].iregexp(@error_message)}<>0

ping

icmpping

監視間隔(60秒)ごとに3回pingを実行し、0.5秒以内に1つでも応答がある場合は1を返し、それ以外の場合は0を返す。3回(60秒* 3)以上だとトリガーが実行される。

{Template Module ICMP Ping:icmpping.max(#3)}=0

icmppingloss

packet loss率($ICMP_LOSS_WARN)が5分以上で20〜99%継続すると、トリガーが実行される。

{Template Module ICMP Ping:icmppingloss.min(5m)}>{$ICMP_LOSS_WARN} and {Template Module ICMP Ping:icmppingloss.min(5m)}<100

web monitoring

{template_xxx:web.test.rspcode[Web-Monitoring_xxx,http://{HOST.IP}/_hc.html].last(#5)}&lt;&gt;200

Trigger 同士の依存関係

  • trigger_WARNING threshold 80%
  • trigger_CRITICAL threshold 90%

2つの別々のしきい値が同じアイテムに紐付いていた場合、復帰時にトリガーが重複して実行される。そのような場合は、trigger expressionを使用できる。 trigger_WARNINGtrigger_CRITICAL を依存関係先として設定出来る。