作者简介
Wanger,Zabbix运维工程师,熟悉Zabbix开源监控系统的架构,乐于分享Zabbix运维经验,个人公众号“运维开发故事”
擅长领域:Zabbix基础设施运维以及Zabbix图形化展示
![2e88f0d3902db3b1393ca43e11c82eb2.png](https://i-blog.csdnimg.cn/blog_migrate/af6030b29162be15cdc4eacf9f5163d7.png)
本文主要通过一些监控示例来简单介绍zabbix的http agent类型的监控以及map图的简单用法,我们可以通过一些网站查询天气的api来获取天气情况,大部分的地图软件也都支持天气查询,这里我简单介绍几个,有高德地图,百度地图,心知天气,YY天气,个人用的是YY天气,因为我的需求不高,他能轻易地满足我。
点击查看YY天气api地址
创建HTTP agent类型的监控项
以创建北京天气的监控项为例
我们只要把请求的URL和键值填上就可以了
![c8bc273b0324b37f81d93dc78477db62.png](https://i-blog.csdnimg.cn/blog_migrate/0e39879ba09ef7d6d134b6815abc9ed0.jpeg)
![5ebaeedca8fa46c5ba98d6cc663b1902.png](https://i-blog.csdnimg.cn/blog_migrate/e757e1d2f004ded60e5dcdcf4221b848.jpeg)
获取数据如下
我们可以根据获取的数据对json进行预处理
![50fae8a1c5244865cdbd41abb0e4d307.png](https://i-blog.csdnimg.cn/blog_migrate/85a26408407063864dceb0b90ced7b73.png)
创建包含预处理的可依赖监控项
以监控天气信息为例
键值定义尽量规范,依赖项选择刚刚新建的http agent监控项
![db1aac27c898da5d8f9e539c5f8c307c.png](https://i-blog.csdnimg.cn/blog_migrate/6df6f7729ada21f582c6eb77cc1075f9.png)
添加预处理步骤
根据刚才获取到的数据来获取tq的值
![558c4f10fe0d4c9df258c5c839003be4.png](https://i-blog.csdnimg.cn/blog_migrate/d5e309590628b5a16318d12235f2e174.png)
除此之外还需要定义气温、风力、风向、相对湿度,添加方法与上面相同
添加高温的触发器
![af9a149f9c8069c4330a42d3d16057ca.png](https://i-blog.csdnimg.cn/blog_migrate/37e5b8c14d533f3cecfefab818facbd1.png)
编写脚本批量添加监控项和触发器
但是这样做要添加的监控项和触发器太多了,而且都是重复性的工作,这里我写了个脚本, 来对各地城市的监控项和触发器进行批量添加,批量添加的好处是省时省力,而且减少出错概率。
实现思路是获取主机的接口id,并对城市进行循环添加监控项和触发器
关注“Zabbix开源社区”获取可编辑版代码
![dea9be660566d0eef58bfb242f49b4ea.png](https://i-blog.csdnimg.cn/blog_migrate/ab9d58f64909e97080dad253c4b16a8a.png)
![a82fc42d9468363ed5840fea3b67c207.png](https://i-blog.csdnimg.cn/blog_migrate/832470e34d7ae96fcc0343e5b729e425.jpeg)
![21c7765289600be33d4b50fbcda4858a.png](https://i-blog.csdnimg.cn/blog_migrate/a0ea55c7c7db94a65421221c5716c7ec.jpeg)
![6015e30046080a1a1144f61775724e4a.png](https://i-blog.csdnimg.cn/blog_migrate/1d1f651595fcf312ed969310901fb1c7.jpeg)
![c5ccb254c2cf04c7979193b8f2346ba1.png](https://i-blog.csdnimg.cn/blog_migrate/e7e520dd14c55080419d25ae6bd98f89.png)
![24d16f19ca1c3db45d882a5162586f4f.png](https://i-blog.csdnimg.cn/blog_migrate/9ee9ddbe14b2e8c1284967a1a57fc125.jpeg)
![b3bb84b46ad1ce33a08f29138aff88fd.png](https://i-blog.csdnimg.cn/blog_migrate/d2742023fb27e39b3051b19ec6503edd.png)
![7e666caea126ecf82f1fbead70ac5d28.png](https://i-blog.csdnimg.cn/blog_migrate/12a46ed95c0e7fdcdedadeada26ef942.jpeg)
![c7ace76bd0ca65fa0df73881b7fb08f9.png](https://i-blog.csdnimg.cn/blog_migrate/2b7ec49c63ae6938401b11a78f2eb47b.png)
![2241b4af0b63b06993296d5a3e398d41.png](https://i-blog.csdnimg.cn/blog_migrate/405d126a765ec8a38b999ac5ba54a5cd.jpeg)
![3c6e4f0b114bd38f8730d1c5f61aa143.png](https://i-blog.csdnimg.cn/blog_migrate/56ac3370495522c2f740ac447de9fdfd.jpeg)
实现效果如下
![81f02e377ccd2ab88ff88d27be404b61.png](https://i-blog.csdnimg.cn/blog_migrate/da5855e6c97d8f0901adaa775ee39fe2.jpeg)
![0570b7a2a4e4306c6b7132e79ddb20d9.png](https://i-blog.csdnimg.cn/blog_migrate/c3937f1c414379c8727334d4442a644c.jpeg)
![c631fd459af9ff35ba11f74bfb5996af.png](https://i-blog.csdnimg.cn/blog_migrate/ad0b4b3931434db424e470042f744175.jpeg)
制作map图
首先创建背景图片
这里我添加了一张中国地图
![93a1fcda7088213248e337f1fdcefed1.png](https://i-blog.csdnimg.cn/blog_migrate/b5fe5d48ae2c8eb112d02059d16476ed.jpeg)
创建map图
![a6682acbb371f69415fa2ce1a0a1d23d.png](https://i-blog.csdnimg.cn/blog_migrate/41fc295d6becbcb1593ca288584bfe05.png)
对map图进行编辑
标签用于显示监控的数据,添加高温的触发器,当触发高温报警后,图标由绿点会变成红绿 交替闪动,这里以北京气温为例
![75add89fe669ae1262e2ab55cbc037f8.png](https://i-blog.csdnimg.cn/blog_migrate/9a9d50748ec4320452a294d8556b5efa.png)
最终实现效果如下
![41c1de6fbcc808aed90e915e373ad862.png](https://i-blog.csdnimg.cn/blog_migrate/4b085581bba0f7bf51435ddfbc289c22.jpeg)
报警效果如下
![14df4bb0c3d911977ea546a025d08fd3.png](https://i-blog.csdnimg.cn/blog_migrate/cb867608206288d8958be8d513a5595f.png)
至此,还请各路专家批评指正:)