zabbix自定义key

用户参数(zabbix-agent)

  1. 介绍

自定义用户参数,也就是自定义key,有时,你可能想要运行一个代理检查,而不是Zabbix的预定义,你可以编写一个命令来检索需要的数据,并将其包含在代理配置文件("UserParameter"配置参数)的用户参数中。

  1. 语法格式

UserParameter=<key>,<command>

A user parameter also contains a key 一个用户参数也包含一个键

The key will be necessary when configuring an item 在配置监控项时,key是必需的

Note: Need to restart the agent  注意:需要重新启动agent 服务

  1. 使用方法

自己需要查找的参数的命令,获得使用的内存值

[root@zabbix-agent ~]# free | awk  '/^Mem/{print $3}'

修改配置文件,把查找参数的命令设为用户参数

[root@zabbix-agent ~]# cd /etc/zabbix/zabbix_agentd.d/

[root@zabbix-agent zabbix_agentd.d]# cat memory_usage.conf

UserParameter=memory.used,free | awk '/^Mem/{print $3}'

重启agent 服务

[root@zabbix-agent ~]# systemctl restart zabbix-agent

在zabbix-server端使用命令查询

[root@zabbix-server ~]# zabbix_get -s 192.168.182.131 -p 10050 -k "memory.used"

153828

在监控上,设置一个item监控项,使用这个用户参数

配置-->主机-->agent-->监控项-->创建监控项

  1. 用法升级

① 命令行查询参数的命令

② 修改配置文件,把查找参数的命令设为用户参数

[root@zabbix-agent zabbix_agentd.d]# ls

memory_usage.conf 

[root@zabbix-agent zabbix_agentd.d]# vim memory_usage.conf

UserParameter=memory.stats[*],cat /proc/meminfo | awk '/^$1/{print $$2}'

重启服务

[root@zabbix-agent zabbix_agentd.d]# systemctl restart zabbix-agent

注意:$$2:表示不是前边位置参数的$1,而是awk 的参数$2

注意:$1是调用前边的[*],位置参数,第一个参数

在zabbix-server 端,查询使用这个用户参数的key

传参:    文件  cat  /proc/meminfo   或者cat  /proc/cpuinfo

[root@zabbix-server ~]# zabbix_get -s 192.168.182.131 -p 10050 -k "memory.stats[MemTotal]"

995684

[root@zabbix-server ~]# zabbix_get -s 192.168.182.131 -p 10050 -k "memory.stats[MemFree]"

233732

[root@zabbix-server ~]# zabbix_get -s 192.168.182.131 -p 10050 -k "memory.stats[Buffers]"

2104

在监控上,设置一个item监控项,使用这个用户参数

① 添加Memory Total 的item监控项,使用memory.stats[MemTotal] 的用户参数

②添加Memory Free 的item监控项,使用memory.stats[MemFreel] 的用户参数

上面2个监控项的graph 图形

memory total

memory free

<think>好的,我现在需要帮助用户解决在Zabbix自定义消息体的配置问题。根据用户的问题,他们可能想要调整通知媒介或模板来定制消息格式。首先,我需要回忆Zabbix的相关知识,并结合提供的引用内容来构建答案。 首先,用户提到的自定义消息体应该涉及到通知媒介的设置。引用[3]提到了邮件报警配置,说明用户可能需要修改邮件通知的内容。引用[1]提到自定义模板可以导出为XML文件,这可能与消息模板的配置有关。而引用[2]讨论了自定义监控项的配置流程,这可能与触发器和动作的设置相关。 接下来,我需要分步骤说明如何配置消息体。首先,用户需要进入Zabbix的管理界面,找到通知媒介类型。这里可能需要编辑现有的媒介类型,比如邮件或钉钉,来修改消息模板。消息模板通常支持宏变量,比如{HOST.NAME},用户需要知道如何利用这些变量来构造消息内容。 然后,自定义模板部分可能需要用户创建或修改现有的模板,将自定义的消息格式应用到模板中。引用[1]提到可以定义需要显示的数据,这可能涉及到在模板中设置消息体的具体内容。同时,动作配置中的操作步骤需要定义消息发送的条件和内容,引用[2]中的添加动作步骤可能与此相关。 用户可能还需要测试配置,确保消息能够正确发送。引用[2]中的手动触发验证步骤可以作为参考,指导用户如何测试他们的配置是否正确。 此外,需要注意Zabbix的不同版本可能在界面和选项上有所不同,需要提醒用户根据实际版本调整步骤。同时,消息模板的语法和可用宏变量可能需要参考官方文档,用户可能需要查阅相关资料来正确使用这些变量。 最后,生成的相关问题需要覆盖用户可能感兴趣的扩展内容,比如使用其他通知方式、处理发送失败或优化消息模板等。这些问题可以帮助用户进一步探索Zabbix的高级功能,提升他们的监控系统配置能力。</think>### Zabbix自定义消息体配置教程 #### 一、通过通知媒介配置消息体 1. **进入通知媒介类型** - 路径:`管理 > 报警媒介类型 > 选择/创建媒介类型` - 支持邮件、钉钉、企业微信等,以邮件为例: ```bash 类型:Email 消息模板:自定义邮件标题和内容,例如: 标题:[故障] {TRIGGER.STATUS}: {HOST.NAME} 内容:告警主机:{HOST.NAME}\n触发条件:{TRIGGER.NAME}\n当前值:{ITEM.VALUE} ``` - 使用宏变量如`{ITEM.KEY}`、`{EVENT.DATE}`实现动态内容[^3] 2. **配置消息模板语法** - 支持HTML格式(需勾选“HTML”选项) ```html <b>告警级别</b>: {TRIGGER.SEVERITY}<br> <font color="red">故障时间</font>: {EVENT.TIME} ``` - 文本模式可直接用换行符`\n` #### 二、通过模板关联消息格式 1. **创建自定义模板** - 路径:`配置 > 模板 > 创建模板` - 在模板的`报警媒介`标签页中关联已配置的媒介类型[^1] - 示例:创建`Custom_Alert_Template`,绑定自定义邮件媒介 2. **配置动作消息模板** - 路径:`配置 > 动作 > 触发器动作 > 操作` - 编辑默认消息: ```plaintext 故障恢复通知: [已解决] {TRIGGER.NAME} 恢复时间: {EVENT.RECOVERY.TIME} ``` - 可设置不同事件类型(问题/恢复)的独立模板[^2] #### 三、高级配置技巧 1. **条件化消息内容** ```plaintext {if:TRIGGER.SEVERITY="Disaster"} 紧急!请立即处理! {else} 请注意检查 {end} ``` 2. **添加监控数据** ```plaintext CPU使用率历史数据: {ITEM.LASTVALUE1}(当前) {ITEM.LASTVALUE2}(5分钟前) ``` #### 四、验证配置 1. **手动触发测试** - 通过`zabbix_sender`命令发送测试数据 ```bash zabbix_sender -z 127.0.0.1 -s "Host01" -k cpu.load -o 5 ``` 2. **查看报警记录** - 路径:`报表 > 动作日志` 检查消息发送状态
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

'Demon'

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值