1 扩展 Zabbix agents

本教程提供逐步指导,说明如何通过使用user parameter来扩展Zabbix agent的功能。

步骤1

编写脚本或命令行以获取所需参数。

例如,我们可以编写以下命令来get MySQL服务器执行的queries总数:

mysqladmin -uroot status | cut -f4 -d":" | cut -f1 -d"S"

执行时,该命令将返回SQL queries的总数。

步骤 2

将命令添加到zabbix_agentd.conf中:

UserParameter=mysql.questions,mysqladmin -uroot status | cut -f4 -d":" | cut -f1 -d"S"

mysql.questions 是一个唯一标识符。它可以是任何有效的键标识符,例如 queries

使用 Zabbix agent 配合 "-t" flag 测试此参数(如果以root身份运行,但请注意当以守护进程方式启动时,agent 可能具有不同的权限):

zabbix_agentd -t mysql.questions

步骤3

通过运行以下命令从配置file重新加载用户参数:

zabbix_agentd -R userparameter_reload

您也可以重启agent来代替运行时控制命令.

使用zabbix_get工具测试参数.

步骤4

向受监控的主机添加新的监控项,键值为mysql.questions。该监控项的类型必须为Zabbix Agent或Zabbix Agent(主动式)。

请注意返回值的类型必须在Zabbix服务器上正确设置,否则Zabbix将不会接受这些值。