您好,登錄后才能下訂單哦!
這篇文章主要介紹如何使用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第三方模塊
https://www.jb51.net/article/167103.htm
我這里再提一點:
雖然我在單獨運行腳本時是沒有任何報錯的,但是在我用zabbix_get進行測試的時候還是會有導入模塊錯誤
這是由于客戶端共享庫鏈接沒有做好
添加libclntsh.so.11.1所在的路徑
在運行ldconfig命令生效你的配置
再次進行測試
到此基本都已經完成
剩下就是在web端添加此key的監控即可
4、web端添加監控
監控項創建完畢,我們進行觸發器的創建。
至此,觸發器已創建完畢(當返回值為2,也就是連不通的時候會觸發告警)!
接下來我們自己可以進行測試
當我們關掉數據庫監聽
顯然服務端收到的返回值是2
我們在來看看web端
看到web端已經有告警提示了
接下來我們把監聽開起來
這時候web端已經提示問題已經解決!
此次實驗至此已經全部完成。
以上是“如何使用Python腳本zabbix自定義key監控oracle連接狀態”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。