zabbix告警升级:非工作时间打电话给特定人员

001、背景

1、工作人员每天都是10-7点工作时间,下班后人们可能会关注告警,但是也有可能会不关注告警(毕竟洗澡是关注不到告警的 -_-)

2、周六日的时候人们到了休假的时间,也不能天天盯着告警

 

002、所以

告警需要智能一些。在人们下班后一些重要的告警可以发给到特定人员,在周六日休息的时候人们也要收到重要的告警。剩余的时间愉快玩耍不用天天盯着手机

 

003、实现方式(可以有多重,这样列举两种):

1、在告警接收方单独配置,添加一种接受方式,限制特定时间接受告警

2、在监控项源头配置:比如我们配置在非工作时间(00-09点)磁盘空间大于95%就打电话,在发送告警的时候关联对应监控项或者监控项相关联的模板

 

004、最佳实践

 

这里配置了一个agent不可用的监控项。

 

 

 

执行时间:

1、周一到周五,凌晨零点到晚上9点每分钟执行一次(1-5,00:00-21:00)

2、周六日,每分钟执行一次(6-7,00:00-23:59)

 

 

查询数据库,可以看到21:00之后监控就没有再执行了

005、哪些指标需要升级发给特定人员呢

下面这个是需要升级的监控项模板。

zbx_export_templates.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
    <version>5.2</version>
    <date>2022-07-11T13:33:31Z</date>
    <groups>
        <group>
            <name>Templates</name>
        </group>
    </groups>
    <templates>
        <template>
            <template>Monitoring metric alarm upgrade</template>
            <name>Monitoring metric alarm upgrade</name>
            <groups>
                <group>
                    <name>Templates</name>
                </group>
            </groups>
            <applications>
                <application>
                    <name>Monitoring metric alarm upgrade Application</name>
                </application>
            </applications>
            <items>
                <item>
                    <name>CPU iowait times</name>
                    <type>CALCULATED</type>
                    <key>cpu.iowait.times</key>
                    <delay>24h;wd1-7h00-09m/1</delay>
                    <history>7d</history>
                    <trends>7d</trends>
                    <params>last(&quot;system.cpu.util[,iowait]&quot;)</params>
                    <applications>
                        <application>
                            <name>Monitoring metric alarm upgrade Application</name>
                        </application>
                    </applications>
                    <triggers>
                        <trigger>
                            <expression>{min(5m)}&gt;{$CPU.IOWAIT.CRITS}</expression>
                            <name>CPU iowaits (over {$CPU.IOWAIT.CRITS}% for 5m)</name>
                            <manual_close>YES</manual_close>
                        </trigger>
                    </triggers>
                </item>
                <item>
                    <name>System uptimes</name>
                    <type>CALCULATED</type>
                    <key>system.uptimes</key>
                    <delay>24h;wd1-7h00-09m/1</delay>
                    <history>7d</history>
                    <trends>7d</trends>
                    <params>last(&quot;system.uptime&quot;)</params>
                    <applications>
                        <application>
                            <name>Monitoring metric alarm upgrade Application</name>
                        </application>
                    </applications>
                    <triggers>
                        <trigger>
                            <expression>{last()}&lt;120</expression>
                            <name>主机出现宕机或者重启(系统运行时间小于2分钟)</name>
                            <manual_close>YES</manual_close>
                        </trigger>
                    </triggers>
                </item>
                <item>
                    <name>Zabbix agent availabilitys</name>
                    <type>CALCULATED</type>
                    <key>zabbix.agent.availabilitys</key>
                    <delay>24h;60/1-5,00:00-09:00;60/6-7,00:00-23:59</delay>
                    <history>7d</history>
                    <trends>7d</trends>
                    <params>last(&quot;zabbix[host,agent,available]&quot;)</params>
                    <description>wd1-7h00-09m/1</description>
                    <applications>
                        <application>
                            <name>Monitoring metric alarm upgrade Application</name>
                        </application>
                    </applications>
                    <triggers>
                        <trigger>
                            <expression>{max({$AGENT.TIMEOUT})}=0</expression>
                            <name>Zabbix agent upgrade is not available (for {$AGENT.TIMEOUT})</name>
                            <manual_close>YES</manual_close>
                        </trigger>
                    </triggers>
                </item>
            </items>
            <macros>
                <macro>
                    <macro>{$AGENT.TIMEOUT}</macro>
                    <value>3m</value>
                </macro>
                <macro>
                    <macro>{$CPU.IOWAIT.CRITS}</macro>
                    <value>20</value>
                </macro>
            </macros>
        </template>
    </templates>
</zabbix_export>

 

 

 

006、参考资料

https://www.zabbix.com/documentation/5.0/zh/manual/config/items/item/custom_intervals
https://www.zabbix.com/documentation/5.0/en/manual/appendix/time_period
posted @ 2022-07-11 21:09  Hello_worlds  阅读(261)  评论(0编辑  收藏  举报