python连接oracle进行监控_使用Python脚本zabbix自定义key监控oracle连接状态
目的:此次實驗目的是為了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
正常情況下會返回一個結果
注:關于zabbix客戶端有哪些key值,我們可以在客戶端用zabbix_agentd -p命令查看
test為我自己創建的一個key
2、創建自定義Key
創建自定義key的方法相當簡單
在我們客戶端的zabbix_agentd.conf配置文件中加入幾個參數就可以了
這是我加入的兩行
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進行測試的時候還是會有導入模塊錯誤
這是由于客戶端共享庫鏈接沒有做好
添加libclntsh.so.11.1所在的路徑
在運行ldconfig命令生效你的配置
再次進行測試
到此基本都已經完成
剩下就是在web端添加此key的監控即可
4、web端添加監控
監控項創建完畢,我們進行觸發器的創建。
至此,觸發器已創建完畢(當返回值為2,也就是連不通的時候會觸發告警)!
接下來我們自己可以進行測試
當我們關掉數據庫監聽
顯然服務端收到的返回值是2
我們在來看看web端
看到web端已經有告警提示了
接下來我們把監聽開起來
這時候web端已經提示問題已經解決!
此次實驗至此已經全部完成。
總結
以上所述是小編給大家介紹的使用Python腳本zabbix自定義key監控oracle連接狀態,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對谷谷點程序網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
總結
以上是生活随笔為你收集整理的python连接oracle进行监控_使用Python脚本zabbix自定义key监控oracle连接状态的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 一维数组所有元素是否大于_
- 下一篇: python里pai_关于python如