7 Get

概览

Zabbix get 是一个命令行实用程序,可用于与 Zabbix agent通信并从agent获取所需信息。

该实用程序通常用于 Zabbix agent的故障排除。

另请参阅 zabbix_utils - 一个Python库,内置了像Zabbix get一样的功能。

运行 Zabbix get

UNIX下运行 Zabbix get 从agent获取处理器负载值的例子:

  1. cd bin
  2. ./zabbix_get -s 127.0.0.1 -p 10050 -k system.cpu.load[all,avg1]

运行 Zabbix get 以从网站捕获字符串的另一个示例:

  1. cd bin
  2. ./zabbix_get -s 192.168.1.1 -p 10050 -k "web.page.regexp[www.example.com,,,\"USA: ([a-zA-Z0-9.-]+)\",,\1]"

请注意,此处的监控项键包含一个空格,因此引号用于将监控项键标记到 shell。 引号不是监控项键的一部分; 它们将被 shell 修剪,不会传递给 Zabbix agent。

Zabbix get 接受以下命令行参数:

  1. -s --host <host name or IP> 指定主机的主机名或 IP 地址。
  2. -p --port <port number> 指定在主机上运行的agent程序的端口号(默认值: 10050)。
  3. -I --source-address <IP address> 指定源 IP 地址。
  4. -t --timeout <seconds> 指定超时。有效范围:1-30 秒(默认值:30 秒)。
  5. -k --key <item key> 指定监控项的键以检索其值
  6. -P --protocol <value> 指定和agent通信使用的协议. 取值:
  7. auto - 使用 JSON 协议连接,回退和重试使用 plaintext 协议(默认)
  8. json - 使用 JSON 协议连接
  9. plaintext - 使用 plaintext 协议连接,该协议仅发送监控项的键(6.4.x 和之前的版本)
  10. -h --help 显示帮助信息
  11. -V --version 显示版本号
  12. --tls-connect <value> 如何连接agent 取值:
  13. unencrypted - 未加密连接(默认)
  14. psk - 使用 TLS pre-shared 密钥连接
  15. cert - 使用 TLS 证书连接
  16. --tls-ca-file <CA file> 包含对等证书验证所需顶级CA证书的完整路径名。
  17. --tls-crl-file <CRL file> 包含已撤销证书的文件的完整路径名。
  18. --tls-agent-cert-issuer <cert issuer> 允许agent验证的证书颁发者。
  19. --tls-agent-cert-subject <cert subject> 允许agent验证的证书主题。
  20. --tls-cert-file <cert file> 包含证书或证书链的文件的完整路径名。
  21. --tls-key-file <key file> 包含私钥的文件的完整路径名。
  22. --tls-psk-identity <PSK-identity> 唯一的、区分大小写的字符串,用于标识pre-shared密钥。
  23. --tls-psk-file <PSK-file> 包含 pre-shared 密钥的文件的完整路径名。
  24. --tls-cipher13 <cipher-string> 适用于OpenSSL 1.1.1及以上版本的TLS 1.3加密字符串。覆盖默认的加密套件选择标准。如果OpenSSL版本低于1.1.1,则此选项不可用
  25. --tls-cipher <cipher-string> GnuTLS优先级字符串(仅适用于TLS 1.2及以上版本)或OpenSSL加密字符串(仅适用于TLS 1.2)。覆盖默认的加密套件选择标准。

另请参阅Zabbix get manpage 了解更多信息。

Zabbix get 在 Windows 运行类似: shell> zabbix_get.exe [options]