自定义监控

本文详细介绍如何使用Zabbix监控自定义脚本的过程,包括创建脚本、修改配置、重启服务、手动测试、界面配置及验证步骤。适用于系统管理员和运维工程师。

1.创建脚本存放目录,写脚本,给执行权限

改脚本存放目录的属主属组为zabbix
[root@cwt-client ~]# cd /opt/scripts/
[root@cwt-client scripts]# cat check_process.sh 
#!/bin/bash

process=$(ps -ef | grep -Ev "grep|$0" |grep -c $1)

if [ $process -gt 0 ];then
    echo '0'
else
    echo '1'
fi
[root@cwt-client scripts]# chmod +x check_process.sh 
[root@cwt-client scripts]# chown -R zabbix.zabbix /opt/scripts
[root@cwt-client scripts]# bash check_process.sh mysql
0

2.改客户端配置文件agentd.conf

UnsafeUserParameters=1
UserParameter=<key_name>,<shell command>
[root@cwt-client ~]# vim /usr/local/etc/zabbix_agentd.conf
UnsafeUserParameters=1     #在配置文件里搜索UnsafeuserParameters
UserParameter=check_process[*],/bin/bash /opt/scripts/check_process.sh $1 #在文件最后面添加

3.重启zabbix_agent

[root@cwt-client ~]# pkill zabbix
[root@cwt-client ~]# zabbix_agentd 

4.在服务端手动测试

zabbix_get -s 客户端IP -k key_name
[root@zabbix ~]# zabbix_get -s 192.168.40.140 -k check_process[mysql]

5.配置网页界面,添加监控项以及触发器

#先创建监控项
在这里插入图片描述
在这里插入图片描述
#其他配置保持不变
在这里插入图片描述
#创建触发器
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.验证

#停止mysql服务
[root@cwt-client ~]# ss -antl
State      Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN     0      128            *:22                         *:*                  
LISTEN     0      100    127.0.0.1:25                         *:*                  
LISTEN     0      128            *:10050                      *:*                  
LISTEN     0      128           :::22                        :::*                  
LISTEN     0      100          ::1:25                        :::*                  
LISTEN     0      80            :::3306                      :::*                  
[root@cwt-client ~]# service mysqld stop
Shutting down MySQL.. SUCCESS! 

在这里插入图片描述

Prometheus自定义监控可通过不同场景和技术实现,以下是一些相关方法和指南: ### 基于Python HTTP服务的自定义监控 在微服务架构中,对于HTTP服务的监控,Prometheus可结合Python开发自定义Exporter实现全面观测。Prometheus采用Pull模型与灵活的指标体系,利用Python自定义Exporter能对HTTP服务性能、可用性及业务指标进行监控。具体而言,可通过Python代码开发Exporter,将HTTP服务相关指标暴露给Prometheus进行采集,从而实现对HTTP服务的自定义监控 [^2]。 ### 基于Spring Boot应用的自定义监控 在电商平台的订单服务这类Spring Boot应用场景中,为了精细化监控业务指标,如订单处理时长、并发提交量、下单失败率等,可在Spring Boot应用中自定义指标,并推送到Prometheus进行存储和告警。技术选型上,可利用Spring Boot Actuator提供的可扩展监控指标接口(其内置常见JVM、HTTP等指标),结合Actuator底层度量库Micrometer(支持多种监控后端),将自定义指标暴露给Prometheus这个流行的时序数据库进行抓取。同时,可使用Grafana进行可视化展示和告警管理,它支持PromQL语法 [^3]。 以下为一个简单的Python自定义Exporter示例代码: ```python from prometheus_client import start_http_server, Gauge import random import time # 自定义一个指标 custom_metric = Gauge('custom_http_requests', 'Custom metric for HTTP requests') def generate_metric(): while True: # 模拟生成指标值 value = random.randint(0, 100) custom_metric.set(value) time.sleep(1) if __name__ == '__main__': # 启动HTTP服务,暴露指标 start_http_server(8000) generate_metric() ``` ### 通用指南 要快速上手并构建完善的监控体系,需了解Prometheus的基本概念、安装方法、配置步骤及其与Grafana的集成。通过学习这些内容,能更好地实现自定义监控。例如,在配置Prometheus时,要明确如何配置数据采集任务,使其能够准确采集自定义指标;在与Grafana集成时,要掌握如何使用PromQL语法进行查询和展示,以实现对自定义监控指标的有效可视化 [^1]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值