11 PostgreSQL 插件

概述

本节列出了 PostgreSQL Zabbix Agent 2 插件配置文件 (postgresql.conf) 中支持的参数。

PostgreSQL 插件是一个可加载插件,可在 PostgreSQL 插件仓库 中找到完整描述。

请注意:

  • 默认值反映的是进程默认值,而不是随附配置文件中的值;
  • Zabbix 只支持 UTF-8 编码且不带 BOM 的配置文件;
  • 以“#”开头的注释仅在行首时才被支持。

选项

参数描述
-V —version打印插件版本和许可证信息。
-h —help打印帮助信息(简写)。

参数

参数是否必需范围默认值描述
Plugins.PostgreSQL.Default.CacheModepreparePostgreSQL 连接的缓存模式。
支持的值:
prepare (默认) - 将在 PostgreSQL 服务器上创建准备好的语句;
describe - 将使用匿名准备好的语句来描述语句,而不在服务器上创建语句。
请注意,“describe” 主要在不允许准备语句的环境中使用,例如在运行连接池 PgBouncer 时。
Plugins.PostgreSQL.CallTimeout1-30全局超时请求完成的最大等待时间(秒)。
Plugins.PostgreSQL.CustomQueriesPath禁用包含自定义查询 .sql 文件的目录的完整路径名。
Plugins.PostgreSQL.Default.Database连接 PostgreSQL 的默认数据库;如果在监控项键或命名会话中未指定值,则使用该默认值。
Plugins.PostgreSQL.Default.Password连接 PostgreSQL 的默认密码;如果在监控项键或命名会话中未指定值,则使用该默认值。
Plugins.PostgreSQL.Default.TLSCAFile
(是,如果 Plugins.PostgreSQL.Default.TLSConnect 设置为 verify_caverify_full)
包含顶级 CA 证书的文件的完整路径名,用于加密通信的对等证书验证;如果在命名会话中未指定值,则使用该默认值。
Plugins.PostgreSQL.Default.TLSCertFile
(是,如果 Plugins.PostgreSQL.Default.TLSConnect 设置为 verify_caverify_full)
包含 PostgreSQL 证书或证书链的文件的完整路径名,用于加密通信;如果在命名会话中未指定值,则使用该默认值。
Plugins.PostgreSQL.Default.TLSConnectZabbix Agent 2 与受监控数据库之间通信的加密类型;如果在命名会话中未指定值,则使用该默认值。
支持的值:
required - 使用 TLS 连接作为传输模式而不进行身份验证检查;
verify_ca - 使用 TLS 连接并验证证书;
verify_full - 使用 TLS 连接,验证证书并验证数据库身份(CN)是否与其证书匹配。
未定义的加密类型表示不加密的连接。
Plugins.PostgreSQL.Default.TLSKeyFile
(是,如果 Plugins.PostgreSQL.Default.TLSConnect 设置为 verify_caverify_full)
包含 PostgreSQL 私钥的文件的完整路径名,用于加密通信;如果在命名会话中未指定值,则使用该默认值。
Plugins.PostgreSQL.Default.Uri连接 PostgreSQL 的默认 URI;如果在监控项键或命名会话中未指定值,则使用该默认值。

不应包含嵌入的凭据(将被忽略)。
必须符合 URI 格式。
支持的方案:tcpunix
示例:tcp://127.0.0.1:5432
tcp://localhost
unix:/var/run/postgresql/.s.PGSQL.5432
Plugins.PostgreSQL.Default.User连接 PostgreSQL 的默认用户名;如果在监控项键或命名会话中未指定值,则使用该默认值。
Plugins.PostgreSQL.KeepAlive60-900300在关闭未使用的插件连接之前的最大等待时间(秒)。
Plugins.PostgreSQL.Sessions.<SessionName>.CacheModepreparePostgreSQL 连接的缓存模式。
<SessionName> - 定义用于监控项键的会话名称。
支持的值:
prepare (默认) - 将在 PostgreSQL 服务器上创建准备好的语句;
describe - 将使用匿名准备好的语句来描述语句,而不在服务器上创建语句。
请注意,“describe” 主要在不允许准备语句的环境中使用,例如在运行连接池 PgBouncer 时。
Plugins.PostgreSQL.Sessions.<SessionName>.Database会话连接的数据库。
<SessionName> - 定义用于监控项键的会话名称。
Plugins.PostgreSQL.Sessions.<SessionName>.Password必须符合密码格式。会话连接的密码。
<SessionName> - 定义用于监控项键的会话名称。
Plugins.PostgreSQL.Sessions.<SessionName>.TLSCAFile
(是,如果 Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect 设置为 verify_caverify_full)
包含顶级 CA 证书的文件的完整路径名,用于对等证书验证。
<SessionName> - 定义用于监控项键的会话名称。
Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile是,如果 Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile 已指定包含 PostgreSQL 证书或证书链的文件的完整路径名。
<SessionName> - 定义用于监控项键的会话名称。
Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnectPostgreSQL 连接的加密类型。
<SessionName> - 定义用于监控项键的会话名称。

支持的值:
required - 使用 TLS 连接作为传输模式而不进行身份验证检查;
verify_ca - 使用 TLS 连接并验证证书;
verify_full - 使用 TLS 连接,验证证书并验证数据库身份(CN)是否与其证书匹配。
未定义的加密类型表示不加密的连接。
Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile是,如果 Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile 已指定包含 PostgreSQL 私钥的文件的完整路径名。
<SessionName> - 定义用于监控项键的会话名称。
Plugins.PostgreSQL.Sessions.<SessionName>.Uri命名会话的连接字符串。
<SessionName> - 定义用于监控项键的会话名称。

不应包含嵌入的凭据(将被忽略)。
必须符合 URI 格式。
支持的方案:tcpunix
示例:tcp://127.0.0.1:5432
tcp://localhost
unix:/var/run/postgresql/.s.PGSQL.5432
Plugins.PostgreSQL.Sessions.<SessionName>.User命名会话用户名。
<SessionName> - 定义用于监控项键的会话名称。
Plugins.PostgreSQL.System.Path外部插件可执行文件的路径。
Plugins.PostgreSQL.Timeout1-30全局超时请求执行超时(在关闭请求之前等待请求完成的时间)。

另见: