On this page
12 PostgreSQL 插件
概述
Zabbix agent 2 的配置文件用于配置插件。以下 Zabbix agent 2 配置参数支持用于运行 PostgreSQL 插件。
建议在其专用配置文件中指定这些参数(例如 postgresql.conf),然后使用 Include 指令将此文件添加到 Zabbix agent 2 配置中。
PostgreSQL 插件是一个可加载插件,可在 PostgreSQL plugin repository 中获取,并有完整说明。
请注意:
选项
| Parameter | Description |
|---|---|
| -V --version | 打印插件版本和许可证信息。 |
| -h --help | 打印帮助信息(简写)。 |
| -t, --test <item key> | 启动插件进行测试(忽略插件配置)。 |
参数
| Parameter | Mandatory | Range | Default | Description |
|---|---|---|---|---|
| Plugins.PostgreSQL.Default.CacheMode | 否 | prepare | PostgreSQL 连接的缓存模式。 支持的值: prepare(默认)- 在 PostgreSQL 服务器上创建预处理语句; describe - 使用匿名预处理语句来描述语句,而不在服务器上创建语句。 请注意,当环境不允许使用预处理语句时,例如运行 PgBouncer 这类连接池时,"describe" 主要适用。 |
|
| Plugins.PostgreSQL.CallTimeout | 否 | 1-30 | 全局超时 | 请求完成的最大等待时间(秒)。 |
| Plugins.PostgreSQL.CustomQueriesPath | 否 | Unix 系统为 /usr/local/share/zabbix/custom-queries/postgreSQLWindows 系统为 *:\Program Files\Zabbix Agent 2\Custom Queries\PostgreSQL,其中 * 是来自 ProgramFiles 环境变量的驱动器名称 |
包含带有自定义查询的 .sql 文件的目录的完整路径名。 |
|
| Plugins.PostgreSQL.CustomQueriesEnabled | 否 | false | 如果设置,则启用 postgresql.custom.query 监控项键的执行。如果禁用,则不会从自定义查询目录路径加载任何查询。 |
|
| Plugins.PostgreSQL.Default.Database | 否 | 用于连接 PostgreSQL 的默认数据库;如果在监控项键或命名会话中未指定值,则使用该值。 | ||
| Plugins.PostgreSQL.Default.Password | 否 | 用于连接 PostgreSQL 的默认密码;如果在监控项键或命名会话中未指定值,则使用该值。 | ||
| Plugins.PostgreSQL.Default.TLSCAFile | 否 (如果 Plugins.PostgreSQL.Default.TLSConnect 设置为 verify_ca 或 verify_full,则为是) |
包含顶级 CA 证书的文件的完整路径名,用于在 Zabbix agent 2 与被监控数据库之间的加密通信中验证对端证书;如果在命名会话中未指定值,则使用该值。 | ||
| Plugins.PostgreSQL.Default.TLSCertFile | 否 (如果 Plugins.PostgreSQL.Default.TLSConnect 设置为 verify_ca 或 verify_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_ca 或 verify_full,则为是) |
包含 PostgreSQL 私钥的文件的完整路径名,用于在 Zabbix agent 2 与被监控数据库之间的加密通信;如果在命名会话中未指定值,则使用该值。 | ||
| Plugins.PostgreSQL.Default.Uri | 否 | 用于连接 PostgreSQL 的默认 URI;如果在监控项键或命名会话中未指定值,则使用该值。 不应包含嵌入式凭据(它们将被忽略)。 必须符合 URI 格式。 支持的方案: tcp、unix。示例: tcp://127.0.0.1:5432tcp://localhostunix:/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 - 使用匿名预处理语句来描述语句,而不在服务器上创建语句。 请注意,当环境不允许使用预处理语句时,例如运行 PgBouncer 这类连接池时,"describe" 主要适用。 |
|
| Plugins.PostgreSQL.Sessions.<SessionName>.Database | 否 | 会话连接的数据库。 <SessionName> - 定义用于监控项键中的会话名称。 |
||
| Plugins.PostgreSQL.Sessions.<SessionName>.Password | 否 | 必须符合密码格式。 | 会话连接的密码。 <SessionName> - 定义用于监控项键中的会话名称。 |
|
| Plugins.PostgreSQL.Sessions.<SessionName>.TLSCAFile | 否 (如果 Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect 设置为 verify_ca 或 verify_full,则为是) |
包含顶级 CA 证书的文件的完整路径名,用于对端证书验证。 <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 格式。 支持的方案: tcp、unix。示例: tcp://127.0.0.1:5432tcp://localhostunix:/var/run/postgresql/.s.PGSQL.5432 |
||
| Plugins.PostgreSQL.Sessions.<SessionName>.User | 否 | 命名会话用户名。 <SessionName> - 定义用于监控项键中的会话名称。 |
||
| Plugins.PostgreSQL.System.Path | 是 | PostgreSQL 插件可执行文件的路径。 使用示例: Plugins.PostgreSQL.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-postgresql |
||
| Plugins.PostgreSQL.Timeout | 否 | 1-30 | 全局超时 | 请求执行超时(即在关闭请求之前等待请求完成的时长,单位为秒)。 |
另请参见:
- 通用 Zabbix agent 2 配置参数说明:Zabbix agent 2 (UNIX) / Zabbix agent 2 (Windows)
- 配置插件的说明