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

5 Zabbix agent (Windows)

概述

本节列出了Zabbix agent(Windows)配置文件(zabbix_agent.conf)中支持的参数。注意:

  • 默认值反映的是进程默认值,而不是出厂配置文件中的值;
  • Zabbix仅支持无 BOM标识的UTF-8编码配置文件;
  • 支持注释需以“#”作为行首。

参数

参数 必 项 范围 默认值 描述
Alias 置监控项键值的别名。它可以用一个更小更简单代替长而复杂的监控项键值。
可能存在多个 Alias参数。多个参数允许使用相同的 Alias
不同 Alias 可能引用相同的监控项键值。
别名可以在HostMetadataItem使用, 但不能在 HostnameItemPerfCounter参数中使用。

示例:

1. 从服务器检索页面文件使用量的百分比。
Alias=pg_usage:perf_counter[\Paging File(_Total)\% Usage]
现在速记keypg_usage可用于检索数据。

2. 通过默认和自定义参数获取CPU利用率。
Alias=cpu.load:system.cpu.load
Alias=cpu.load[*]:system.cpu.load[*]
这允许使用cpu.util键值获取具有默认参数的CPU利用率以及使用cpu.util[all,idle,avg15]以获取有关CPU利用率的特定数据。

3. 运行多个自动发现规则处理相同的发现监控项。
Alias=vfs.fs.discovery[*]:vfs.fs.discovery
现在可以使用vfs.fs.discovery为每个规则设置多个具有不同参数的发现规则,例如vfs.fs.discovery [foo]vfs.fs.discovery [bar]等。
AllowKey 许执行与模式匹配的那些监控项键值。键值匹配模式是支持通配字符“*”用于匹配任意数量的任何字符。
可以结合DenyKey定义多个值的匹配规则。根据其出现顺序对参数进行逐一处理。
从Zabbix 5.0.0开始支持此参数。
另请参阅: 检查agent限制
BufferSend -3600 冲区中的数据不要保留超过N秒。
BufferSize -65535 00 存缓冲区中的最大容量。 如果缓冲区已满,则agent会将所有收集的数据发送到Zabbix server或proxy。
DebugLevel -5 定调试级别:
0 - 有关启动和停止Zabbix进程的基本信息
1 - 关键信息
2 - 错误信息
3 - 警告
4 - 用于调试(产生大量信息)
5 - 扩展调试(产生更多信息)
DenyKey 绝执行与模式匹配的那些监控项键值。键值匹配模式是支持通配字符“*”用于匹配任意数量的任何字符。
可以结合AllowKey定义多个key的匹配规则。根据其出现顺序对参数进行逐一处理。
从Zabbix 5.0.0开始支持此参数。
另请参阅: 检查agent限制
EnableRemoteCommands 否允许来自Zabbix server的远程命令。从Zabbix 5.0.2开始,此参数已弃用, 请使用AllowKey=system.run[*]或DenyKey=system.run[*]来替代。
它是AllowKey/DenyKey参数的内部别名,具体取决于值:
0 - DenyKey=system.run[*]
1 - AllowKey=system.run[*]
HostInterface -255个字符 定义主 接口的可选参数。
主机接口用于主机自动注册过程。
如果值超过255个字符的限制,agent将发出错误并且不会启动。
如果未定义,将从HostInterfaceItem获取值。
自Zabbix 4.4.0起支持。
HostInterfaceItem 于定义用于获取主机接口监控项的可选参数。
主机接口用于主机自动注册过程。
在自动注册请求期间,如果指定项返回的值超过255个字符的限制,则agent将记录一条警告消息。
仅当未定义HostInterface时才使用此选项。
自Zabbix 4.4.0起支持。
HostMetadata -255个字符 定义主 元数据的可选参数。主机元数据仅在主机自动注册过程(主动模式agent)中使用。
如果未定义,将从HostMetadataItem获取该值。
如果指定的值超出限制或非UTF-8字符串,则agent将发出错误,并且不会启动。
在2.2.0及更高版本中支持此选项。
HostMetadataItem 于定义用于获取主机元数据的Zabbix agent监控项可选参数。仅当未定义HostMetadata时才使用此选项。
支持用户参数, 性能计数器和别名。不管EnableRemoteCommands 值如何,都支持system.run[]
HostMetadataItem值在每次自动注册尝试时都会检索,并且仅在主机自动注册过程(主动模式agent)上使用。
在自动注册请求期间,如果指定项返回的值超过255个字符的限制,则agent将记录一条警告消息。
该项目返回的值必须是UTF-8字符串,否则将被忽略。
在2.2.0及更高版本中支持此选项。
Hostname HostnameItem设置 唯一的 区分大小写的主机名。
对于主动检查是必需的,并且必须与服务器上配置的主机名匹配。
允许的字符: 字母, '.', ' ', '_' 和 '-'。
最大长度:128
HostnameItem ystem.hostname 于定义用于获取主机名的Zabbix agent监控项可选参数。仅当未定义主机名时才使用此选项。
不支持用户参数, 性能计数器或别名。不管EnableRemoteCommands 值如何,都支持system.run[]
在1.8.6及更高版本中支持此选项。
另请参阅更多详细描述
Include 可以在配置文件的目录中包括单个文件或所有文件。
要仅在指定目录中包含相关文件,模式匹配支持使用*通配符。 示例: /absolute/path/to/config/files/*.conf。从Zabbix 2.4.0开始支持此模式匹配。
请参阅特殊说明有关限制。
ListenIP .0.0.0 gent应监听使用逗号分隔的IP地址列表。
从Zabbix 1.8.3开始支持多个IP地址。
ListenPort 024-32767 0050 gent监听来自服务器的连接所使用的端口。
LogFile 是, 如果LogType设置为file, 否则为否 C:\zabbi _agentd.log agent日志文件 名称。
LogFileSize -1024 志文件的最大大小,以MB为单位。
0 - 禁用自动日志轮换。
注意:如果达到了日志文件大小限制并且文件轮换失败,则无论出于何种原因,现有的日志文件都会被截断并重新建。
LogType ile 志输出类型:
file - 将日志写入由LogFile参数指定的文件,
system - 写入日志Windows事件日志,
console - 将日志写入标准输出。
从Zabbix 3.0.0开始支持此参数。
LogRemoteCommands 否启用执行Shell命令记录为警告。
0 - 禁用
1 - 启用
MaxLinesPerSecond -1000 0 处理“log”,“logrt”和“eventlog”主动检查时,agent每秒发送给Zabbix server或proxy的最大新行数。
所提供的值将被“log”,“logrt”或“eventlog”监控项key中提供的参数“maxlines”所覆盖。
注意: Zabbix将处理比 MaxLinesPerSecond 中设置的新行多10倍的新行,以在日志项中查找所需的字符串。
PerfCounter 义一个新参数<parameter_name> ,其是系统性能计数器<perf_counter_path>在指定时间段<period>(以秒为单位)的平均值。
语法: <parameter_name>,"<perf_counter_path>",<period>
例如, 如果希望在最后一分钟接收平均每秒的处理器中断数,则可以定义一个新参数"interrupts",如下所示:
PerfCounter = interrupts,"\Processor(0)\Interrupts/sec",60
请注意性能计数器路径周围的双引号。
创建项目时,参数名称(interrupts)将用作监控项key。
每秒钟将抽取用于计算平均值的样本。
您可以运行"typeperf -qx"以获取Windows中所有可用性能计数器的列表。
PerfCounterEn 义一个新参数<<parameter_name> ,其是系统性能计数器<perf_counter_path>在指定时间段<period>(以秒为单位)的平均值。
语法: <parameter_name>,"<perf_counter_path>",<period>
与PerfCounter相比,perfcounter路径必须为英文。
仅在Windows Server 2008/Vista及更高版本上支持。
例如, 如果希望在最后一分钟接收平均每秒的处理器中断数,则可以定义一个新参数"interrupts",如下所示:
PerfCounterEn = interrupts,"\Processor(0)\Interrupts/sec",60
请注意性能计数器路径周围的双引号。
创建监控项时,参数名称(interrupts)将用作监控项键值。
每秒钟将抽取用于计算平均值的样本。
您可以通过查看以下注册表项找到英文字符串的列表: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009.
从Zabbix 4.0.13和4.2.7开始支持此参数。
RefreshActiveChecks 0-3600 20 动检查刷新列表的频率(以秒为单位)。
请注意,主动检查刷新失败后,将在60秒后尝试进行下一次刷新。
Server 是,如果未将StartAgents显式设置为0 逗号分隔的IP地址 表,可以选择使用CIDR表示法,或者Zabbix servers的主机名。
仅从此处列出的主机接受传入的连接。
如果启用了IPv6支持,则将 '127.0.0.1','::127.0.0.1', '::ffff:127.0.0.1' 同等对待,并且'::/0' 将允许任何IPv4或IPv6地址。
'0.0.0.0/0' 可用于允许任何IPv4地址。
注意,支持"IPv4兼容的IPv6地址" (0000::/96 前缀) ,但RFC4291已弃用。
示例: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.domain
允许使用空格。
ServerActive *) 动检查Zabbix server或Zabbix proxy的IP地址:端口(或主机名:端口)。
可以提供多个以逗号分隔的IP地址,以并行使用多个独立的Zabbix servers。允许有空格。
如果未指定端口,则使用默认端口。
如果指定了该主机的端口,则IPv6地址必须用方括号括起来。
如果未指定端口,则IPv6地址的方括号是可选的。
如果未指定此参数,则禁用主动检查。
SourceIP 于以下情形的源IP:
- 与Zabbix server或Zabbix proxy的传出连接;
-在执行某些监控项(web.page.get, net.tcp.port, 等等)时建立连接。
StartAgents -63 (*) 理被动检查的zabbix_agentd的预分支实例数。
如果设置为0,则禁用被动检查,agent将不监听任何TCP端口。
在版本1.8.5之前,上限为16。
Timeout -30 处理上花费的时间不超过该值(秒)。
TLSAccept 是, 如果定义了TLS证书或PSK参数(甚至用于未加密的连接), 否则为否 接受什么传入连接。用于被动检查。可以指定多个值, 逗号分隔:
unencrypted - 接受不加密的连接(默认)
psk - 接受带TLS和预共享密钥(PSK)
cert - 接受带TLS和证书的连接
从Zabbix3.0.0开始支持此参数。
TLSCAFile 含用于对等证书验证的顶级CA证书的文件的完整路径名,用于Zabbix组件之间的加密通信。
从Zabbix3.0.0开始支持此参数。
TLSCertFile 含agent证书或证书链的文件的完整路径名,用于与Zabbix组件进行加密通信。
从Zabbix3.0.0开始支持此参数。
TLSConnect 是, 如果定义了TLS证书或PSK参数(甚至用于未加密的连接), 否则为否 agent应如何连接到Zabbix server proxy。用于主动检查。只能指定一个值::
unencrypted - 接受不加密的连接(默认)
psk - 接受带TLS和预共享密钥(PSK)
cert - 接受带TLS和证书的连接
从Zabbix3.0.0开始支持此参数。
TLSCRLFile 含已撤销证书文件的完整路径名。此参数用于与Zabbix组件的加密通信。
从Zabbix3.0.0开始支持此参数。
TLSKeyFile 含用于与Zabbix组件进行加密通信的agent私钥文件的完整路径名。
从Zabbix3.0.0开始支持此参数。
TLSPSKFile 含用于与Zabbix组件进行加密通信的agent预共享密钥文件的完整路径名。
从Zabbix3.0.0开始支持此参数。
TLSPSKIdentity 共享密钥标识字符串,用于与 Zabbix server进行加密通信。
从Zabbix3.0.0开始支持此参数。
TLSServerCertIssuer 许的服务器(proxy)证书颁发者。
从Zabbix3.0.0开始支持此参数。
TLSServerCertSubject 许的服务器(proxy)证书主题。
从Zabbix3.0.0开始支持此参数。
UnsafeUserParameters -1 许将所有字符都通过参数传递给用户定义的参数。
0 - 不允许
1 - 允许
不允许使用以下字符:
\ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
另外,不允许使用换行符。
UserParameter 用户自定义的监控参数。可以有多个用户自定义参数。
格式: UserParameter=<key>,<shell command>
shell命令不得返回空字符串或仅返回EOL。
示例: UserParameter=system.test,echo 1

(*) ServerActive中列出的活动服务器数加上StartAgent中指定的用于被动检查的预分支实例数必须少于64。

另请参阅

  1. 从版本2.0.0开始,主动和被动检查的Zabbix agent配置差异