使用Python脚本zabbix自定义key监控oracle连接状态


Posted in Python onAugust 28, 2019

目的:此次实验目的是为了zabbix服务端能够实时监控某服务器上oracle实例能否正常连接

环境:1、zabbix_server

2、zabbix_agent(含有oracle)

主要知识点:

1、zabbix_get用法

2、python中cx_Oracle模块使用

------------------------------------------------------------------------------

1、zabbix_get用法

常用用法

zabbix_get -s host-name-or-IP [-p port-number] [-I IP-address] -k item-key

在我们zabbix_server端可以测试一个zabbix_agent端的key

使用Python脚本zabbix自定义key监控oracle连接状态

正常情况下会返回一个结果

注:关于zabbix客户端有哪些key值,我们可以在客户端用zabbix_agentd -p命令查看

使用Python脚本zabbix自定义key监控oracle连接状态

test为我自己创建的一个key

2、创建自定义Key

创建自定义key的方法相当简单

在我们客户端的zabbix_agentd.conf配置文件中加入几个参数就可以了

使用Python脚本zabbix自定义key监控oracle连接状态

这是我加入的两行

1、UnsafeUserParameters参数有两个值1或0

0为禁用

1为开启

2、UserParameter=key名字,命令或脚本(用法)

加完配置后记得重启客户端进程!!

3、脚本的定义

这个步骤是最为核心的,所有你想实现的监控都可以在这步进行规划

此次我测试的是oracle实例的连接状态(能连或不能连)

代码如下

#-*- encoding: utf-8 -*-

import cx_Oracle
try:
 conn=cx_Oracle.connect('system/oracle@172.168.9.186:1521/orcl')
 c=conn.cursor()
 c.close()
 conn.close()
 print('1')
except cx_Oracle.DatabaseError,error:
 print('2')

其中需要用到一个cx_Oracle第三方模块

我这里再提一点:

虽然我在单独运行脚本时是没有任何报错的,但是在我用zabbix_get进行测试的时候还是会有导入模块错误

使用Python脚本zabbix自定义key监控oracle连接状态

这是由于客户端共享库链接没有做好

使用Python脚本zabbix自定义key监控oracle连接状态

添加libclntsh.so.11.1所在的路径

在运行ldconfig命令生效你的配置

再次进行测试

使用Python脚本zabbix自定义key监控oracle连接状态

到此基本都已经完成

剩下就是在web端添加此key的监控即可

4、web端添加监控

使用Python脚本zabbix自定义key监控oracle连接状态

使用Python脚本zabbix自定义key监控oracle连接状态

使用Python脚本zabbix自定义key监控oracle连接状态

监控项创建完毕,我们进行触发器的创建。

使用Python脚本zabbix自定义key监控oracle连接状态

使用Python脚本zabbix自定义key监控oracle连接状态

使用Python脚本zabbix自定义key监控oracle连接状态

至此,触发器已创建完毕(当返回值为2,也就是连不通的时候会触发告警)!

接下来我们自己可以进行测试

当我们关掉数据库监听

使用Python脚本zabbix自定义key监控oracle连接状态

使用Python脚本zabbix自定义key监控oracle连接状态

显然服务端收到的返回值是2

我们在来看看web端

使用Python脚本zabbix自定义key监控oracle连接状态

看到web端已经有告警提示了

接下来我们把监听开起来

使用Python脚本zabbix自定义key监控oracle连接状态

这时候web端已经提示问题已经解决!

此次实验至此已经全部完成。

总结

以上所述是小编给大家介绍的使用Python脚本zabbix自定义key监控oracle连接状态,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python中使用SAX解析xml实例
Nov 21 Python
Python open()文件处理使用介绍
Nov 30 Python
python根据出生日期返回年龄的方法
Mar 26 Python
在Python中利用Into包整洁地进行数据迁移的教程
Mar 30 Python
Python多层嵌套list的递归处理方法(推荐)
Jun 08 Python
Python实现将sqlite数据库导出转成Excel(xls)表的方法
Jul 17 Python
朴素贝叶斯Python实例及解析
Nov 19 Python
Python图像处理之直线和曲线的拟合与绘制【curve_fit()应用】
Dec 26 Python
如何使用python爬虫爬取要登陆的网站
Jul 12 Python
Python爬虫小例子——爬取51job发布的工作职位
Jul 10 Python
如何将numpy二维数组中的np.nan值替换为指定的值
May 14 Python
Python OpenCV实现图形检测示例详解
Apr 08 Python
django删除表重建的实现方法
Aug 28 #Python
Python Django 前后端分离 API的方法
Aug 28 #Python
django重新生成数据库中的某张表方法
Aug 28 #Python
PyQt5+Caffe+Opencv搭建人脸识别登录界面
Aug 28 #Python
关于Python核心框架tornado的异步协程的2种方法详解
Aug 28 #Python
python使用celery实现异步任务执行的例子
Aug 28 #Python
Python Gitlab Api 使用方法
Aug 28 #Python
You might like
PHP 工厂模式使用方法
2010/05/18 PHP
第七章 php自定义函数实现代码
2011/12/30 PHP
php对csv文件的读取,写入,输出下载操作详解
2013/08/10 PHP
js代码实现微博导航栏
2015/07/30 PHP
Thinkphp框架开发移动端接口(1)
2016/08/18 PHP
php源码之将图片转化为data/base64数据流实例详解
2016/11/27 PHP
浅谈PHP中try{}catch{}的使用方法
2016/12/09 PHP
PHP基于IMAP收取邮件的方法示例
2017/08/07 PHP
js获取指定的cookie的具体实现
2014/02/20 Javascript
JavaScript通过Date-Mask将日期转换成字符串的方法
2015/06/04 Javascript
使用ngView配合AngularJS应用实现动画效果的方法
2015/06/19 Javascript
Bootstrap Metronic完全响应式管理模板学习笔记
2016/07/08 Javascript
Angular2开发——组件规划篇
2017/03/28 Javascript
使用InstantClick.js让页面提前加载200ms
2017/09/12 Javascript
jQuery时间戳和日期相互转换操作示例
2018/12/07 jQuery
简单了解小程序+node梳理登陆流程
2019/06/24 Javascript
JavaScript提升机制Hoisting详解
2019/10/23 Javascript
vue.js实现简单的计算器功能
2020/02/22 Javascript
Python类属性与实例属性用法分析
2015/05/09 Python
python中装饰器级连的使用方法示例
2017/09/29 Python
Python求出0~100以内的所有素数
2018/01/23 Python
python实现ip代理池功能示例
2019/07/05 Python
对python中UDP,socket的使用详解
2019/08/22 Python
Python实现JS解密并爬取某音漫客网站
2020/10/23 Python
运动鞋、街头服装、手表和手袋的实时市场:StockX
2020/11/25 全球购物
中软国际Java程序员机试题
2012/08/19 面试题
2013年保送生自荐信格式
2013/11/20 职场文书
村庄绿化方案
2014/05/07 职场文书
模具设计与制造专业自荐书
2014/07/01 职场文书
学校查摆问题整改措施
2014/09/28 职场文书
扬州个园导游词
2015/02/06 职场文书
健康教育主题班会
2015/08/14 职场文书
幼儿园大班教育随笔
2015/08/14 职场文书
党性修养心得体会2016
2016/01/21 职场文书
Matplotlib可视化之添加让统计图变得简单易懂的注释
2021/06/11 Python
端午节将至,用Python爬取粽子数据并可视化,看看网友喜欢哪种粽子吧!
2021/06/11 Python