1 Zabbix agent 2

Zabbix agent 2 支持 UnixWindows 上 Zabbix agent 支持的所有监控项键。 本页提供仅可与 Zabbix agent 2 一起使用的附加监控项键的详细信息,并按其所属插件分组。

监控项键在此处列出时不包含参数和附加信息。 单击监控项键可查看完整详细信息。

监控项键 描述 插件
ceph.df.details 集群的数据使用情况以及在各个池之间的分布。 Ceph
(可加载)
ceph.osd.stats 聚合的以及各 OSD 的统计信息。
ceph.osd.discovery 已发现的 OSD 列表。
ceph.osd.dump OSD 的使用阈值和状态。
ceph.ping 测试是否可以建立到 Ceph 的连接。
ceph.pool.discovery 已发现的池列表。
ceph.status 集群的整体状态。
docker.container_info 容器的底层信息。 Docker
docker.container_stats 容器资源使用统计信息。
docker.containers 返回容器列表。
docker.containers.discovery 返回容器列表。用于低级别发现。
docker.data.usage 当前数据使用情况的信息。
docker.images 返回镜像列表。
docker.images.discovery 返回镜像列表。用于低级别发现。
docker.info 系统信息。
docker.ping 测试 Docker 守护进程是否存活。
ember.get 返回所需设备的结果。 Ember+
(可加载)
memcached.ping 测试连接是否存活。 Memcached
memcached.stats 获取 STATS 命令的输出。
mongodb.cfg.discovery 返回已发现的配置服务器列表。 MongoDB
(可加载)
mongodb.collection.stats 返回给定集合的各种存储统计信息。
mongodb.collections.discovery 返回已发现的集合列表。
mongodb.collections.usage 返回集合的使用统计信息。
mongodb.connpool.stats 返回有关当前数据库实例到分片集群或副本集其他成员的已打开出站连接的信息。
mongodb.db.stats 返回反映给定数据库系统状态的统计信息。
mongodb.db.discovery 返回已发现的数据库列表。
mongodb.jumbo_chunks.count 返回 jumbo chunk 的数量。
mongodb.oplog.stats 使用从 oplog 轮询的数据返回副本集状态。
mongodb.ping 测试连接是否存活。
mongodb.rs.config 返回副本集的当前配置。
mongodb.rs.status 从运行该方法的成员视角返回副本集状态。
mongodb.server.status 返回数据库状态。
mongodb.sh.discovery 返回集群中已发现的分片列表。
mongodb.version 返回数据库服务器版本。
mqtt.get 订阅所提供 broker 的特定主题或多个主题(支持通配符),并等待发布消息。 MQTT
mssql.availability.group.get 返回可用性组。 MSSQL
(可加载)
mssql.custom.query 返回自定义查询的结果。
mssql.db.get 返回所有可用的 MSSQL 数据库。
mssql.job.status.get 返回作业状态。
mssql.last.backup.get 返回所有数据库的上次备份时间。
mssql.local.db.get 返回参与 Always On 可用性组和副本(主或辅助)且位于已建立连接的服务器上的数据库。
mssql.mirroring.get 返回镜像信息。
mssql.nonlocal.db.get 返回参与 Always On 可用性组和副本(主或辅助)且位于其他服务器上的数据库(该数据库不在已建立连接的 SQL Server 实例本地)。
mssql.perfcounter.get 返回性能计数器。
mssql.ping 测试连接是否存活。
mssql.quorum.get 返回仲裁信息。
mssql.quorum.member.get 返回仲裁成员。
mssql.replica.get 返回副本。
mssql.version 返回 MSSQL 版本。
mysql.custom.query 返回自定义查询的结果。 MySQL
mysql.db.discovery 返回 MySQL 数据库列表。
mysql.db.size 数据库大小(字节)。
mysql.get_status_variables 全局状态变量的值。
mysql.ping 测试连接是否存活。
mysql.replication.discovery 返回 MySQL 复制列表。
mysql.replication.get_slave_status 复制状态。
mysql.version MySQL 版本。
net.dns.get 执行 DNS 查询并返回详细的 DNS 记录信息。 Network
nvml.device.count GPU 设备数量。 NVIDIA GPU
(可加载)
nvml.device.decoder.utilization GPU 设备解码器利用率。
nvml.device.ecc.mode GPU 设备 ECC 模式。
nvml.device.encoder.stats.get GPU 设备编码器统计信息。
nvml.device.encoder.utilization GPU 设备编码器利用率。
nvml.device.energy.consumption GPU 设备能耗。
nvml.device.errors.memory GPU 设备 ECC 内存错误信息。
nvml.device.errors.register GPU 设备 ECC 寄存器错误信息。
nvml.device.fan.speed.avg GPU 设备风扇平均转速。
nvml.device.get 已发现的 GPU 及其 UUID 和名称。
nvml.device.graphics.frequency GPU 设备图形时钟频率。
nvml.device.memory.bar1.get GPU 设备 BAR1 内存信息。
nvml.device.memory.fb.get GPU 设备帧缓冲内存信息。
nvml.device.memory.frequency GPU 设备内存时钟频率。
nvml.device.pci.utilization GPU 设备 PCI 利用率。
nvml.device.performance.state GPU 设备性能状态。
nvml.device.power.limit GPU 设备功率限制。
nvml.device.power.usage GPU 设备功耗。
nvml.device.serial GPU 设备序列号。
nvml.device.sm.frequency GPU 设备流式多处理器时钟频率。
nvml.device.temperature GPU 设备温度。
nvml.device.utilization GPU 设备利用率统计信息。
nvml.device.video.frequency GPU 设备视频时钟频率。
nvml.system.driver.version NVIDIA 驱动版本。
nvml.version NVML 库版本。
oracle.diskgroups.stats 返回自动存储管理(ASM)磁盘组统计信息。 Oracle
oracle.diskgroups.discovery 返回 ASM 磁盘组列表。
oracle.archive.info 归档日志统计信息。
oracle.cdb.info 容器数据库(CDB)信息。
oracle.custom.query 自定义查询的结果。
oracle.datafiles.stats 返回数据文件统计信息。
oracle.db.discovery 返回数据库列表。
oracle.fra.stats 返回快速恢复区(FRA)统计信息。
oracle.instance.info 实例统计信息。
oracle.pdb.info 可插拔数据库(PDB)信息。
oracle.pdb.discovery 返回 PDB 列表。
oracle.pga.stats 返回程序全局区(PGA)统计信息。
oracle.ping 测试是否可以建立到 Oracle 的连接。
oracle.proc.stats 返回进程统计信息。
oracle.redolog.info 来自控制文件的日志文件信息。
oracle.sga.stats 返回系统全局区(SGA)统计信息。
oracle.sessions.stats 返回会话统计信息。
oracle.sys.metrics 返回一组系统指标值。
oracle.sys.params 返回一组系统参数值。
oracle.ts.stats 返回表空间统计信息。
oracle.ts.discovery 返回表空间列表。
oracle.user.info 返回 Oracle 用户信息。
oracle.version 返回数据库服务器版本。
pgsql.autovacuum.count 自动清理工作进程数量。 PostgreSQL
(可加载)
pgsql.archive 有关归档文件的信息。
pgsql.bgwriter 数据库集群的检查点总数,按检查点类型细分。
pgsql.cache.hit PostgreSQL 缓冲区缓存命中率。
pgsql.connections 按类型返回连接数。
pgsql.custom.query 返回自定义查询的结果。
pgsql.db.age 数据库最旧 FrozenXID 的年龄。
pgsql.db.bloating_tables 每个数据库中的膨胀表数量。
pgsql.db.discovery PostgreSQL 数据库列表。
pgsql.db.size 数据库大小(字节)。
pgsql.dbstat 收集每个数据库的统计信息。
pgsql.dbstat.sum 集群中所有数据库的汇总数据。
pgsql.locks 有关每个数据库中已授予锁的信息。
pgsql.oldest.xid 最旧 XID 的年龄。
pgsql.ping 测试连接是否存活。
pgsql.queries 按执行时间统计的查询指标。
pgsql.replication.count 备用服务器数量。
pgsql.replication.process 每个发送进程的 flush lag、write lag 和 replay lag。
pgsql.replication.process.discovery 复制进程名称发现。
pgsql.replication.recovery_role 恢复状态。
pgsql.replication.status 复制状态。
pgsql.replication_lag.b 复制延迟(字节)。
pgsql.replication_lag.sec 复制延迟(秒)。
pgsql.uptime PostgreSQL 运行时间(毫秒)。
pgsql.version 返回 PostgreSQL 版本。
pgsql.wal.stat WAL 统计信息。
redis.config 获取与模式匹配的 Redis 实例配置参数。 Redis
redis.info 获取 INFO 命令的输出。
redis.ping 测试连接是否存活。
redis.slowlog.count 自 Redis 启动以来的慢日志条目数。
smart.attribute.discovery 返回 S.M.A.R.T. 设备属性列表。 S.M.A.R.T.
smart.disk.discovery 返回 S.M.A.R.T. 设备列表。
smart.disk.get 返回 S.M.A.R.T. 设备的所有可用属性。
systemd.unit.get 返回 systemd 单元的所有属性。 Systemd
systemd.unit.info Systemd 单元信息。
systemd.unit.discovery systemd 单元及其详细信息列表。
web.certificate.get 验证证书并返回证书详细信息。 Web certificates

监控项键值详情

不带尖括号的参数为必填参数。
带有尖括号 < > 标记的参数为可选参数。

ceph.df.details[connString,<user>,<apikey>]


集群的数据使用情况以及在各个池之间的分布。
返回值:JSON object

参数:

  • connString - URI 或会话名称;
  • user, apikey - 用于连接到 Ceph 的用户名和 API 密钥。
ceph.osd.stats[connString,<user>,<apikey>]


聚合统计信息和每个 OSD 的统计信息。
返回值:JSON object

参数:

  • connString - URI 或会话名称;
  • user, apikey - 用于连接 Ceph 的用户名和 API 密钥。
ceph.osd.discovery[connString,<user>,<apikey>]


已发现的 OSD 列表。 用于低级别发现
返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, apikey - 用于连接 Ceph 的用户名和 API 密钥。
ceph.osd.dump[connString,<user>,<apikey>]


OSD 的使用率阈值和状态。
返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, apikey - 用于连接 Ceph 的用户名和 API 密钥。
ceph.ping[connString,<user>,<apikey>]


测试是否可以建立到 Ceph 的连接。
返回值:0 - 连接已中断(如果出现任何错误,包括 AUTH 和配置问题);1 - 连接成功。

参数:

  • connString - URI 或会话名称;
  • user, apikey - 用于连接到 Ceph 的用户名和 API 密钥。
ceph.pool.discovery[connString,<user>,<apikey>]


已发现的池列表。 用于低级别发现
返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, apikey - 用于连接 Ceph 的用户名和 API 密钥。
ceph.status[connString,<user>,<apikey>]


集群的整体状态。
返回值:JSON object

参数:

  • connString - URI 或会话名称;
  • user, apikey - 用于连接 Ceph 的用户名和 API 密钥。
docker.container_info[<ID>,<info>]


容器的低级别信息。
返回值:ContainerInspect API 调用的输出,序列化为 JSON。

参数:

  • ID - 容器的 ID 或名称;
  • info - 返回的信息量。 支持的值:short(默认)或 full

必须将 Agent 2 用户('zabbix')添加到 'docker' group 中,以获得足够的权限。 否则,该检查将失败。

docker.container_stats[<ID>]


容器资源使用统计信息。
返回值:以 JSON 序列化的 ContainerStats API 调用输出以及 CPU 使用率百分比。

参数:

  • ID - 容器的 ID 或名称。

必须将 Agent 2 用户('zabbix')添加到 'docker' group 中,以获得足够的权限。 否则检查将失败。

docker.containers


容器列表。
返回值:ContainerList API 调用的输出,序列化为 JSON。

必须将 Agent 2 用户('zabbix')添加到 'docker' group 中,以获得足够的权限。 否则,该检查将失败。

docker.containers.discovery[<options>]


返回容器列表。 用于低级别发现
返回值:JSON object

参数:

  • options - 指定应发现所有容器还是仅发现正在运行的容器。 支持的值:true - 返回所有容器;false - 仅返回正在运行的容器(默认)。

Agent 2 用户('zabbix')必须添加到 'docker' group 中,以获得足够的权限。 否则,该检查将失败。

docker.data.usage


有关当前数据使用情况的信息。
返回值:以 JSON 序列化的 SystemDataUsage API 调用输出。

必须将 Agent 2 用户('zabbix')添加到 'docker' group 中,以获得足够的权限。 否则,该检查将失败。

docker.images


返回镜像列表。
返回值:ImageList API 调用序列化后的 JSON 输出。

必须将 Agent 2 用户('zabbix')添加到 'docker' group 中,以获得足够的权限。 否则检查将失败。

docker.images.discovery


返回镜像列表。 用于低级别发现
返回值:JSON 对象

必须将 Agent 2 用户('zabbix')添加到 'docker' 中,以获得足够的权限。 否则检查将失败。

docker.info


系统信息。
返回值:SystemInfo API 调用的输出,序列化为 JSON。

必须将 Agent 2 用户('zabbix')添加到 'docker' group 中,以获得足够的权限。 否则,该检查将失败。

docker.ping


测试 Docker 守护进程是否存活。
返回值:1 - 连接存活;0 - 连接已断开。

必须将 Agent 2 用户('zabbix')添加到 'docker' 中,以获得足够的权限。 否则,该检查将失败。

ember.get[<uri>,<path>]


返回所需设备的结果。
返回值:JSON 对象

参数:

  • uri - Ember+ 设备 URI。
    默认值:127.0.0.1:9998;
  • path - 设备的 OID 路径。
    默认为空,返回根集合数据。
memcached.ping[connString,<user>,<password>]

测试连接是否存活。

返回值:1 - 连接存活;0 - 连接断开(如果出现任何错误,包括 AUTH 和配置问题)。

参数:

  • connString - URI 或会话名称;
  • user, password - Memcached 登录凭据。
memcached.stats[connString,<user>,<password>,<type>]

获取 STATS 命令的输出。

返回值:JSON - 输出被序列化为 JSON。

参数:

  • connString - URI 或会话名称;
  • user, password - Memcached 登录凭据;
  • type - 要返回的统计类型:itemssizesslabssettings(默认为空,返回一般统计信息)。
mongodb.collection.stats[connString,<user>,<password>,<database>,collection]

返回给定集合的各种存储统计信息。

返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据;
  • database - 数据库名称(默认为 admin);
  • collection - 集合名称。
mongodb.cfg.discovery[connString,<user>,<password>]


返回已发现的配置服务器列表。
返回值:JSON object

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.collections.discovery[connString,<user>,<password>]


返回已发现集合的列表。 用于低级别发现
返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.collections.usage[connString,<user>,<password>]

返回集合的使用统计信息。

返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.connpool.stats[connString,<user>,<password>]


返回有关当前数据库实例到分片集群或副本集其他成员的已打开出站连接的信息。
返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.db.stats[connString,<user>,<password>,<database>]

返回反映给定数据库系统状态的统计信息。

返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据;
  • database - 数据库名称(默认为 admin)。
mongodb.db.discovery[connString,<user>,<password>]


返回已发现数据库的列表。 用于低级别发现
返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.jumbo_chunks.count[connString,<user>,<password>]

返回超大块的计数。

返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.oplog.stats[connString,<user>,<password>]

使用从 oplog 中获取的数据返回副本集的状态。

返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.ping[connString,<user>,<password>]

测试连接是否存活。

返回值:1 - 连接存活;0 - 连接断开(如果出现任何错误,包括 AUTH 和配置问题)。

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.rs.config[connString,<user>,<password>]

返回副本集的当前配置。

返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.rs.status[connString,<user>,<password>]

从运行方法的成员的角度返回副本集的状态。

返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.server.status[connString,<user>,<password>]

返回数据库状态。

返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.sh.discovery[connString,<user>,<password>]

返回集群中存在的已发现 shard 的列表。

返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mongodb.version[connString,<user>,<password>]

返回数据库服务器版本。

返回值:字符串

参数:

  • connString - URI 或会话名称;
  • user, password - MongoDB 登录凭据。
mqtt.get[<broker url>,topic,<user>,<password>]


订阅所提供 broker 的特定主题或多个主题(支持通配符),并等待发布消息。
返回值:取决于主题内容。 如果使用了通配符,则以 JSON 格式返回主题内容。

参数:

  • broker url - MQTT broker 的 URL,格式为 protocol://host:port,不包含查询参数(支持的协议:tcpsslws)。 如果未指定值,agent 将使用 tcp://localhost:1883。 如果省略协议或端口,将分别使用默认协议(tcp)或默认端口(1883);
  • topic - MQTT 主题(必填)。 支持通配符(+,#);
  • user, password - 身份验证凭据(如需要)。

注释:

  • 该监控项必须配置为主动检查(“Zabbix agent(主动)”监控项类型);
  • 可以通过将 TLS 加密证书保存到默认位置来使用它们(例如 Ubuntu 的 /etc/ssl/certs/ 目录)。 对于 TLS,请使用 tls:// 方案。
mssql.availability.group.get[URI,<user>,<password>]


返回可用性组。
返回值:JSON object

参数:

  • URI - MSSQL 服务器 URI(唯一支持的 schema 是 sqlserver://)。 嵌入的凭据将被忽略。 可以将实例名称指定为 URI 的一部分,例如:sqlserver://localhost/InstanceName(无端口)。 如果指定了端口,则实例名称将被忽略;
  • user, password - 用于发送到受保护 MSSQL 服务器的用户名、密码。

更多信息请参见 MSSQL plugin 的 readme。

mssql.custom.query[URI,<user>,<password>,queryName,<args...>]


返回自定义查询的结果。
返回值:JSON object

参数:

  • URI - MSSQL 服务器 URI(唯一支持的 schema 是 sqlserver://)。 嵌入的凭据将被忽略。 可以将实例名称指定为 URI 的一部分,例如:sqlserver://localhost/InstanceName(无端口)。 如果指定了端口,则实例名称将被忽略;
  • user, password - 要发送到受保护 MSSQL 服务器的用户名、密码;
  • queryName - 在 Plugins.MSSQL.CustomQueriesDir 中配置的自定义查询名称,不包含 .sql 扩展名;
  • args - 传递给查询的一个或多个以逗号分隔的参数。

更多信息请参见 MSSQL plugin readme。

mssql.db.get

返回所有可用的 MSSQL 数据库。

返回值:JSON 对象

有关更多信息,请参阅MSSQL 插件的自述文件。

mssql.job.status.get

返回作业的状态。

返回值:JSON 对象

有关更多信息,请参阅MSSQL 插件的自述文件。

mssql.last.backup.get

返回所有数据库的最后备份时间。

返回值:JSON 对象

有关更多信息,请参阅MSSQL 插件的自述文件。

mssql.local.db.get

返回参与 Always On 可用性组和副本(主要或次要)并位于建立连接的服务器上的数据库。

返回值:JSON 对象

有关更多信息,请参阅MSSQL 插件的自述文件。

mssql.mirroring.get

返回镜像信息。

返回值:JSON 对象

有关更多信息,请参阅MSSQL 插件的自述文件。

mssql.nonlocal.db.get

返回参与 Always On 可用性组和副本(主要或次要)并位于其他服务器上(数据库不是连接建立到的 SQL Server 实例的本地数据库)的数据库。

返回值:JSON 对象

有关更多信息,请参阅MSSQL 插件的自述文件。

mssql.perfcounter.get

返回性能计数器。

返回值:JSON 对象

有关更多信息,请参阅MSSQL 插件的自述文件。

mssql.ping


Ping 数据库。 测试连接是否已正确配置。
返回值:1 - 存活,0 - 不存活。

更多信息请参见 MSSQL plugin 的 readme。

mssql.quorum.get

返回仲裁信息。

返回值:JSON 对象

有关更多信息,请参阅MSSQL 插件的自述文件。

mssql.quorum.member.get

返回仲裁成员。

返回值:JSON 对象

有关更多信息,请参阅MSSQL 插件的自述文件。

mssql.replica.get

返回副本。

返回值:JSON 对象

有关更多信息,请参阅MSSQL 插件的自述文件。

mssql.version

返回 MSSQL 版本。

返回值:字符串

有关更多信息,请参阅MSSQL 插件的自述文件。

mysql.custom.query[connString,<user>,<password>,queryName,<args...>]


返回自定义查询的结果。
返回值:JSON 对象

参数:

  • connString - URI 或会话名称;
  • user, password - MySQL 登录凭据;
  • queryName - 自定义查询的名称,必须与不带扩展名的 SQL 文件名匹配;
  • args - 传递给查询的一个或多个以逗号分隔的参数。

更多信息请参见 MySQL plugin 的 readme 中的 Custom queries 部分。

mysql.db.discovery[connString,<user>,<password>]


返回 MySQL 数据库列表。
用于低级别发现
返回值:"show databases" SQL 查询的结果,采用 LLD JSON 格式。

参数:

  • connString - URI 或会话名称;
  • user, password - MySQL 登录凭据。
mysql.db.size[connString,<user>,<password>,<database name>]

数据库大小(字节)。

返回值:针对特定数据库的"select coalesce(sum(data_length + index_length),0) as size from information_schema.tables where table_schema=?" SQL查询的结果,以字节为单位。

参数:

  • connString - URI 或会话名称;
  • user, password - MySQL 登录凭据;
  • database name - 数据库名称。
mysql.get_status_variables[connString,<user>,<password>]

全局状态变量的值。

返回值:以 JSON 格式呈现的"show global status" SQL 查询的结果。

参数:

  • connString - URI 或会话名称;
  • user, password - MySQL 登录凭据。
mysql.ping[connString,<user>,<password>]

测试连接是否存活。

返回值:1 - 连接存活;0 - 连接中断(如果出现任何错误,包括 AUTH 和配置问题)。

参数:

  • connString - URI 或会话名称;
  • user, password - MySQL 登录凭据。
mysql.replication.discovery[connString,<user>,<password>]


返回 MySQL 复制列表。 用于低级别发现
返回值:SHOW SLAVE STATUSSHOW REPLICA STATUS SQL 查询的结果,采用 LLD JSON 格式。

参数:

  • connString - URI 或会话名称;
  • user, password - MySQL 登录凭据。
mysql.replication.get_slave_status[connString,<user>,<password>,<master host>]


复制状态。
返回值:SHOW SLAVE STATUSSHOW REPLICA STATUS SQL 查询的结果,采用 JSON 格式。

参数:

  • connString - URI 或会话名称;
  • user, password - MySQL 登录凭据;
  • master host - 复制主机的主机名。 如果未找到,则返回错误。 如果未指定此参数,则返回所有主机。
mysql.version[connString,<user>,<password>]

MySQL 版本。

返回值:字符串(包含 MySQL 实例的版本号)。

参数:

  • connString - URI 或会话名称;
  • user, password - MySQL 登录凭据。
net.dns.get[<ip>,name,<type>,<timeout>,<count>,<protocol>,"<flags>"]

执行 DNS 查询并返回详细的 DNS 记录信息。
此监控项是 net.dns.record Zabbix agent 监控项的扩展版本,支持更多记录类型和可自定义标志。
返回值:JSON object

参数:

  • ip - DNS 服务器的 IP 地址(留空则使用默认 DNS 服务器);
  • name - 要查询的 DNS 名称;
  • type - 要查询的记录类型(默认为 SOA);
  • timeout - 请求超时时间,单位为秒(默认为 1 秒);
  • count - 请求的重试次数(默认为 2);
  • protocol - 执行 DNS 查询时使用的协议:udp(默认)或 tcp
  • flags - 传递给查询的一个或多个以逗号分隔的参数。

说明:

  • type 的可能值包括:ANSMDMFCNAMESOAMBMGMRNULLPTRHINFOMINFOMXTXTRPAFSDBX25ISDNRTNSAPPTRSIGKEYPXGPOSAAAALOCNXTEIDNIMLOCSRVATMANAPTRKXCERTDNAMEOPTAPLDSSSHFPIPSECKEYRRSIGNSECDNSKEYDHCIDNSEC3NSEC3PARAMTLSASMIMEAHIPNINFORKEYTALINKCDSCDNSKEYOPENPGPKEYCSYNCZONEMDSVCBHTTPSSPFUINFOUIDGIDUNSPECNIDL32L64LPEUI48EUI64URICAAAVCAMTRELAY。 请注意,这些值只能使用大写;不支持小写或大小写混合的值。
  • 对于反向 DNS 查询(当 type 设置为 PTR 时),可以同时使用反转格式和非反转格式提供 DNS 名称(见下方示例)。 请注意,当请求 PTR 记录时,DNS 名称实际上是一个 IP 地址。
  • flags 的可能值包括:cdflagnocdflag(默认)、rdflag(默认)或 nordflagdnssecnodnssec(默认)、nsidnonsid(默认)、edns0(默认)或 noedns0aaflagnoaaflag(默认)、adflagnoadflag(默认)。 flags 中的 dnssecnsid 不能与 noedns0 一起使用,因为两者都需要 edns0。 请注意,这些值只能使用小写;不支持大写或大小写混合的值。
  • 不支持国际化域名,请改用 IDNA 编码名称。
  • 输出为一个对象,其中包含基于所提供参数的 DNS 记录信息(参见更多详细信息)。

示例:

net.dns.get[192.0.2.0,example.com,DNSKEY,3,3,tcp,"cdflag,rdflag,nsid"]

net.dns.get[,198.51.100.1,PTR,,,,"cdflag,rdflag,nsid"]
net.dns.get[,1.100.51.198.in-addr.arpa,PTR,,,,"cdflag,rdflag,nsid"]

net.dns.get[,2a00:1450:400f:800::200e,PTR,,,,"cdflag,rdflag,nsid"]
net.dns.get[,e.0.0.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.0.f.0.0.4.0.5.4.1.0.0.a.2.ip6.arpa,PTR,,,,"cdflag,rdflag,nsid"]
nvml.device.count


GPU 设备的数量。
返回值:整数

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.decoder.utilization[<deviceUUID>]


GPU 设备解码器利用率,以百分比表示。
返回值:Integer

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.ecc.mode[<deviceUUID>]


GPU 设备 ECC 模式信息(当前、待定)。
返回值:JSON

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.encoder.stats.get[<deviceUUID>]


GPU 设备编码器统计信息。
返回值:JSON

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.encoder.utilization[<deviceUUID>]


GPU 设备编码器利用率,以百分比表示。
返回值:Integer

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.energy.consumption[<deviceUUID>]


自驱动程序上次重新加载以来,GPU 设备的总能耗,单位为毫焦耳(mJ)。
返回值:整数

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.errors.memory[<deviceUUID>]


GPU 设备 ECC 内存错误信息(已纠正、未纠正)。
返回值:JSON

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.errors.register[<deviceUUID>]


GPU 设备 ECC 寄存器错误信息(已纠正、未纠正)。
返回值:JSON

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.fan.speed.avg[<deviceUUID>]


GPU 设备平均风扇转速,以最大转速的百分比表示。
返回值:整数

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.get


发现的 GPU 及其 UUID 和名称。
返回值:JSON

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.graphics.frequency[<deviceUUID>]


GPU 设备图形时钟频率,单位为 MHz。
返回值:整数

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.memory.fb.get[<deviceUUID>]


GPU 设备帧缓冲区内存统计信息(总量、保留、空闲、已使用)。
返回值:JSON

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 自述文件。

nvml.device.memory.bar1.get[<deviceUUID>]


GPU 设备 BAR1 内存统计信息(总量、空闲、已使用)。
返回值:JSON

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.memory.frequency[<deviceUUID>]


GPU 设备显存时钟频率,单位为 MHz。
返回值:整数

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.pci.utilization[<deviceUUID>]


GPU 设备 PCI 利用率(发送/接收吞吐量,单位为 KBps)。
返回值:JSON

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.performance.state[<deviceUUID>]


GPU 设备性能状态。
返回值:整数

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.power.limit[<deviceUUID>]


GPU 设备功率限制,单位为毫瓦。
返回值:整数

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.power.usage[<deviceUUID>]


GPU 设备当前功耗,单位为毫瓦。
返回值:Integer

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.serial[<deviceUUID>]


GPU 设备序列号。
返回值:String

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.sm.frequency[<deviceUUID>]


GPU 设备流式多处理器时钟频率,单位为 MHz。
返回值:Integer

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.temperature[<deviceUUID>]


GPU 设备温度,单位为摄氏度。
返回值:Integer

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.utilization[<deviceUUID>]


GPU 设备利用率统计信息(GPU/内存利用率,以百分比表示)。
返回值:JSON

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.device.video.frequency[<deviceUUID>]


GPU 设备视频时钟频率,单位为 MHz。
返回值:整数

参数:

  • deviceUUID - GPU 设备 UUID。

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.system.driver.version


NVIDIA 驱动程序版本。
返回值:String

更多信息请参见 NVIDIA GPU plugin 的 readme。

nvml.version


NVML 库版本。
返回值:String

更多信息请参见 NVIDIA GPU plugin 的 readme。

oracle.diskgroups.stats[connString,<user>,<password>,<service>,<diskgroup>]


返回 Automatic Storage Management (ASM) 磁盘组统计信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持按 user as sysdba 格式追加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称;
  • diskgroup - 要查询的 ASM 磁盘组名称。
oracle.diskgroups.discovery[connString,<user>,<password>,<service>]


返回 ASM 磁盘组列表。 用于低级别发现
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式附加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.archive.info[connString,<user>,<password>,<service>,<destination>]


归档日志统计信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果其包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式附加以下任一登录选项:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称;
  • destination - 要查询的目标名称。
oracle.cdb.info[connString,<user>,<password>,<service>,<database>]


容器数据库(CDB)信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果其包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果其以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式附加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称;
  • database - 要查询的数据库名称。
oracle.custom.query[connString,<user>,<password>,<service>,queryName,<args...>]


自定义查询的结果。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了此名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持按 user as sysdba 格式追加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称;
  • queryName - 自定义查询的名称,必须与不带扩展名的 SQL 文件名匹配;
  • args - 传递给查询的一个或多个以逗号分隔的参数。

注释:

  • 返回的数据会自动转换为 JSON。
  • 避免让查询直接返回 JSON,因为当插件再次尝试将其转换为 JSON 时,它会被破坏。
oracle.datafiles.stats[connString,<user>,<password>,<service>]


返回数据文件统计信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果其包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果其以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式附加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,且末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.db.discovery[connString,<user>,<password>,<service>]


返回数据库列表。 用于低级别发现
返回值:JSON 对象

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式附加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.fra.stats[connString,<user>,<password>,<service>]


返回快速恢复区(FRA)统计信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果其包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且仍将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果其以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式附加以下任一登录选项:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.instance.info[connString,<user>,<password>,<service>]


实例统计信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果其包含 schema(例如 "tcp://")、端口(例如 1521)或两者,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果其以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持按 user as sysdba 格式追加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.pdb.info[connString,<user>,<password>,<service>,<database>]


可插拔数据库(PDB)信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持按 user as sysdba 格式追加以下任一登录选项:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名;
  • database - 要查询的数据库名称。
oracle.pdb.discovery[connString,<user>,<password>,<service>]


返回 PDB 列表。 用于低级别发现
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式追加以下任一登录选项:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.pga.stats[connString,<user>,<password>,<service>]


返回 Program Global Area (PGA) 统计信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式追加以下任一登录选项:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.ping[connString,<user>,<password>,<service>]


测试是否可以建立到 Oracle 的连接。
返回值:1 - 连接成功;0 - 连接中断(如果出现任何错误,包括 AUTH 和配置问题)。

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式追加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。

示例:

oracle.ping[tcp://127.0.0.1:1521,ZABBIX_MON,zabbix,xe]
oracle.ping[localhost,ZABBIX_MON,zabbix,xe]
oracle.ping[zbx_tns_example,ZABBIX_MON,zabbix,xe]
oracle.ping["(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=xe)))",ZABBIX_MON,zabbix]
oracle.proc.stats[connString,<user>,<password>,<service>]


返回进程统计信息。
返回值:JSON 对象

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果其包含 schema(例如 "tcp://")、端口(例如 1521)或两者,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持按 user as sysdba 格式追加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.redolog.info[connString,<user>,<password>,<service>]


控制文件中的日志文件信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了此名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持按 user as sysdba 格式附加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,且末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.sga.stats[connString,<user>,<password>,<service>]


返回系统全局区(SGA)统计信息。
返回值:JSON 对象

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果其包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果其以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式附加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.sessions.stats[connString,<user>,<password>,<service>,<lockMaxTime>]


返回会话统计信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果其包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果其以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持按 user as sysdba 格式追加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名;
  • lockMaxTime - 将会话计为长时间锁定时允许的最大会话锁定持续时间,单位为秒。 默认值:600 秒。
oracle.sys.metrics[connString,<user>,<password>,<service>,<duration>]


返回一组系统指标值。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了此名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持按 user as sysdba 格式附加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称;
  • duration - 系统指标值的采集间隔(以秒为单位)。 可能的值:60 — 长周期(默认),15 — 短周期。
oracle.sys.params[connString,<user>,<password>,<service>]


返回一组系统参数值。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持按 user as sysdba 格式追加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,且末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.ts.stats[connString,<user>,<password>,<service>,<tablespace>,<type>,<conname>]


返回表空间统计信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持按 user as sysdba 格式追加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名;
  • tablespace - 要查询的表空间名称。 默认值(如果留空且设置了 type):
    • "TEMP"(如果 type 设置为 "TEMPORARY");
    • "USERS"(如果 type 设置为 "PERMANENT")。
  • type - 要查询的表空间类型。 默认值(如果设置了 tablespace):"PERMANENT"。
  • conname - 需要其信息的容器名称。

如果省略 tablespacetypeconname,则该监控项将返回所有匹配容器(包括 PDB 和 CDB)的表空间统计信息。

oracle.ts.discovery[connString,<user>,<password>,<service>]


返回表空间列表。 用于低级别发现
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式附加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,且末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
oracle.user.info[connString,<user>,<password>,<service>,<username>]


返回 Oracle 用户信息。
返回值:JSON object

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了该名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不会考虑 ResolveTNS 选项。
  • user - Oracle 用户名,支持以 user as sysdba 格式追加以下任一登录选项:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名;
  • username - 需要获取其信息的用户名。 不支持小写用户名。 默认值:当前用户。
oracle.version[connString,<user>,<password>,<service>]


返回数据库服务器版本。
返回值:String

参数:

  • connString - 可以是:
    • URI - 如果未找到具有给定名称的会话,且 Plugins.Oracle.ResolveTNS 设置为 false。 如果它包含 schema(例如 "tcp://")、端口(例如 1521)或两者都包含,则不会考虑 ResolveTNS 选项,并且无论如何都会将其视为 URI;
    • 会话名称 - 如果在插件配置文件中找到了此名称;
    • TNS 键 - 如果 ResolveTNS 选项设置为 true,且上述条件均不适用;
    • TNS 值 - 如果它以左括号 "(" 开头(忽略前导空格)。 在这种情况下,不考虑 ResolveTNS 选项。
      - user - Oracle 用户名,支持按 user as sysdba 格式附加以下登录选项之一:as sysdbaas sysoperas sysasmas sysbackupas sysdgas syskmas sysrac(登录选项不区分大小写,且末尾不得包含空格)。
  • password - Oracle 密码;
  • service - Oracle 服务名称。
pgsql.autovacuum.count[uri,<username>,<password>,<database name>]


autovacuum worker 的数量。
返回值:Integer

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.archive[uri,<username>,<password>,<database name>]


有关归档文件的信息。
返回值:JSON 对象

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.bgwriter[uri,<username>,<password>,<database name>]


数据库集群的检查点总数,按检查点类型细分。
返回值:JSON object

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中的 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.cache.hit[uri,<username>,<password>,<database name>]


PostgreSQL 缓冲区缓存命中率。
返回值:Float

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.connections[uri,<username>,<password>,<database name>]


返回按类型划分的连接数。
返回值:JSON object

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.custom.query[uri,<username>,<password>,queryName,<args...>]


返回自定义查询的结果。
返回值:JSON 对象

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • queryName - 自定义查询的名称,必须与 SQL 文件名(无扩展名)匹配;
  • args - 一个或多个逗号分隔的参数,用于传递给查询。
pgsql.db.age[uri,<username>,<password>,<database name>]


数据库中最旧 FrozenXID 的 age。
返回值:整数

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.db.bloating_tables[uri,<username>,<password>,<database name>]


每个数据库中膨胀表的数量。
返回值:Integer

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.db.discovery[uri,<username>,<password>,<database name>]


PostgreSQL 数据库列表。 用于低级别发现
返回值:JSON object

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.db.size[uri,<username>,<password>,<database name>]


数据库大小(以字节为单位)。
返回值:Integer

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.dbstat[uri,<username>,<password>,<database name>]


收集每个数据库的统计信息。 用于低级别发现
返回值:JSON object

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.dbstat.sum[uri,<username>,<password>,<database name>]


集群中所有数据库的汇总数据。
返回值:JSON object

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.locks[uri,<username>,<password>,<database name>]


有关每个数据库已授予锁的信息。 用于低级别发现
返回值:JSON object

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.oldest.xid[uri,<username>,<password>,<database name>]


最旧 XID 的年龄。
返回值:Integer

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.ping[uri,<username>,<password>,<database name>]


测试连接是否存活。
返回值:1 - 连接存活;0 - 连接已断开(如果出现任何错误,包括 AUTH 和配置问题)。

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.queries[uri,<username>,<password>,<database name>,time period]


按执行时间查询指标。
返回值:JSON object

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值);
  • time period - 用于统计慢查询数量的执行时间限制(必须为正整数)。
pgsql.replication.count[uri,<username>,<password>]


备库服务器的数量。
返回值:整数

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据。
pgsql.replication.process[uri,<username>,<password>]


每个发送进程的刷新延迟、写入延迟和重放延迟。
返回值:JSON 对象

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据。
pgsql.replication.process.discovery[uri,<username>,<password>]


复制进程名称发现。
返回值:JSON 对象

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据。
pgsql.replication.recovery_role[uri,<username>,<password>]


恢复状态。
返回值:0 - 主节点模式;1 - 正在进行恢复(备库模式)。

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据。
pgsql.replication.status[uri,<username>,<password>]


复制状态。
返回值:0 - 流复制已停止;1 - 流复制正常工作;2 - 主节点模式。

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据。
pgsql.replication_lag.b[uri,<username>,<password>]


复制延迟(以字节为单位)。
返回值:整数

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据。
pgsql.replication_lag.sec[uri,<username>,<password>]


复制延迟(以秒为单位)。
返回值:整数

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据。
pgsql.uptime[uri,<username>,<password>,<database name>]


PostgreSQL 运行时间(以毫秒为单位)。
返回值:Float

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.version[uri,<username>,<password>,<database name>]


返回 PostgreSQL 版本。
返回值:String

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
pgsql.wal.stat[uri,<username>,<password>,<database name>]


WAL 统计信息。
返回值:JSON 对象

参数:

  • uri - URI 或会话名称;
  • username, password - PostgreSQL 凭据;
  • database name - 数据库名称(如果省略,则使用 postgresql.conf 中 Plugins.PostgreSQL.Default.Database 的值)。
redis.config[connString,<password>,<pattern>]


获取与模式匹配的 Redis 实例配置参数。
返回值:JSON - 如果使用了 glob 风格模式;单个值 - 如果模式中不包含任何通配符字符。

参数:

  • connString - URI 或会话名称;
  • password - Redis 密码;
  • pattern - glob 风格模式(默认为 *)。

注释:

  • 安全警告:redis.config 会运行 Redis 的 CONFIG GET 命令,并且可能返回敏感配置参数(例如 requirepassmasterauth、与 TLS 相关的设置以及其他密钥信息)。 使用默认模式(*)或宽泛模式,可能会将这些密钥信息暴露给任何有权在 Zabbix 中查看监控项值的用户。
redis.info[connString,<password>,<section>]


获取 INFO 命令的输出。
返回值:JSON - 输出序列化为 JSON 格式。

参数:

  • connString - URI 或会话名称;
  • password - Redis 密码;
  • section - 信息的部分(默认为 default)。详细参考 INFO 命令
redis.ping[connString,<password>]


测试连接是否存活。
返回值:1 - 连接存活;0 - 连接中断(如果出现任何错误,包括认证和配置问题)。

参数:

  • connString - URI 或会话名称;
  • password - Redis 密码。
redis.slowlog.count[connString,<password>]


自 Redis 启动以来的慢日志条目数量。
返回值:整数

参数:

  • connString - URI 或会话名称;
  • password - Redis 密码。
smart.attribute.discovery


返回 S.M.A.R.T. 设备属性列表。
返回值:JSON object

注释:

  • 返回以下宏及其值:{#NAME}、{#DISKTYPE}、{#ID}、{#ATTRNAME}、{#THRESH};
  • 支持 HDD、SSD 和 NVME 驱动器类型。 驱动器可以单独使用,也可以组合在 RAID 中。 在 RAID 情况下,{#NAME} 将带有附加信息,例如:{"{#NAME}": "/dev/sda cciss,2"}。
smart.disk.discovery[<type>]


返回 S.M.A.R.T. 设备列表。
返回值:JSON object

参数:

  • type - 指定扫描磁盘时使用的值。 可能的值:idname(默认)。 id 在 Windows 上不受支持,如果选择将返回错误

说明:

  • 将返回以下宏及其值:{#NAME}、{#DISKTYPE}、{#MODEL}、{#SN}、{#PATH}、{#ATTRIBUTES}、{#RAIDTYPE};
  • 支持 HDD、SSD 和 NVME 驱动器类型。 如果驱动器不属于 RAID,则 {#RAIDTYPE} 为空。 在 RAID 情况下,{#NAME} 将带有附加内容,例如:{"{#NAME}": "/dev/sda cciss,2"}。
smart.disk.get[<path>,<raid type>]


返回 S.M.A.R.T. 设备的所有可用属性。
返回值:JSON object

参数:

  • path - 磁盘路径,{#PATH} 宏可用作其值;
  • raid_type - RAID 类型,{#RAID} 宏可用作其值

说明:

  • 支持 HDD、SSD 和 NVME 驱动器类型。 驱动器可以单独存在,也可以组合为 RAID;
  • 数据包括 smartctl 版本和调用参数,以及附加字段:
    disk_name - 保存 RAID 发现所需附加信息的名称,例如:{"disk_name": "/dev/sda cciss,2"}
    disk_type - 保存磁盘类型 HDD、SSD 或 NVME,例如:{"disk_type": "ssd"};
  • 如果未指定参数,监控项将返回所有磁盘的信息。
systemd.unit.get[unit name,<interface>]


返回一个systemd单元的所有属性。
返回值:JSON对象

参数:

  • unit name - 单元名称(您可以在监控项原型中使用{#UNIT.NAME}宏来发现名称);
  • interface - 单元接口类型,可能的取值:Unit(默认)、ServiceSocketDeviceMountAutomountSwapTargetPath

注释:

  • 此项仅在Linux平台上支持;
  • 对于Unit接口,LoadState、ActiveState和UnitFileState以文本和整数形式返回:"ActiveState":{"state":1,"text":"active"}
systemd.unit.info[unit name,<property>,<interface>]


systemd unit 信息。
返回值:String

参数:

  • unit name - unit 名称(您可能希望在监控项原型中使用 {#UNIT.NAME} 宏来发现名称);
  • property - unit 属性(例如:ActiveState(默认)、LoadState、Description);
  • interface - unit 接口类型(例如:Unit(默认)、Socket、Service)。

注释:

  • 此监控项仅在 Linux 平台上受支持;
  • 此监控项允许从特定类型的接口中检索特定属性,如 dbus API 中所述。

示例:

systemd.unit.info["{#UNIT.NAME}"] #收集已发现 systemd unit 的活动状态(active、reloading、inactive、failed、activating、deactivating)信息
systemd.unit.info["{#UNIT.NAME}",LoadState] #收集已发现 systemd unit 的加载状态信息
systemd.unit.info[mysqld.service,Id] #检索服务技术名称(mysqld.service)
systemd.unit.info[mysqld.service,Description] #检索服务描述(MySQL Server)
systemd.unit.info[mysqld.service,ActiveEnterTimestamp] #检索服务上次进入活动状态的时间(1562565036283903)
systemd.unit.info[dbus.socket,NConnections,Socket] #收集此 socket unit 的连接数
systemd.unit.discovery[<type>]


systemd 单元及其详细信息列表。 用于低级别发现
返回值:JSON object

参数:

  • type - 可能的值:allautomountdevicemountpathservice(默认)、socketswaptarget

此监控项仅在 Linux 平台上受支持。

web.certificate.get[hostname,<port>,<address>]


验证证书并返回证书详细信息。
返回值:JSON 对象

参数:

  • hostname - 可以是 IP 或 DNS。
    可以包含 URL 方案(仅支持 https)、路径(将被忽略)和端口。
    如果第一和第二个参数中都提供了端口,则它们的值必须一致。
    如果指定了 address(第 3 个参数),则 hostname 仅用于 SNI 和主机名验证;
  • port - 端口号(HTTPS 的默认值为 443);
  • address - 可以是 IP 或 DNS。 如果指定,将用于建立连接,而 hostname(第 1 个参数)将用于 SNI 和主机验证。 如果第 1 个参数是 IP 且第 3 个参数是 DNS,则第 1 个参数将用于建立连接,第 3 个参数将用于 SNI 和主机验证。

注释:

  • 如果主机配置中指定的目标不存在、不可用,或者 TLS 握手因除证书无效之外的任何错误而失败,则此监控项将变为不支持;
  • 当前不支持 AIA(Authority Information Access)X.509 扩展、CRL 和 OCSP(包括 OCSP stapling),以及证书透明度(Certificate Transparency);
  • JSON 响应字段:
    • x509:包含 X.509 证书的详细信息。
      • version:X.509 版本(例如 3)。
      • serial_number:证书的序列号。
      • signature_algorithm:用于签署证书的算法(例如 SHA256-RSA)。
      • issuer:证书的颁发者。
      • not_before:证书有效期的开始日期。
      • not_after:证书的到期日期。
      • subject:证书的主题。
      • public_key_algorithm:用于公钥的算法(例如 RSA)。
      • alternative_names:主题备用名称(如果存在),否则为 null
    • result:包含验证结果。
      • value:验证状态(请参见下方可能的值)。
      • message:详细验证消息(例如 "certificate verified successfully")。
    • sha1_fingerprint:证书的 SHA-1 指纹。
    • sha256_fingerprint:证书的 SHA-256 指纹。
  • $.result.value 字段表示证书验证结果。 可能的值包括:
    • valid - 证书有效且受信任。
    • valid-but-self-signed - 证书有效但为自签名,这意味着其主题与颁发者匹配。
    • invalid - 证书无效,原因可能包括已过期、主机名不正确或签名机构未知。

示例:

web.certificate.get[example.com,443]

JSON 响应:

{
  "x509": {
    "version": 3,
    "serial_number": "0ad893bafa68b0b7fb7a404f06ecaf9a",
    "signature_algorithm": "ECDSA-SHA384",
    "issuer": "CN=DigiCert Global G3 TLS ECC SHA384 2020 CA1,O=DigiCert Inc,C=US",
    "not_before": {
      "value": "Jan 15 00:00:00 2025 GMT",
      "timestamp": 1736899200
    },
    "not_after": {
      "value": "Jan 15 23:59:59 2026 GMT",
      "timestamp": 1768521599
    },
    "subject": "CN=*.example.com,O=Internet Corporation for Assigned Names and Numbers,L=Los Angeles,ST=California,C=US",
    "public_key_algorithm": "ECDSA",
    "alternative_names": [
      "*.example.com",
      "example.com"
    ]
  },
  "result": {
    "value": "valid",
    "message": "certificate verified successfully"
  },
  "sha1_fingerprint": "310db7af4b2bc9040c8344701aca08d0c69381e3",
  "sha256_fingerprint": "455943cf819425761d1f950263ebf54755d8d684c25535943976f488bc79d23b"
}