这是原厂英文文档的翻译页面. 欢迎帮助我们 完善文档.
2022 Zabbix中国峰会
2022 Zabbix中国峰会

1 创建监控项

概述

要在Zabbix管理页面创建一个监控项,请执行以下操作:

  • 进入到: 配置主机
  • 在主机所在的行单击 监控项
  • 点击屏幕右上角的创建监控项
  • 输入表单中监控项的参数

你也可以打开一个已经存在的监控项,点击克隆 按钮,然后重命名保存。

配置

监控项 选项卡包含了常规监控项属性:

所有必填字段都用红色星号标记。

参数 描
名称 项的名称。
注意,现在不建议使用位置宏($1,$2… $9-指代项键的第一个,第二个……第九个参数)。
例如:$1上的可用磁盘空间
如果监控项的键值是 "vfs.fs.size[/,free]",描述将自动更改为 "Free disk space on /"
类型 项类型。参考单个 监控项类型 章节。
键值 项键值(最多2048个字符)。
支持的监控项键值 能够在各个监控项类型中找到。
键值在单个主机中必须是唯一的。
如果键值类型是‘Zabbix 客户端’、‘Zabbix客户端(主动式)’、‘简单检查’或‘Zabbix整合’,则这个键值必须被 Zabbix agent或者 Zabbix server支持。
也可以查看: 标准的键值格式
主机接口 定义主 接口。编辑主机级别的监控项时,此字段可用。
信息类型 执行转 后存储在数据库中的数据类型(如果有)。
数字(无正负) - 64位无符号整数
数字(浮点数) - 64位浮点数
允许大约15位的精度,范围从-1.79E+308到1.79E+308(PostgreSQL 11和更早版本除外)。也支持用科学计数法接收值。例如:1.23E+7,1e308,1.1E-4。
字符 - 短文本数据
日志 - 具有可选日志相关属性(timestamp(时间戳),source(源),severity(严重性),logeventid(日志事件id))的长文本数据
文本 - 长文本数据。可参见 文本数据限制
单位 设置了单位,Zabbix在接收到数据后会进行处理,使其匹配设置的单位。
默认情况下,如果原始值超过1000,则除以1000再显示。例如,如果将单位设置为bps并接收到值881764,它将显示为881.76 Kbps。
JEDEC存储器标准用于处理B(字节),Bps(字节/秒)单位,它除以1024。因此,如果单位设置为B或Bps, Zabbix将显示:
1 为 1B/1Bps
1024 为 1KB/1KBps
1536 为 1.5KB/1.5KBps
如果使用以下与时间相关的单位,则使用特殊处理:
unixtime - 转换成“yyyy.mm.dd hh:mm:ss”。 想要正确转换,接收的值必须是数字(无正负)类型的信息。
uptime - 转换为 "hh:mm:ss" 或者 "N days, hh:mm:ss"
例如,如果你收到的值为881764(秒),则显示为“10天,04:56:04”
s - 转换成“yyy mmm ddd hhh mmm sss ms”; 参数被视为秒数。
例如,如果您收到的值为881764(秒),则显示为“10d 4h 56m”
只显示3个主要单位,如“1m 15d 5h”或“2h 4m 46s”。 如果没有显示天数,则仅显示两个级别 - “1m 5h”(不显示分钟,秒或毫秒)。 如果该值小于0.001,将被转换成“<1 ms”。
注意,如果单位带有前缀“!”,单元前缀/处理不会应用到监控项的值。请参阅 单位黑名单
更新间隔 每N秒 检索一次这个项目的新值。允许的最大更新间隔为86400秒(1天)。
支持时间后缀,例如 30s,1m,2h,1d。
支持用户宏
单个宏必须填充整个字段。不支持字段中的多个宏或文本混合的宏。 \\注意:仅当自定义间隔存在非零值时,更新间隔才能设置为“ 0”。如果设置为“ 0”,并且存在自定义间隔(灵活的或计划的)且具有非零值,则将在自定义间隔持续时间内轮询该项目。
注意 项目成为活动后或更新间隔更改后的第一个项目轮询可能发生在配置值之前。
注意 可以通过点击执行按钮立即轮询现有被动监控项的值。
自定义时间间隔 你可以创建用 检查监控项的自定义规则:
Flexible(灵活) - 为更新间隔(不同频率的间隔)创建一个特例
Scheduling(调度) - 创建自定义轮询时间表。
详细信息请查看 自定义时间间隔
间隔 字段支持时间单位 , 例如 30s, 1m, 2h, 1d.
支持用户宏
从Zabix 3.0.0开始支持计划。
注意: 不适用于Zabbix Agent的活动监控项。
历史数据保留时长 以下可供选择: <Do not keep history-不存储监控项历史数据。如果只有依赖项需要保留历史记录,则对主监控项很有用。
此设置不能被全局管家设置覆盖。
Storage period-指定将详细历史数据保留在数据库中的时长(1小时至25年)。过期数据将被housekeeper管家删除。按秒存储。支持时间后缀,例如2h,1d。支持用户宏
Administration(管理) → General(一般) → 管家 中可以覆盖该值。
如果存在全局设置,则显示绿色告警信息 ,例如被全局管家设置(1d)覆盖。
建议保留最小可能天数的历史数据,以减轻数据库存储压力。可以保留更长的趋势数据来替代历史数据。
历史数据与趋势数据的区别请参考 历史与趋势
趋势数据保留时长 以下可供选择: <Do not keep trends - 将不会存储趋势数据。
此设置不能被全局管家设置覆盖。
Storage period - 指定在数据库中保存聚合(每小时,最大,平均,计数)历史数据的时长(1天至25年)。管家将删除较旧的数据。按秒存储。支持时间后缀,例如2h,1d。支持用户宏
Administration(管理) → General(一般) → 管家中可以覆盖该值。
如果存在全局设置,将显示一条绿色的警告消息:,例如被全局管家设置(7d)覆盖。
注意: 保持趋势不适用于非数字数据 - 字符、日志和文本。
参考 历史与趋势
查看值 将值 射应用于此监控项。值映射不会改变收到的值,仅用于显示数据。
它适用于数字(无正负)、浮点数、字符类型。
例如, "Windows service states"。
日志时间格式 仅适用于* 日志类型的监控项。 支持的占位符:
*
y: 年 (1970-2038)
*
M: 月 (01-12)
*
d: 日期 (01-31)
*
h: 小时 (00-23)
*
m: 分钟 (00-59)
*
s**: 秒 (00-59)
如果留空,则不会解析时间戳。
例如,参考Zabbix Agent日志文件中以下行:“ 23480:20100328:154718.045 Zabbix agent started. Zabbix 1.8.2 (revision 11211).”
它以6个字符的PID作为开始,后跟日期、时间和其余部分。
该行的日志时间格式为“pppppp:yyyyMMdd:hhmmss”。请注意,“p”和“:”字符只是占位符,可以是“ yMdhms”以外的任何字符。
新的应用集 该监控项 所属的新应用集的名称。
应用集 将监 项链接到一个或多个现有应用集。
填入主机资产纪录栏位 你可以选中该监控项 将其填充到主机资产记录字段。如果主机启用了主机资产记录自动添加,这将会起作用。
描述 监控项描述。
已启用 选中 复选框以启用该监控项,以便对其进行处理。

监控项类型的特定字段在 对应页面会有描述。

当编辑主机级别上的现有模板级别的监控项时,多个字段是只读的。你可以使用表单标题中的链接并转到模板级别并在其中进行编辑,但请记住,模板级别上的更改将更改模板链接到的所有主机的该监控项。

监控项值预处理

预处理 选项卡允许为接收到的值定义预处理规则

测试

可以对监控项进行测试,如果配置正确,则可以返回实际值。甚至可以在保存项目之前进行测试。

可以对主机和模板的监控项、监控项原型和自动发现规则进行测试。agent(主动式)类型的监控项不能测试。

监控项测试可用于以下被动式监控项:

  • Zabbix agent
  • SNMP agent (v1, v2, v3)
  • IPMI agent
  • SSH checks
  • Telnet checks
  • JMX agent
  • Simple checks (except icmpping*, vmware.* items)
  • Zabbix internal
  • Zabbix aggregate
  • Calculated items
  • External checks
  • Database monitor
  • HTTP agent

要测试监控项,请单击监控项配置表单底部的 测试 按钮。请注意,对于无法测试的监控项(例如简单检查之外的其他主动检查), 测试 按钮将被禁用。

项目测试表单包含主机所需的参数(主机IP地址、端口、agent代理程序/无agent代理程序)。这些字段是上下文相关的:

  • 所需的参数值可能是已填充的,例如,这个监控项是主机的监控项,所需信息就会从agent主机的接口传递过来
  • 模板的监控项的相关参数需要手动填充
  • 当在特定的监控项类型中上下文不需要的字段会被禁用(例如,在可计算和zabbix整合类型的监控项中主机地址地段被禁用,在可计算类型的监控项中,proxy字段被禁用)

要测试监控项,点击 Get value(获取值)。如果成功检索到值,它会自动填充进 Value(值) 字段,将当前值(如果有的话)移动到 Previous value 字段,同时计算 prev.time 字段的值,即两个值(两次测试)之间的时间差,如果在检索值中检测到“\n\r”,则尝试检测EOL序列并切换到CRLF。

如果配置不正确,则返回错误提示,并描述可能的原因。

一个从主机接收成功的值必定也可以用于测试 预处理

表单按钮

表单底部的按钮允许执行多种操作。

添加监控项。 此按钮仅适用于新监控项。
更新监控项的属性。
根据当前监控项的属性创建另一个监控项。
立即执行新监控项值的检查。 仅支持 passive(被动) 检查(参见更多详细信息)。
注意当执行立即检查时,配置缓存不会更新,因此该值不会反映最新更改的监控项配置。
删除监控项历史和趋势数据。
删除监控项。
取消编辑监控项属性。

文本数据限制

文本数据限制取决于后端存储数据库。在将文本值存储到数据库之前,它们会被截断以匹配数据库值类型的限制:

数据库 信息
Character(字符) Log 日志) Text(文本
Mysql 255 characters 65536 bytes 65536 bytes
Postgresql 255 characters 65536 characters 65536 characters
Oracle 255 characters 65536 characters 65536 characters
IBM DB2 255 bytes 2048 bytes 2048 bytes

单位黑名单

默认情况下,为监控项指定单位会自动添加该单位的乘数前缀 - 例如,单位为“B”的传入值“2048”将显示为“2KB”。

但是,可以通过使用 ! 前缀来阻止任何单位转换,例如 !B。为了更好地说明在有黑名单和没有黑名单的情况下转换的方式,请参见以下值和单位示例:

1024 !B → 1024 B
       1024 B → 1 KB
       61 !s → 61 s
       61 s → 1m 1s
       0 !uptime → 0 uptime
       0 uptime → 00:00:00
       0 !! → 0 !
       0 ! → 0

在Zabbix 4.0之前,有一个硬编码的单位黑名单包括 ms, rpm, RPM, %。 这个黑名单已被弃用,因此将这些单位列入黑名单的正确方法是 !ms, !rpm, !RPM, !%

自定义脚本限制

可用的自定义脚本长度取决于使用的数据库:

数据库 // 符长度限制 // //字节限制 /
MySQL 65535 65535
Oracle Database 2048 4000
PostgreSQL 65535 not limited
SQLite (only Zabbix proxy) 65535 not limited

不支持的监控项

如果由于某种原因无法检索到值,则该监控项可能不受支持。但是该监控项仍会以固定时间间隔重新检索,可在管理页面中进行配置。

不支持的项目被报告为“不支持”状态。