当前位置: 首页 > news >正文

租房网站信创网站

租房网站,信创网站,郑州建设网店网站,如何建立一个微信公众号平台前言 监控系统除了监控os和数据库性能相关的指标外,业务数据也是重点监控的对象。 一线驻场的运维同学应该深有体会,每天需要向甲方或者公司反馈现场的数据情况,正常情况下一天巡检两次,早上上班后和下午下班前各一次。监控项目…

前言

监控系统除了监控os和数据库性能相关的指标外,业务数据也是重点监控的对象。

一线驻场的运维同学应该深有体会,每天需要向甲方或者公司反馈现场的数据情况,正常情况下一天巡检两次,早上上班后和下午下班前各一次。监控项目多而杂,如果每次都手动拷贝脚本到数据库中查询,不仅麻烦,而且效率极低,因此有必要配置一个监控系统辅助业务数据的巡检工作。

监控基本方式是通过sql查询数据库相关内容状态和信息来实现,这里以监控示例业务表为例,讲解此监控项建立的过程,希望能有一定的指导作用,方便各位根据自己的实际情况,建立监控内容。

0 环境准备

zabbix部署教程

1 业务场景模拟

示例数据:

  • 数据库:sakila
  • 下载地址:https://dev.mysql.com/doc/index-other.html,下载后导入数据库即可完成创建。

在这里插入图片描述

  • EER图:

在这里插入图片描述

  • 假设业务监控指标的需求为:获取Lethbridge城市当前的累计营业额。

sql如下:

mysql>
select sum(p.amount) amountfrom sakila.customer c,sakila.payment p,sakila.store s,sakila.address a,sakila.city ct where c.customer_id = p.customer_idand c.store_id = s.store_id and s.address_id = a.address_id and a.city_id = ct.city_id and ct.city = 'Lethbridge';+----------+
| amount   |
+----------+
| 36997.53 |
+----------+
1 row in set (0.02 sec)

2 创建监控项脚本文件

此文件用于添加监控脚本。

[root@mysql001 scripts]# touch /var/lib/zabbix/percona/scripts/business_data.sh
[root@mysql001 scripts]# chmod +x /var/lib/zabbix/percona/scripts/business_data.sh
[root@mysql001 scripts]# ll /var/lib/zabbix/percona/scripts/business_data.sh
-rwxr-xr-x 1 root root 587 Feb 25 18:15 /var/lib/zabbix/percona/scripts/business_data.sh

3 修改zabbix agent配置文件

将监控项脚本文件添加到配置文件中。

[root@mysql001 scripts]# vim /usr/local/zabbix/etc/zabbix_agentd.conf.d/userparameter_percona_mysql.conf
#添加
UserParameter=business_data[*],/var/lib/zabbix/percona/scripts/business_data.sh $1

4 监控用户赋权

给监控用户赋予sakila数据库的查询权限。

mysql> grant select on sakila.* to pmp@localhost;
Query OK, 0 rows affected (0.01 sec)mysql> show grants for pmp@localhost;
+---------------------------------------------------------------+
| Grants for pmp@localhost                                      |
+---------------------------------------------------------------+
| GRANT PROCESS, REPLICATION CLIENT ON *.* TO `pmp`@`localhost` |
| GRANT SELECT ON `sakila`.* TO `pmp`@`localhost`               |
+---------------------------------------------------------------+
2 rows in set (0.00 sec)

5 测试监控脚本

过滤前:

[mysql@mysql001 ~]$ mysql -upmp -pPmp123456. -e "select sum(p.amount) amount from sakila.customer c, sakila.payment p, sakila.store s, sakila.address a, sakila.city ct where c.customer_id = p.customer_id and c.store_id = s.store_id and s.address_id = a.address_id and a.city_id = ct.city_id and ct.city = 'Lethbridge'\G"
mysql: [Warning] Using a password on the command line interface can be insecure.
*************************** 1. row ***************************
amount: 36997.53

过滤后

[mysql@mysql001 ~]$ mysql -upmp -pPmp123456. -e "select sum(p.amount) amount from sakila.customer c, sakila.payment p, sakila.store s, sakila.address a, sakila.city ct where c.customer_id = p.customer_id and c.store_id = s.store_id and s.address_id = a.address_id and a.city_id = ct.city_id and ct.city = 'Lethbridge'\G" 2>/dev/null | awk 'NR==2 {print $2}'
36997.53

过滤后的结果一定要为一个数值或字符串,不能包含间隔或多列,要不然监控项不好配置。

count()等这种聚合函数无脑在脚本后加 2>/dev/null | awk ‘NR==2 {print $2}’ 就行。

命令解析:

  • 2>/dev/null:去除MySQL命令行直接输入密码警告;
  • awk ‘NR==2’:取第二行数据;
  • awk ‘{print $2}’:取第二列数值。

6 配置监控项脚本

[root@mysql001 scripts]# vim /var/lib/zabbix/percona/scripts/business_data.sh
#添加:#!/bin/bash
#定义一个本地用户登录mysql数据库的变量
case $1 in#case1: Lethbridge_AmountLethbridge_Amount)mysql -upmp -pPmp123456. -e "select sum(p.amount) amount from sakila.customer c, sakila.payment p, sakila.store s, sakila.address a, sakila.city ct where c.customer_id = p.customer_id and c.store_id = s.store_id and s.address_id = a.address_id and a.city_id = ct.city_id and ct.city = 'Lethbridge'\G" 2>/dev/null | awk 'NR==2 {print $2}';;#case2: number of actorsNumber_of_Actors)mysql -upmp -pPmp123456. -e "select count(*) from sakila.actor\G" 2>/dev/null | awk 'NR==2 {print $2}';;
esac

此脚本不仅可以添加mysql数据库的监控,os和oracle等其他服务的监控都是可以添加的,只需要往下添加case选项就可以。

7 重启zabbix代理

[root@mysql001 scripts]# systemctl restart zabbix_agentd
[root@mysql001 scripts]# systemctl status zabbix_agentd
● zabbix_agentd.service - SYSV: Zabbix Monitoring AgentLoaded: loaded (/etc/rc.d/init.d/zabbix_agentd; bad; vendor preset: disabled)Active: active (running) since Sun 2024-02-25 21:04:38 CST; 9s agoDocs: man:systemd-sysv-generator(8)Process: 12525 ExecStop=/etc/rc.d/init.d/zabbix_agentd stop (code=exited, status=0/SUCCESS)Process: 12539 ExecStart=/etc/rc.d/init.d/zabbix_agentd start (code=exited, status=0/SUCCESS)Main PID: 12548 (zabbix_agentd)CGroup: /system.slice/zabbix_agentd.service├─12548 /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf├─12549 /usr/local/zabbix/sbin/zabbix_agentd: collector [idle 1 sec]├─12550 /usr/local/zabbix/sbin/zabbix_agentd: listener #1 [waiting for connection]├─12551 /usr/local/zabbix/sbin/zabbix_agentd: listener #2 [waiting for connection]├─12552 /usr/local/zabbix/sbin/zabbix_agentd: listener #3 [waiting for connection]└─12553 /usr/local/zabbix/sbin/zabbix_agentd: active checks #1 [idle 1 sec]Feb 25 21:04:38 mysql001 systemd[1]: Starting SYSV: Zabbix Monitoring Agent...
Feb 25 21:04:38 mysql001 zabbix_agentd[12539]: Starting Zabbix Agent: [  OK  ]
Feb 25 21:04:38 mysql001 systemd[1]: Started SYSV: Zabbix Monitoring Agent.

只需要重启一次即可,以后脚本文件business_data.sh添加监控项不需要再重启zabbix代理。

8 测试

zabbix server的bin目录下执行zabbix_get测试:

[root@zabbix6 bin]# ./zabbix_get -s 192.168.131.99 -k business_data[Lethbridge_Amount]
36997.53

测试成功!!

9 创建主机

登录zabbix server Web页面,在配置->主机->创建主机下添加主机:

在这里插入图片描述

配置主机名、群组和zabbix代理端ip。

10 添加监控项

配置监控项名称、键值、数据类型和更新间隔。
在这里插入图片描述

注意:此处设置更新间隔为1s,如果配置的监控项目比较多,且数据库的压力比较大,可以根据实际环境适当调大更新间隔。

监控项报错,错误信息:

在这里插入图片描述
数据为浮点型,监控项配置了数值型。

修改监控项配置

在这里插入图片描述

10 结果呈现

在这里插入图片描述
至此,完成此监控项添加。

【关联文章】

(1)zabbix部署教程
(2)zabbix监控MySQL
(3)PMP自定义监控项
(4)zabbix监控业务数据

http://www.yayakq.cn/news/658642/

相关文章:

  • 网站整站开发视频教程服务质量好的外贸营销系统
  • 专业做网站的公司邢台专业做网站淘宝网页版评价管理在哪里
  • 个人网站做的类型网站做多长时间才会有流量
  • 扬州做公司网站短网址助手
  • 什么可以做冷门网站微信上怎么创建公众号
  • wordpress优酷视频天津如何做seo优化服务
  • 门头沟石家庄网站建设vscode网页设计教程
  • wordpress 旅游 主题网站首页缩略图 seo
  • 做网站红色和什么搭配好网站做成app客户端
  • 城子河网站建设外贸订单从哪里接
  • mysql数据库做网站360免费建站方法
  • 阿里云能做网站么360站长工具
  • 北安网站设计中企动力科技股份有限责任公司
  • 广州找工作哪个网站好上海 有哪些做网站的公司
  • 专门做旅游的网站有哪些兰州市做网站的公司有哪些
  • 做如美团式网站要多少钱想成为网站设计师要怎么做
  • 宁波网站建设优化排名宜昌建设银行网站
  • 网站搭建ai功能长春百度推广排名
  • ui设计网站设计与网页制作视频教程寻找设计师的网站
  • 海南哪家公司做网站做的好wordpress 软件公司
  • 哪家网站做推广好网站建设地域名
  • wordpress新网站遵义建设厅网站
  • 网站开发交易上海建设人才网证书查询
  • 我想建立一个网站不知道怎么做啊无锡网站程序
  • 企业网络营销策划与分析优化大师下载旧版本安装
  • 成都网站建设招标微信公众平台怎么注册
  • 坂田网站建设公司建网站多少钱 万户
  • 定制网站开发设计微信小程序推广平台
  • 丹东网站设计海珠网站建设方案
  • 上海网站搭建公司泰安公司