zabbix短信脚本
‘壹’ zabbix监控自定义脚本怎么写
好办法!之前我曾经想过让zabbixagent调用BAT文件,先用BAT的start功能让VBS在旁边运行着,自己读取VBS上次执行的结果。可惜zabbixagent似乎在BAT执行完毕后,会将它start出来的子进程也结束掉,无法实现我要的效果。不过还真没想过用windows的.
‘贰’ zabbix监控项用脚本怎么配置
zabbix怎么使用自动发现添加新监控项1.Serverzabbix系统核心进程,轮询并捕获数据、发送通知等。是zabbixagent和zabbixproxy汇报数据的对象。server自身可远程检测网络服务。所有的前后端配置、统计信息、可操作数据存储于此。包含server、前段界面和后端DB几部分。2.Agent部署在被监控主机上用于监控本地资源和应用并向zabbixserver汇报结果。使用本地系统调用故非常高效。有主动和被动两种检测模式。被动模式下agent根据server或proxy的具体请求来返回数据。主动模式下先主动由server获取监控项列表在检测并返回新的数据。采用主动或被动检测取决于相应监控项的配置。3.Proxy可以自由选择部署或者不部署,主要用于分担server的负载。在集中化监控远程位置、分支、网络的场景中是很好的解决方案。可从被监控设备收集数据缓存在proxy本地后传递给其所属的zabbixserver。proxy需要单独的数据库。
‘叁’ zabbix运维系统怎么编写脚本
1.修改zabbix server端配置文件启用AlertScriptsPath使其支持脚本功能
1.编辑zabbix server端配置文件并重启服务
# vim /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/alertscripts
# /etc/init.d/zabbix_server restart
2.服务端添加邮件报警python脚本并给脚本执行权限
邮件报警并记录志
# vim /usr/local/zabbix/alertscripts/zabbix_sendmail.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import pdb
import smtplib
import string
import time
import sys
reload(sys)
sys.setdefaultencoding(‘utf-8‘)
#pdb.set_trace()
#HOST = "mail.gw.com.cn"
def S_Mail():
HOST = "smtp.exmail.qq.com" #邮件服务器
SUBJECT = sys.argv[2].decode(‘utf-8‘).encode(‘gbk‘) #主题
TO =sys.argv[1] #收件邮箱
FROM = "[email protected]"
text = sys.argv[3].decode(‘utf-8‘).encode(‘gbk‘) #发件内容
BODY = string.join((
"FROM: %s" % FROM,
"To: %s" % TO,
"Subject: %s" %SUBJECT,
"",
text
),"\r\n")
server = smtplib.SMTP()
server.connect(HOST,25)
#server.starttls()
server.login("发件邮箱","密码")
server.sendmail(FROM,[TO],BODY)
server.quit()
# email log 记录志
with open(‘/data/logs/zabbix/Email.log‘, ‘a‘) as f:
date=time.strftime("%y-%m-%d %H:%M:%S")
str = date + " " + TO +" " + SUBJECT + "\r\n" + "\n"
str1 = str.decode(‘gbk‘).encode(‘utf-8‘)
# print("%s" %str1)
f.write(str1)
if __name__==‘__main__‘:
S_Mail()
‘肆’ zabbix服务端自定义脚本放在哪
配置方式: 1. 完成自定义监控脚本的编写(windows或linux脚本) 脚本要求:(1)既然是监控,那必然要有输出结果值(字符串,数字皆可) (2)必须要求zabbix用户有执行权限,当然可以直接设置所有用户都有执行权限(chmod 777 脚本文件)
‘伍’ 请教各位一个问题zabbix怎样用shell或者python调用短信接口api进行发短信
2.填上发短信脚本的名称 zabbix 实战短信报警之调用短信接口3.注意zabbix_server.conf里面的配置,指定脚本放的位置及赋予脚本执行和属主zabbix
‘陆’ zabbix api怎么给host添加proxy
主机
Name:定义item的名称
Type:选择各种接口
key:点击select即可选择zabbix自带的key
Host interface: 选择主机接口。
Type of information:选择类型的信息,分别是 数字(无符号),数字(浮点),字符,日志,文本
Data type:选择数据的类型,分别是布尔值,八进制,十进制,十六进制
Units:单位,如计算百分比后的 %
Use custom multiplier:使用自定义乘法器,将数据乘以一个数值。可用来进行单位转换。zabbix采集数据的单位默认为b
Update interval (in sec):监控项每个多少秒更新一次
New flexible interval:可点击add添加自定义的灵活更新时间。
Keep history (in days):保存历史天数
Keep trends (in days):保存趋势天数
Store value:As is不改变数据值直接存储,Delta(speed per second):保存为(value-prev_time)的计算结果,既当前值减去前一次获取的数据值,除以当前时间戳前去前一次值获取时的时间戳得到的结果;如果当前值小于前一次的值,其将会被丢弃,Delta(simple change):保存为(value-prev_value)的计算结果;
Show value:没折腾明白。。
New application:是否创建新的item集合,并把item加入到新的application中。
Populates host inventory field:你可以选择一个host信息域存放该item的值,如果设置automatic inventory population,则他会自动工作
正确添加保存后,稍等片刻将可以看到数据。
‘柒’ 怎么在zabbix里面使用python脚本
1.修改zabbix server端的配置文件,启用AlertScriptsPath,使其支持脚本功能
1.编辑zabbix server端的配置文件,并重启服务
# vim /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/alertscripts
# /etc/init.d/zabbix_server restart
2.在服务端添加邮件报警的python脚本,并给脚本执行权限
邮件报警,并记录日志
# vim /usr/local/zabbix/alertscripts/zabbix_sendmail.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import pdb
import smtplib
import string
import time
import sys
reload(sys)
sys.setdefaultencoding(‘utf-8‘)
#pdb.set_trace()
#HOST = "mail.gw.com.cn"
def S_Mail():
HOST = "smtp.exmail.qq.com" #邮件服务器
SUBJECT = sys.argv[2].decode(‘utf-8‘).encode(‘gbk‘) #主题
TO =sys.argv[1] #收件邮箱
FROM = "[email protected]"
text = sys.argv[3].decode(‘utf-8‘).encode(‘gbk‘) #发件内容
BODY = string.join((
"FROM: %s" % FROM,
"To: %s" % TO,
"Subject: %s" %SUBJECT,
"",
text
),"\r\n")
server = smtplib.SMTP()
server.connect(HOST,25)
#server.starttls()
server.login("发件邮箱","密码")
server.sendmail(FROM,[TO],BODY)
server.quit()
# email log 记录日志
with open(‘/data/logs/zabbix/Email.log‘, ‘a‘) as f:
date=time.strftime("%y-%m-%d %H:%M:%S")
str = date + " " + TO +" " + SUBJECT + "\r\n" + "\n"
str1 = str.decode(‘gbk‘).encode(‘utf-8‘)
# print("%s" %str1)
f.write(str1)
if __name__==‘__main__‘:
S_Mail()
‘捌’ zabbix的告警脚本目录在哪
zabbix媒介类型包括mail、sms、自定义脚本,我们用的最多的还是脚本媒介,再次我们就不讲另外两个媒介了。当事件通知到脚本,会传递三个参数它,分别为$1(发送给谁) $2(标题) $3(内容)。例如发送邮件给[email protected],标题为nginx离线,内容是IP地址:1.1.1.1,nginx离线,请立即处理。