欢迎光临余姚市中国丧葬服务网
详情描述

一、自定义监控项配置

1. 基本概念

监控项(Item):采集数据的最小单位,定义了要监控什么、如何采集数据。

2. 创建自定义监控项的步骤

方法一:通过Web界面配置

进入配置页面

配置 → 主机 → 选择主机 → 监控项 → 创建监控项

填写关键参数

  • 名称:监控项描述名称
  • 键值:唯一的标识符(格式:key[参数]
  • 类型
    • Zabbix代理
    • Zabbix客户端(主动式)
    • 简单检查
    • 外部检查等
  • 信息类型:数值(整数/浮点数)、文本、日志等
  • 更新间隔:数据采集频率
  • 历史数据保留:历史数据存储时长
  • 趋势数据保留:聚合数据存储时长
方法二:使用用户自定义参数(UserParameter)

在Zabbix Agent配置文件(zabbix_agentd.conf)中添加:

# 格式:UserParameter=<key>,<command>
UserParameter=custom.process.count,ps aux | wc -l
UserParameter=custom.file.size[*],du -b $1 | awk '{print $1}'

重启Agent后,在Web界面使用键值:

  • custom.process.count
  • custom.file.size[/var/log/syslog]

3. 常见监控项类型示例

监控系统进程数
UserParameter=system.process.count,ps -e | wc -l
监控目录大小
UserParameter=directory.size[*],du -s $1 | awk '{print $1}'
监控服务状态
UserParameter=service.status[*],systemctl is-active $1
监控MySQL查询
UserParameter=mysql.connections,mysql -u<user> -p<password> -e "SHOW STATUS LIKE 'Threads_connected'" | grep Threads | awk '{print $2}'

二、触发器配置

1. 触发器表达式语法

{<host>:<key>.<function>(<parameter>)}<operator><constant>

2. 创建触发器步骤

方法一:Web界面配置

进入触发器配置

配置 → 主机 → 选择主机 → 触发器 → 创建触发器

关键配置项

  • 名称:触发器描述(可使用宏 {ITEM.VALUE}
  • 表达式:触发条件表达式
  • 严重性:信息、警告、一般严重、严重、灾难
  • 依赖关系:设置触发器依赖
  • 标签:用于事件关联和自动化

3. 触发器表达式示例

基础表达式
# CPU使用率超过90%持续5分钟
{host:system.cpu.util[,system].avg(5m)}>90

# 内存使用率超过80%
{host:vm.memory.size[pavailable].last()}<=20

# 磁盘空间不足(小于10%)
{host:vfs.fs.size[/,pfree].last()}<10

# 服务宕机
{host:net.tcp.service[http].last()}=0
复杂表达式
# 连续3次检查失败
{host:icmpping.count(,5m)}>3

# 平均值超过阈值
{host:system.cpu.load[percpu,avg1].avg(10m)}>5

# 多个条件组合
{host:system.cpu.util[,system].avg(5m)}>90 and {host:system.cpu.load[percpu,avg1].last()}>5

4. 函数使用示例

# 最近一次值
last()

# 平均值
avg(5m)       # 5分钟平均值
avg(1h)       # 1小时平均值
avg(#3)       # 最近3次平均值

# 最大值/最小值
max(10m)      # 10分钟内最大值
min(1h)       # 1小时内最小值

# 变化率
delta(1h)     # 1小时内的变化值
change()      # 当前值与前一值的差异

# 计数
count(5m)     # 5分钟内值的数量
count(10m,0)  # 10分钟内值为0的次数

# 时间函数
timeleft(1h,100,0)  # 按当前趋势达到阈值的时间预测

三、实战示例

示例1:监控Nginx状态

Agent配置

UserParameter=nginx.active.connections,curl -s http://localhost/nginx_status | grep "Active" | awk '{print $3}'
UserParameter=nginx.requests.total,curl -s http://localhost/nginx_status | grep "server accepts" | awk '{print $3}'

监控项键值

  • nginx.active.connections
  • nginx.requests.total

触发器

# Nginx活跃连接数超过1000
{host:nginx.active.connections.last()}>1000

# 5分钟内请求数增长异常(超过平时2倍)
{host:nginx.requests.total.avg(5m)} > {host:nginx.requests.total.avg(1h)} * 2

示例2:监控自定义应用日志

Agent配置

UserParameter=app.error.count,grep "ERROR" /var/log/app/app.log | wc -l

监控项配置

  • 类型:Zabbix代理
  • 键值:app.error.count
  • 更新间隔:60s
  • 信息类型:数值(无符号整数)

触发器配置

# 10分钟内错误数超过10次
{host:app.error.count.avg(10m)}>10

# 错误数突然增加(超过前一小时的3倍)
{host:app.error.count.avg(10m)} > {host:app.error.count.avg(1h)} * 3

四、高级技巧

1. 使用LLD(低级别发现)

# 自动发现挂载点
UserParameter=vfs.fs.discovery,lsblk -o MOUNTPOINT -n | grep -v "^$" | awk '{printf "{\"{#MOUNTPOINT}\":\"%s\"},\n", $1}' | sed '$s/,$//' | awk 'BEGIN{print "{\"data\":["}{print $0}END{print "]}"}'

2. 依赖触发器

防止告警风暴:

# 主触发器
{host:agent.ping.nodata(3m)}=1

# 依赖触发器(只在网络连通时触发)
{host:system.cpu.util[,system].avg(5m)}>90 and {host:agent.ping.last()}=1

3. 使用宏和标签

# 在触发器名称中使用宏
CPU使用率超过{$CPU.CRIT}%: {ITEM.VALUE}

# 使用标签分类
标签: application → nginx
标签: component → performance

五、故障排除

常见问题

监控项不采集数据

  • 检查Agent配置和日志
  • 测试命令是否正常执行
  • 检查防火墙/权限

触发器不触发

  • 检查表达式语法
  • 确认数据已正常采集
  • 检查触发器依赖关系

测试监控项

# 在Agent端测试
zabbix_get -s 127.0.0.1 -k "custom.process.count"

最佳实践

监控项键值命名规范:<类别>.<子类>.<指标> 合理设置更新间隔,避免性能影响 使用趋势数据减少数据库压力 为重要监控项设置依赖关系 定期审核和优化触发器阈值

需要更具体的监控场景配置,请提供详细需求。

相关帖子
口腔溃疡黑印怎么消除
口腔溃疡黑印怎么消除
从营养学角度看,长期偏食可能对身体造成哪些潜在影响?
从营养学角度看,长期偏食可能对身体造成哪些潜在影响?
非遗数字化如何促进乡村文化振兴与在地经济发展?
非遗数字化如何促进乡村文化振兴与在地经济发展?
甲流vs普通感冒:典型症状对照表,需要看懂区别
甲流vs普通感冒:典型症状对照表,需要看懂区别
恒河:不止宗教符号,恒河流域的农业文明与民俗文化深度探秘
恒河:不止宗教符号,恒河流域的农业文明与民俗文化深度探秘
南宁市java开源商城二次开发%网络推广,专业开发团队
南宁市java开源商城二次开发%网络推广,专业开发团队
遭遇工资拖欠,应该收集和保存哪些关键证据才能有效维护自身权益?
遭遇工资拖欠,应该收集和保存哪些关键证据才能有效维护自身权益?
对于成长期儿童,如何合理规划其糖分摄入以保障其健康发育需求?
对于成长期儿童,如何合理规划其糖分摄入以保障其健康发育需求?
2026年申领失业保险金需要满足哪些基本条件,具体办理流程是怎样的?
2026年申领失业保险金需要满足哪些基本条件,具体办理流程是怎样的?
合肥市殡葬服务价格|殡仪服务一条龙,白事灵堂服务
合肥市殡葬服务价格|殡仪服务一条龙,白事灵堂服务
焦作市办理殡葬服务-白事服务公司电话,价格公道
焦作市办理殡葬服务-白事服务公司电话,价格公道
2026年,出生医学证明的编号规则是否出现了新的变化或升级?
2026年,出生医学证明的编号规则是否出现了新的变化或升级?
为了家人安全,我们应如何检查并正确保养家中电动车电池?
为了家人安全,我们应如何检查并正确保养家中电动车电池?
综合计算工时制或不定时工作制的员工,是否同样享受未休年假工资待遇?
综合计算工时制或不定时工作制的员工,是否同样享受未休年假工资待遇?
安阳市一站式殡葬服务办理-冰棺出租服务,专业团队
安阳市一站式殡葬服务办理-冰棺出租服务,专业团队
当“订阅制”成为一种普遍模式,我们该如何审视自己的真实需求?
当“订阅制”成为一种普遍模式,我们该如何审视自己的真实需求?
达州市殡葬一条龙公司|丧葬服务办理,上门布置灵堂
达州市殡葬一条龙公司|丧葬服务办理,上门布置灵堂
信用消费产生纠纷时,除了联系银行,还有哪些高效便捷的调解渠道?
信用消费产生纠纷时,除了联系银行,还有哪些高效便捷的调解渠道?
2026年,推行薪酬透明化制度对企业人才招聘的实际影响是什么?
2026年,推行薪酬透明化制度对企业人才招聘的实际影响是什么?