nagios钉钉报警与邮件报警

由于公司需求,要有一个监控,并且可以钉钉、邮件报警,我就做了。虽然,我是tester,因为公司暂时没运维,我兼职了。

前提条件:

* 已经装好naigos,但没配置报警

* 需要linux下有python环境,并且安装requests第三方库

首先,我先感概一下这nagios的配置真有点麻烦,而且没有说明文档参考,靠自己慢慢摸索,当时是搞了很久。不过,挺强大的,这个工具,什么命令都可以自己配置。

1、在commands.cfg文件,配置一下报警命令

python /usr/local/nagios/etc/objects/police_host.py "$NOTIFICATIONTYPE$" "$HOSTADDRESS$" "$HOSTNAME$" "$SERVICEDISPLAYNAME$" "$SERVICEDESC$" "$LONGDATETIME$" "$SERVICEOUTPUT$"

2、把dindin-bj-host这个命令加到联系人和联系人组中去(即contacts.cfg和contactgroups.cfg)

修改contacts.cfg

修改contactgroups.cfg

3、然后传入报警参数(nagios可用宏),自定义报警函数再调用即可,在police-service.py文件中

自定义报警函数:

dindin-对应钉钉

SendTextMailParameterization-对应邮件报警,后面我会补充一下为什么不能sendEmail(一个邮件发送程序)发送邮件,而是自己写。

3.1 传入报警参数

3.2 自定义报警函数-钉钉报警

3.3 自定义报警函数-邮件报警

3.4 导入基础包,代码部分到这里基本完成了

4、开始执行代码,先测试一下  python   目录/police_host.py  11 22 33 44 55 66 77

执行代码

钉钉报警内容

邮件报警内容

5、因为,我是在window上写代码的,而监控主机在linux。还的迁移一下到服务器,并测试一下。同样的测试命令执行,结果为下图1,不要怀疑。这是对的。因为那个时间nagios并不会报警,nagios报警是有个时间段,每隔多少分钟

才会报警,所以,那个时间的报警参数(nagios可用宏)就不会有。那么就等待15分钟把(我设置的是15分钟发送一次报警信息),就会有结果了,参考下图2和3

补充1

钉钉报警webhook在群机器人管理那添加,然后点击设置就有了

补充2

为什么不用sendEmail发送邮件呢?

其实,我刚开始装nagios,也是百度,百度说邮件报警可以用这个。但我发现,阿里云服务器禁用了25端口,连接时总会提示超时。然后用我994端口,也是提示超时。所以,就得找原因。一般连接超时,都是出外网有问题。所有就ping smtphm.qiye.163.com,可以通。再telnet一下端口,发现只有994端口可用,25端口被阿里云禁用了。根据我几个月写小代码的经验,这个994是加密端口,必须使用ssl。所以,我就sendEmail中搜索一下ssl,看一下是否支持,然后发现可用-0 tls=yes,但最终还是不行,说当前系统不支持。所以,我最终自己写个邮件程序,来发送。

Sendmail发送邮件提示超时

sendEmail发送加密提示不支持,需要安装xxx

原文地址:https://www.cnblogs.com/xuxiongbing/p/9362161.html

时间: 2024-08-29 02:25:22

nagios钉钉报警与邮件报警的相关文章

yum搭建nagios监控linux&&window及邮件报警

本文是小弟整合几位大神的文章,见笑@@ Linux利用sendmail和fetion发送报警通知 nagios监控windows主机 && linux主机 CentOS 5/6.X 使用 EPEL YUM源: 实验环境: 两台64位的centos-6.6 一台window-server-2003 安装网络yum源: centos5.x--32位 [[email protected] ~]# wget http://mirrors.yun-idc.com/epel/5/i386/epel-r

自定义监控(网页报警,邮件报警)

注:zabbix的安装配置参考另一篇文章 1.Zabbix客户端配置 [[email protected] ~]# cat /tmp/user.sh #!/bin/bash uptime |awk '{print $4}' [[email protected] ~]# vim /etc/zabbix/zabbix_agentd.conf UserParameter=login-user,/bin/bash /tmp/user.sh(可以跟脚本,可以跟命令,这里的login-uesr是key值,可

nagios与sendEmail结合实现邮件报警

首先下载并解压sendEmail cd /usr/local/src tar -zxvf sendEmail-v1.56.tar.gz cp sendEmail-v1.56/sendEmail/usr/local/bin/ 拷贝之后就能用了 发邮件命令: sendEmail -f  [email protected] -t [email protected] -s smtp.qq.com -u "test" -xu 2876492224 -xp xxxxxxxxxxxxx  -m &q

centos7 yum 安装zabbix设置钉钉机器人报警

原文地址 网上有很多zabbix使用钉钉触发告警信息的攻略, 需要注意的是zabbix3.2不能使用那些攻略进行触发报警. 至于监控内容啥的不在这篇文章里谈及, 我们这里只谈报警部分. 作者这里的环境基本都是centos 7.4 以及zabbix3.2 yum 安装,如果读者用的其他系统, 或安装方式不同, 此文章仅供参考. 搭建好zabbix3.2环境,然后: 从网上下载一下钉钉的zabbix机器人: 钉钉-zabbix-robot 解压缩并放在你的任意位置,改名为dingding.sh并放到

Python通过smtp服务发送电子邮件给指定用户(适用于Zabbix邮件报警)

当下免费的邮件服务很多,例如163企业邮箱.QQ企业邮箱等.不需要自己搭建邮件服务器发送邮件给指 定用户,只需要注册任何一个支持smtp协议的邮箱就可以实现发送邮件.发送邮件可以通过Linux命令.自己编写的Shell脚本,也可以通过Python写的Python脚本. 如下代码是一个简单却实用的示例.默认无参数执行时,发送预设的邮件主题和邮件内容到预设的用户.带参数执行时将指定的主题和邮件内容发送到指定的用户.带参数执行可用于Zabbix邮件报警脚本. 对于Zabbix2.x可以直接填写脚本名字

配置zabbix通过微信报警企业微信报警

如今势态: 报警的方式可谓是八仙过海各显神通,如电话报警,短信报警,邮件报警,QQ报警,微信报警等等. 电话报警:一般都是使用别的平台的工具,平台给你提供一个接口供你使用,大多数为限量收费款 短信报警:一般是服务器安装串口GSM短信猫(也有其他平台提供这种接口),zabbix可以使用他来发送短信通知给管理员 邮件报警:一般是在server端安装邮件的客户端如sendEmail等,写脚本给zabbix进行调用,触发后发邮件给管理员 Q Q 报警:一般使用Mojo-Webqq的perl模板和cpan

Zabbix4.0(三)钉钉,邮件,微信报警

一,zabbix 邮件报警设置原理:触犯告警器之后 可以配置相应的动作,在动作里可以发邮件.微信.钉钉.短信等.告警脚本的放置位置见配置/usr/local/zabbix/etc/zabbix_server.conf LogFile=/usr/local/zabbix/zabbix_server.log DBHost=127.0.0.1 DBName=zabbix DBUser=zabbix DBPassword=zabbixpwd DBPort=3306 Timeout=30 AlertScr

Ubuntu16.04和Centos7 Yum部署zabbix3.4 结合钉钉智能报警

Ubuntu16.04和Centos7.4两种操作系统部署zabbix3.4及zabbix功能介绍和各种小问题解决办法,分享最新,最潮流,最干的干活,解决最实在的问题,此博客也是本人在对zabbix懵懂时期各种摸索排坑到正式上线,最后到生产中检测200多台生产机,至今为止为出现任何误报警,不报警等情况 首先我们了解下zabbix监控的基础概念,以及工作原理和框架:什么是zabbix:Zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存在的各

Zabbix配置钉钉的带图片报警

实现思路: 首先报警信息里要有itemid,这是前提,根据信息里传入的参数使用正则匹配到itemid 构建一个session会话,或者使用cookie来进行登录,根据itemid去请求图片,并将获取到的图片保存到本地,由于markdown的图片链接需要被访问到,我的zabbix是在内网中,所以需要将图片传到图床或者传到一个具有公网IP的web服务器,我这里传到了我的个人服务器 将报警信息转换成markdown语法格式 构造请求利用钉钉的webhook发送消息 设置钉钉机器人 钉钉机器人需要进行安