11 PostgreSQL 插件

概述

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

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

请注意:

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

选项

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

参数

参数 必填 范围 默认值 描述
Plugins.PostgreSQL.Default.CacheMode prepare PostgreSQL 连接的缓存模式。
支持的值:
prepare(默认) - 将在 PostgreSQL 服务器上创建预处理语句;
describe - 将使用匿名预处理语句来描述语句,而不创建服务器上的语句。
请注意,“describe”主要在环境不允许预处理语句时有用,例如在运行连接池器如 PgBouncer 时。
Plugins.PostgreSQL.CallTimeout 1-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(s) 证书的文件的完整路径名,用于 Zabbix agent 2 和监控数据库之间的对等证书验证;如果在命名会话中未指定值,则使用。
Plugins.PostgreSQL.Default.TLSCertFile
(是,如果 Plugins.PostgreSQL.Default.TLSConnect 设置为 verify_caverify_full)
包含用于加密通信的 PostgreSQL 证书或证书链的文件的完整路径名,用于 Zabbix agent 2 和监控数据库之间的通信;如果在命名会话中未指定值,则使用。
Plugins.PostgreSQL.Default.TLSConnect Zabbix agent 2 和监控数据库之间通信的加密类型;如果在命名会话中未指定值,则使用。
支持的值:
required - 使用 TLS 作为传输模式,无需身份检查;
verify_ca - 使用 TLS 并验证证书;
verify_full - 使用 TLS,验证证书并验证由 DBHost 指定的数据库身份(CN)与其证书匹配。
未定义的加密类型意味着未加密的连接。
Plugins.PostgreSQL.Default.TLSKeyFile
(是,如果 Plugins.PostgreSQL.Default.TLSConnect 设置为 verify_caverify_full)
包含用于加密通信的 PostgreSQL 私钥的文件的完整路径名,用于 Zabbix agent 2 和监控数据库之间的通信;如果在命名会话中未指定值,则使用。
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.KeepAlive 60-900 300 在未使用的插件连接被关闭前的最大等待时间(以秒为单位)。
Plugins.PostgreSQL.Sessions.<SessionName>.CacheMode prepare PostgreSQL 连接的缓存模式。
<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(s) 证书的文件的完整路径名,用于对等证书验证。
<SessionName> - 为在监控项键中使用定义会话名称。
Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile 是,如果 Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile 指定 包含 PostgreSQL 证书或证书链的文件的完整路径名。
<SessionName> - 为在监控项键中使用定义会话名称。
Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect PostgreSQL 连接的加密类型。
<SessionName> - 为在监控项键中使用定义会话名称。

支持的值:
required - 使用 TLS 作为传输模式,无需身份检查;
verify_ca - 使用 TLS 并验证证书;
verify_full - 使用 TLS,验证证书并验证由 DBHost 指定的数据库身份(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.Timeout 1-30 全局超时 请求执行超时(等待请求完成前关闭的持续时间,以秒为单位)。

另请参阅: