api zabbix 拓扑图 获取_Zabbix报表系统
Zabbix監(jiān)控資源之后,常需要對資源的的監(jiān)控?cái)?shù)據(jù)進(jìn)行導(dǎo)出,制作成為報(bào)表,如周報(bào),日報(bào)等形式,目前zabbix還未自帶報(bào)表功能。近期學(xué)習(xí)go語言,開發(fā)了一個(gè)簡單的Zabbix報(bào)表工具。
在線試用
https://zbx.cactifans.com
直接點(diǎn)登錄即可
系統(tǒng)截圖
主機(jī)列表
數(shù)據(jù)導(dǎo)出
報(bào)表展示
導(dǎo)出到Excel
告警列表
告警統(tǒng)計(jì)
告警導(dǎo)出到Excel
基本情況
后端:go ? (beego web框架 https://github.com/astaxie/beego ?)
前端:vue (elment ui ?https://github.com/PanJiaChen/vue-admin-template)
繪圖:Echart ?https://echarts.baidu.com/
Zabbix API: https://github.com/AlekSi/zabbix
數(shù)據(jù)庫:MySQL 5.6
基本功能
1.可導(dǎo)入Zabbix監(jiān)控的服務(wù)器(目前是Linux&Windows)的CPU空閑率/內(nèi)存Free空間/磁盤可用空間/網(wǎng)絡(luò)流量,導(dǎo)出到Excel
2.根據(jù)歷史告警信息生成Top10 告警主機(jī),生成不同等級告警分類
3.根據(jù)主機(jī)名查詢歷史告警
開發(fā)思路
歷史數(shù)據(jù)獲取
1.基于Zabbix API,通過調(diào)用Zabbix API的 hitory.get/item.get獲取指定指標(biāo)的itemid。
根據(jù)hostid和item key獲取items具體信息
par["key_"] = key
rep, err := API.Call("item.get", Params{"output": "extend", "sortfield": "name", "limit": "1", "hostids": hostid, "search": par})
2.根據(jù)itemid信息通過trend.get接口獲具體指標(biāo)的歷史詳情數(shù)據(jù)及趨勢數(shù)據(jù)。
根據(jù)itemid獲取item的趨勢數(shù)據(jù),limit為輸出條數(shù)
par1 := []string{itemid}
rep, err := API.Call("trend.get", Params{"output": par,
"itemids": par1, "limit": limit})
3.通過Echart繪圖并導(dǎo)出到Excel報(bào)表
歷史告警獲取
歷史告警通過zabbix的告警腳本功能發(fā)送到平臺,解析之后存入數(shù)據(jù)庫,進(jìn)行分析
后續(xù)計(jì)劃
目前還有平臺功能較弱,后期打算新增以下功能:
1.支持導(dǎo)出任意監(jiān)控指標(biāo)的報(bào)表信息
2.支持導(dǎo)出歷史詳情信息,以監(jiān)控指標(biāo)采集周期為間隔
3.定制導(dǎo)出某Linux或windows機(jī)器的基本指標(biāo)到一個(gè)Excel,包括機(jī)器CPU/內(nèi)存/磁盤/網(wǎng)卡流量
4.Top支持導(dǎo)出到Excel
5.其他暫時(shí)沒想到….
關(guān)于源碼及使用
由于本人正在學(xué)習(xí)go語言及vue,其代碼質(zhì)量太差,基本可以用下圖來形容我的代碼(真實(shí)合理)
因此源碼就不公開了。二進(jìn)制軟件后期會在公眾號及blog公開下載地址,免費(fèi)供大家使用(有可能是License授權(quán)碼方式)。
點(diǎn)擊【閱讀原文】查看全文
歡迎在下方留言,提出合理建議及需求。
總結(jié)
以上是生活随笔為你收集整理的api zabbix 拓扑图 获取_Zabbix报表系统的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: get vue 和set 用法_深入剖析
- 下一篇: wince模拟器访问网络_Windows