PostgreSQL-Plugin

Übersicht

Konfigurationsparameter ermöglichen die Anpassung des Verhaltens des PostgreSQL-Plugins.

Es wird empfohlen, sie in einer eigenen Konfigurationsdatei (z. B. postgresql.conf) anzugeben, statt in der Konfigurationsdatei von Agent 2. Verwenden Sie dann die Direktive Include, um diese Datei in die Konfiguration von Zabbix Agent 2 einzubinden.

Das PostgreSQL-Plugin ist ein ladbares Plugin und ist verfügbar sowie vollständig beschrieben im Repository des PostgreSQL-Plugins.

Alle Parameter sind optional, sofern nicht ausdrücklich angegeben ist, dass der Parameter obligatorisch ist.

Beachten Sie:

  • Die Standardwerte spiegeln die Prozess-Standardeinstellungen wider, nicht die Werte in den mitgelieferten Konfigurationsdateien.
  • Werte unterstützen Umgebungsvariablen;
  • Zabbix unterstützt Konfigurationsdateien nur in UTF-8-Kodierung ohne BOM.
  • Kommentare, die mit "#" beginnen, werden nur am Zeilenanfang unterstützt.

Parameter details

Plugins.PostgreSQL.CallTimeout

Set the maximum wait time in seconds for a request to be completed.

Default: global timeout
Range: 1-30

Plugins.PostgreSQL.CustomQueriesPath

Specify full pathname of the directory containing .sql files with custom queries.

Defaults:
/usr/local/share/zabbix/custom-queries/postgreSQL - for Unix systems,
*:\Program Files\Zabbix Agent 2\Custom Queries\PostgreSQL - for Windows systems (where * is the drive name from the ProgramFiles environment variable)

Example:

/etc/zabbix/oracle/sql
Plugins.PostgreSQL.CustomQueriesEnabled

Enable execution of the postgresql.custom.query item key.
If disabled, no queries will be loaded from the custom query directory path.

Default: false
Range: true/false

Plugins.PostgreSQL.Default.CacheMode

Specify the default cache mode for the PostgreSQL connection.

Default: prepare
Range:
prepare - create prepared statements on the PostgreSQL server;
describe - use the anonymous prepared statement to describe a statement without creating a statement on the server.

Note that describe is primarily useful when the environment does not allow prepared statements such as when running a connection pooler like PgBouncer.

Plugins.PostgreSQL.Default.Database

Specify the default database for connecting to PostgreSQL.
Used if no value is specified in an item key or named session.

Plugins.PostgreSQL.Default.Password

Specify the default password for connecting to PostgreSQL.
Used if no value is specified in an item key or named session.

Plugins.PostgreSQL.Default.TLSCAFile

Specify full pathname of the file containing the top-level CA(s) certificate for peer certificate verification for encrypted communications between Zabbix agent 2 and monitored databases.
Used if no value is specified in a named session.

Mandatory: yes, if Plugins.PostgreSQL.Default.TLSConnect is set to verify_ca or verify_full

Plugins.PostgreSQL.Default.TLSCertFile

Specify full pathname of the file containing the PostgreSQL certificate or certificate chain for encrypted communications between Zabbix agent 2 and monitored databases.
Used if no value is specified in a named session.

Mandatory: yes, if Plugins.PostgreSQL.Default.TLSKeyFile is specified

Plugins.PostgreSQL.Default.TLSConnect

Specify the default level of encryption for communications between Zabbix agent 2 and monitored databases.
Used if no value is specified in a named session.

Range:
required - connect using TLS as transport mode without identity checks;
verify_ca - connect using TLS and verify certificate;
verify_full - connect using TLS, verify certificate and verify that database identity (CN) specified by DBHost matches its certificate.

Undefined encryption type means unencrypted connection.

Plugins.PostgreSQL.Default.TLSKeyFile

Specify full pathname of the file containing the PostgreSQL private key for encrypted communications between Zabbix agent 2 and monitored databases.
Used if no value is specified in a named session.

Mandatory: yes, if Plugins.PostgreSQL.Default.TLSCertFile is specified

Plugins.PostgreSQL.Default.Uri

Specify the default URI for connecting to PostgreSQL.
Used if no value is specified in an item key or named session.
Embedded credentials will be ignored.
Must match the URI format.
Supported schemes: tcp, unix

Examples:

tcp://127.0.0.1:5432
tcp://localhost
unix:/var/run/postgresql/.s.PGSQL.5432
Plugins.PostgreSQL.Default.User

Specify the default username for connecting to PostgreSQL.
Used if no value is specified in an item key or named session.

Plugins.PostgreSQL.KeepAlive

Set the maximum time of waiting (in seconds) before unused plugin connections are closed.

Plugins.PostgreSQL.Sessions.<SessionName>.CacheMode

Specify the named session cache mode for the PostgreSQL connection.
<SessionName> - define name of a session for using in item keys.

Default: prepare
Range:
prepare - create prepared statements on the PostgreSQL server;
describe - use the anonymous prepared statement to describe a statement without creating a statement on the server.

Note that describe is primarily useful when the environment does not allow prepared statements such as when running a connection pooler like PgBouncer.

Plugins.PostgreSQL.Sessions.<SessionName>.Database

Specify the named session database for connecting to PostgreSQL.
<SessionName> - define name of a session for using in item keys.

Plugins.PostgreSQL.Sessions.<SessionName>.Password

Specify the named session password for connecting to PostgreSQL.
<SessionName> - define name of a session for using in item keys.
Must match the password format.

Plugins.PostgreSQL.Sessions.<SessionName>.TLSCAFile

Specify full pathname of the file containing the top-level CA(s) certificate for peer certificate verification for encrypted communications between Zabbix agent 2 and monitored databases.
<SessionName> - define name of a session for using in item keys.

Mandatory: yes, if Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect is set to verify_ca or verify_full

Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile

Specify full pathname of the file containing the PostgreSQL certificate or certificate chain for encrypted communications between Zabbix agent 2 and monitored databases.
<SessionName> - define name of a session for using in item keys.

Mandatory: yes, if Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile is specified

Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect

Specify the named session level of encryption for communications between Zabbix agent 2 and monitored databases.
<SessionName> - define name of a session for using in item keys.

Range:
required - connect using TLS as transport mode without identity checks;
verify_ca - connect using TLS and verify certificate;
verify_full - connect using TLS, verify certificate and verify that database identity (CN) specified by DBHost matches its certificate.

Undefined encryption type means unencrypted connection.

Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile

Specify full pathname of the file containing the PostgreSQL private key for encrypted communications between Zabbix agent 2 and monitored databases.
<SessionName> - define name of a session for using in item keys.

Mandatory: yes, if Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile is specified.

Plugins.PostgreSQL.Sessions.<SessionName>.Uri

Specify the named session URI for connecting to PostgreSQL.
<SessionName> - define name of a session for using in item keys.
Embedded credentials will be ignored.
Must match the URI format.
Supported schemes: tcp, unix

Examples:

tcp://127.0.0.1:5432
tcp://localhost
unix:/var/run/postgresql/.s.PGSQL.5432
Plugins.PostgreSQL.Sessions.<SessionName>.User

Specify the named session username for connecting to PostgreSQL.
<SessionName> - define name of a session for using in item keys.

Plugins.PostgreSQL.System.Path

Specify path to the PostgreSQL plugin executable.

Mandatory: yes

Example:

Plugins.PostgreSQL.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-postgresql
Plugins.PostgreSQL.Timeout

Set the request execution timeout (the duration, in seconds, to wait for a request to complete before shutting it down).

Default: global timeout
Range: 1-30

Optionen

Parameter Beschreibung
-V --version Gibt die Plugin-Version und Lizenzinformationen aus.
-h --help Gibt Hilfsinformationen aus (Kurzform).
-t, --test <item key> Startet das Plugin zum Testen (Plugin-Konfiguration wird ignoriert).

Parameter

Parameter Mandatory Range Default Description
Plugins.PostgreSQL.Default.CacheMode no prepare Cache-Modus für die PostgreSQL-Verbindung.
Unterstützte Werte:
prepare (Standard) - erstellt vorbereitete Anweisungen auf dem PostgreSQL-Server;
describe - verwendet die anonyme vorbereitete Anweisung, um eine Anweisung zu beschreiben, ohne eine Anweisung auf dem Server zu erstellen.
Beachten Sie, dass "describe" vor allem dann nützlich ist, wenn die Umgebung keine vorbereiteten Anweisungen zulässt, z. B. beim Einsatz eines Connection Poolers wie PgBouncer.
Plugins.PostgreSQL.CallTimeout no 1-30 global timeout Maximale Wartezeit in Sekunden, bis eine Anfrage abgeschlossen ist.
Plugins.PostgreSQL.CustomQueriesPath no /usr/local/share/zabbix/custom-queries/postgreSQL für Unix-Systeme

*:\Program Files\Zabbix Agent 2\Custom Queries\PostgreSQL für Windows-Systeme, wobei * der Laufwerksname aus der Umgebungsvariable ProgramFiles ist
Vollständiger Pfad zu einem Verzeichnis mit .sql-Dateien mit benutzerdefinierten Abfragen.
Plugins.PostgreSQL.CustomQueriesEnabled no false Wenn gesetzt, wird die Ausführung des Datenpunkt-Schlüssels postgresql.custom.query aktiviert. Wenn deaktiviert, werden keine Abfragen aus dem Verzeichnis für benutzerdefinierte Abfragen geladen.
Plugins.PostgreSQL.Default.Database no Standarddatenbank für die Verbindung zu PostgreSQL; wird verwendet, wenn im Datenpunkt-Schlüssel oder in einer benannten Sitzung kein Wert angegeben ist.
Plugins.PostgreSQL.Default.Password no Standardpasswort für die Verbindung zu PostgreSQL; wird verwendet, wenn im Datenpunkt-Schlüssel oder in einer benannten Sitzung kein Wert angegeben ist.
Plugins.PostgreSQL.Default.TLSCAFile no
(yes, if Plugins.PostgreSQL.Default.TLSConnect is set to verify_ca or verify_full)
Vollständiger Pfad zu einer Datei mit dem Zertifikat der obersten CA(s) zur Überprüfung des Peer-Zertifikats für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken; wird verwendet, wenn in einer benannten Sitzung kein Wert angegeben ist.
Plugins.PostgreSQL.Default.TLSCertFile no
(yes, if Plugins.PostgreSQL.Default.TLSConnect is set to verify_ca or verify_full)
Vollständiger Pfad zu einer Datei mit dem PostgreSQL-Zertifikat oder der Zertifikatskette für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken; wird verwendet, wenn in einer benannten Sitzung kein Wert angegeben ist.
Plugins.PostgreSQL.Default.TLSConnect no Verschlüsselungstyp für die Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken; wird verwendet, wenn in einer benannten Sitzung kein Wert angegeben ist.
Unterstützte Werte:
required - Verbindung über TLS als Transportmodus ohne Identitätsprüfung;
verify_ca - Verbindung über TLS und Zertifikat prüfen;
verify_full - Verbindung über TLS, Zertifikat prüfen und verifizieren, dass die von DBHost angegebene Datenbankidentität (CN) mit ihrem Zertifikat übereinstimmt.
Ein nicht definierter Verschlüsselungstyp bedeutet eine unverschlüsselte Verbindung.
Plugins.PostgreSQL.Default.TLSKeyFile no
(yes, if Plugins.PostgreSQL.Default.TLSConnect is set to verify_ca or verify_full)
Vollständiger Pfad zu einer Datei mit dem privaten PostgreSQL-Schlüssel für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken; wird verwendet, wenn in einer benannten Sitzung kein Wert angegeben ist.
Plugins.PostgreSQL.Default.Uri no Standard-URI für die Verbindung zu PostgreSQL; wird verwendet, wenn im Datenpunkt-Schlüssel oder in einer benannten Sitzung kein Wert angegeben ist.

Sollte keine eingebetteten Anmeldedaten enthalten (sie werden ignoriert).
Muss dem URI-Format entsprechen.
Unterstützte Schemas: tcp, unix.
Beispiele: tcp://127.0.0.1:5432
tcp://localhost
unix:/var/run/postgresql/.s.PGSQL.5432
Plugins.PostgreSQL.Default.User no Standardbenutzername für die Verbindung zu PostgreSQL; wird verwendet, wenn im Datenpunkt-Schlüssel oder in einer benannten Sitzung kein Wert angegeben ist.
Plugins.PostgreSQL.KeepAlive no 60-900 300 Maximale Wartezeit in Sekunden, bevor ungenutzte Plugin-Verbindungen geschlossen werden.
Plugins.PostgreSQL.Sessions.<SessionName>.CacheMode no prepare Cache-Modus für die PostgreSQL-Verbindung.
<SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird.
Unterstützte Werte:
prepare (Standard) - erstellt vorbereitete Anweisungen auf dem PostgreSQL-Server;
describe - verwendet die anonyme vorbereitete Anweisung, um eine Anweisung zu beschreiben, ohne eine Anweisung auf dem Server zu erstellen.
Beachten Sie, dass "describe" vor allem dann nützlich ist, wenn die Umgebung keine vorbereiteten Anweisungen zulässt, z. B. beim Einsatz eines Connection Poolers wie PgBouncer.
Plugins.PostgreSQL.Sessions.<SessionName>.Database no Datenbank für die Sitzungsverbindung.
<SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird.
Plugins.PostgreSQL.Sessions.<SessionName>.Password no Must match the password format. Passwort für die Sitzungsverbindung.
<SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSCAFile no
(yes, if Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect is set to verify_ca or verify_full)
Vollständiger Pfad zu einer Datei mit dem Zertifikat der obersten CA(s) zur Überprüfung des Peer-Zertifikats.
<SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile yes, if Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile is specified Vollständiger Pfad zu einer Datei mit dem PostgreSQL-Zertifikat oder der Zertifikatskette.
<SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect no Verschlüsselungstyp für die PostgreSQL-Verbindung.
<SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird.

Unterstützte Werte:
required - Verbindung über TLS als Transportmodus ohne Identitätsprüfung;
verify_ca - Verbindung über TLS und Zertifikat prüfen;
verify_full - Verbindung über TLS, Zertifikat prüfen und verifizieren, dass die von DBHost angegebene Datenbankidentität (CN) mit ihrem Zertifikat übereinstimmt.
Ein nicht definierter Verschlüsselungstyp bedeutet eine unverschlüsselte Verbindung.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile yes, if Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile is specified Vollständiger Pfad zu einer Datei mit dem privaten PostgreSQL-Schlüssel.
<SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird.
Plugins.PostgreSQL.Sessions.<SessionName>.Uri no Verbindungszeichenfolge einer benannten Sitzung.
<SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird.

Sollte keine eingebetteten Anmeldedaten enthalten (sie werden ignoriert).
Muss dem URI-Format entsprechen.
Unterstützte Schemas: tcp, unix.
Beispiele: tcp://127.0.0.1:5432
tcp://localhost
unix:/var/run/postgresql/.s.PGSQL.5432
Plugins.PostgreSQL.Sessions.<SessionName>.User no Benutzername der benannten Sitzung.
<SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird.
Plugins.PostgreSQL.System.Path yes Pfad zur ausführbaren PostgreSQL-Plugin-Datei.
Beispiel: Plugins.PostgreSQL.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-postgresql
Plugins.PostgreSQL.Timeout no 1-30 global timeout Zeitlimit für die Ausführung einer Anfrage (die Dauer in Sekunden, die auf den Abschluss einer Anfrage gewartet wird, bevor sie beendet wird).

Siehe auch: