使用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 相关文章推荐
在Windows8上的搭建Python和Django环境
Jul 03 Python
Python数据持久化shelve模块用法分析
Jun 29 Python
分享8个非常流行的 Python 可视化工具包
Jun 05 Python
Python中断多重循环的思路总结
Oct 04 Python
Python 实现try重新执行
Dec 21 Python
Python3 A*寻路算法实现方式
Dec 24 Python
python 实现多维数组(array)排序
Feb 28 Python
Python3创建Django项目的几种方法(3种)
Jun 03 Python
Python非单向递归函数如何返回全部结果
Dec 18 Python
python之json文件转xml文件案例讲解
Aug 07 Python
Python3.10的一些新特性原理分析
Sep 15 Python
Python OpenCV超详细讲解读取图像视频和网络摄像头
Apr 02 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
FleaPHP的安全设置方法
2008/09/15 PHP
PHP Header用于页面跳转要注意的几个问题总结
2008/10/03 PHP
php数组函数序列之array_push() 数组尾部添加一个或多个元素(入栈),返回新长度。
2011/11/07 PHP
CodeIgniter扩展核心类实例详解
2016/01/20 PHP
PHP中文字符串截断无乱码解决方法
2016/10/10 PHP
thinkPHP中U方法加密传递参数功能示例
2018/05/29 PHP
Laravel实现短信注册的示例代码
2018/05/29 PHP
Yii 框架使用Forms操作详解
2020/05/18 PHP
网上抓的一个特效
2007/05/11 Javascript
window.location和document.location的区别分析
2008/12/23 Javascript
JS 参数传递的实际应用代码分析
2009/09/13 Javascript
通过JS获取用户本地图片路径并显示的代码
2012/02/16 Javascript
自定义右键属性覆盖浏览器默认右键行为实现代码
2013/02/02 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
2016/07/15 Javascript
浅谈Javascript中的函数、this以及原型
2016/10/09 Javascript
vue引用js文件的多种方式(推荐)
2018/05/17 Javascript
解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题
2019/04/10 jQuery
基于vue写一个全局Message组件的实现
2019/08/15 Javascript
layui复选框限制选择个数的方法
2019/09/18 Javascript
在Echarts图中给坐标轴加一个标识线markLine
2020/07/20 Javascript
微信小程序实现点击导航标签滚动定位到对应位置
2020/11/19 Javascript
[02:12]DOTA2英雄基础教程 变体精灵
2013/12/16 DOTA
python 不关闭控制台的实现方法
2011/10/23 Python
Python3 无重复字符的最长子串的实现
2019/10/08 Python
详解python中*号的用法
2019/10/21 Python
Pycharm远程连接服务器并实现代码同步上传更新功能
2020/02/25 Python
django使用多个数据库的方法实例
2021/03/04 Python
html5新特性与用法大全
2018/09/13 HTML / CSS
使用HTML5做个画图板的方法介绍
2013/05/03 HTML / CSS
瑰珀翠美国官网:Crabtree & Evelyn美国
2016/11/29 全球购物
移动通信专业自荐信范文
2013/11/12 职场文书
党支部承诺书范文
2014/03/28 职场文书
银行党员批评与自我批评
2014/10/15 职场文书
爱国之歌(8首)
2019/09/29 职场文书
总结Python连接CS2000的详细步骤
2021/06/23 Python
前端实现滑动按钮AJAX与后端交互的示例代码
2022/02/24 Javascript