使用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操作MySQL简单实现方法
Jan 26 Python
编写Python脚本来获取mp3文件tag信息的教程
May 04 Python
Python中的连接符(+、+=)示例详解
Jan 13 Python
Python列表list操作符实例分析【标准类型操作符、切片、连接字符、列表解析、重复操作等】
Jul 24 Python
Django使用Celery异步任务队列的使用
Mar 13 Python
python设置值及NaN值处理方法
Jul 03 Python
Python 使用元类type创建类对象常见应用详解
Oct 17 Python
python定时任务 sched模块用法实例
Nov 04 Python
Python如何优雅获取本机IP方法
Nov 10 Python
重写django的model下的objects模型管理器方式
May 15 Python
Python 为什么推荐蛇形命名法原因浅析
Jun 18 Python
python基础之类属性和实例属性
Oct 24 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/08/08 PHP
php+html5使用FormData对象提交表单及上传图片的方法
2015/02/11 PHP
php文件系统处理方法小结
2016/05/23 PHP
PHP模糊查询的实现方法(推荐)
2016/09/06 PHP
抽出www.templatemonster.com的鼠标悬停加载大图模板的代码
2007/07/11 Javascript
Extjs显示从数据库取出时间转换JSON后的出现问题
2012/11/20 Javascript
用JavaScript修改CSS属性的代码
2013/05/06 Javascript
js实现简单折叠、展开菜单的方法
2015/08/28 Javascript
详解AngularJS中的表单验证(推荐)
2016/11/17 Javascript
JavaScript-定时器0~9抽奖系统详解(代码)
2017/08/16 Javascript
解决ant design vue 表格a-table二次封装,slots渲染的问题
2020/10/28 Javascript
[13:40]TI3青蛙君全程回顾 DOTA2我们为梦想再战
2013/09/13 DOTA
[06:53]2018DOTA2国际邀请赛寻真——为复仇而来的Newbee
2018/08/15 DOTA
python在windows下实现备份程序实例
2014/07/04 Python
利用Python写一个爬妹子的爬虫
2018/06/08 Python
Python中__slots__属性介绍与基本使用方法
2018/09/05 Python
python实现飞机大战微信小游戏
2020/03/21 Python
Python进阶之自定义对象实现切片功能
2019/01/07 Python
Python命令行参数解析工具 docopt 安装和应用过程详解
2019/09/26 Python
深入浅析Python科学计算库Scipy及安装步骤
2019/10/12 Python
Python基础教程(一)——Windows搭建开发Python开发环境
2020/07/20 Python
Python 如何实现访问者模式
2020/07/28 Python
关于多种方式完美解决Python pip命令下载第三方库的问题
2020/12/21 Python
CSS实现聊天气泡效果
2020/04/26 HTML / CSS
草莓网化妆品日本站:Strawberrynet日本
2017/10/20 全球购物
英语文学专业学生的自我评价
2013/10/31 职场文书
七年级数学教学反思
2014/01/22 职场文书
文明餐桌行动实施方案
2014/02/19 职场文书
原材料检验岗位职责
2014/03/15 职场文书
工程售后服务方案
2014/06/08 职场文书
公司门卫岗位职责范本
2014/07/08 职场文书
2015年教师节新闻稿
2015/07/17 职场文书
党务工作者主要事迹材料
2015/11/03 职场文书
python实现求纯色彩图像的边框
2021/04/08 Python
Pytorch实现图像识别之数字识别(附详细注释)
2021/05/11 Python
DjangoRestFramework 使用 simpleJWT 登陆认证完整记录
2021/06/22 Python