12 PostgreSQL-Plugin

Übersicht

Die Konfigurationsdatei von Zabbix Agent 2 wird zur Konfiguration von Plugins verwendet. Diese Konfigurationsparameter von Zabbix Agent 2 werden für den Betrieb des PostgreSQL-Plugins unterstützt.

Es wird empfohlen, sie in einer eigenen Konfigurationsdatei anzugeben (z. B. postgresql.conf) und dann die Direktive Include zu verwenden, um diese Datei zur Konfiguration von Zabbix Agent 2 hinzuzufügen.

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

Beachten Sie:

  • Die Standardwerte entsprechen den Prozessstandardwerten, nicht den Werten 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 Anfang der Zeile unterstützt.

Optionen

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

Parameter

Parameter Pflicht Bereich Standard Beschreibung
Plugins.PostgreSQL.Default.CacheMode nein 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" in erster Linie nützlich ist, wenn die Umgebung vorbereitete Anweisungen nicht zulässt, z. B. beim Einsatz eines Connection-Poolers wie PgBouncer.
Plugins.PostgreSQL.CallTimeout nein 1-30 global timeout Maximale Wartezeit (in Sekunden), bis eine Anfrage abgeschlossen ist.
Plugins.PostgreSQL.CustomQueriesPath nein /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
Vollständiger Pfad zu einem Verzeichnis, das .sql-Dateien mit benutzerdefinierten Abfragen enthält.
Plugins.PostgreSQL.CustomQueriesEnabled nein false Wenn gesetzt, aktiviert dies die Ausführung des Datenpunkt-Schlüssels postgresql.custom.query. Wenn deaktiviert, werden keine Abfragen aus dem Verzeichnispfad für benutzerdefinierte Abfragen geladen.
Plugins.PostgreSQL.Default.Database nein Standarddatenbank für die Verbindung zu PostgreSQL; wird verwendet, wenn kein Wert in einem Datenpunkt-Schlüssel oder einer benannten Sitzung angegeben ist.
Plugins.PostgreSQL.Default.Password nein Standardpasswort für die Verbindung zu PostgreSQL; wird verwendet, wenn kein Wert in einem Datenpunkt-Schlüssel oder einer benannten Sitzung angegeben ist.
Plugins.PostgreSQL.Default.TLSCAFile nein
(ja, wenn Plugins.PostgreSQL.Default.TLSConnect auf verify_ca oder verify_full gesetzt ist)
Vollständiger Pfad zu einer Datei, die das/die Zertifikat(e) der obersten CA(s) für die Verifizierung von Peer-Zertifikaten bei verschlüsselter Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken enthält; wird verwendet, wenn kein Wert in einer benannten Sitzung angegeben ist.
Plugins.PostgreSQL.Default.TLSCertFile nein
(ja, wenn Plugins.PostgreSQL.Default.TLSConnect auf verify_ca oder verify_full gesetzt ist)
Vollständiger Pfad zu einer Datei, die das PostgreSQL-Zertifikat oder die Zertifikatskette für die verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken enthält; wird verwendet, wenn kein Wert in einer benannten Sitzung angegeben ist.
Plugins.PostgreSQL.Default.TLSConnect nein Verschlüsselungstyp für die Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken; wird verwendet, wenn kein Wert in einer benannten Sitzung angegeben ist.
Unterstützte Werte:
required - Verbindung über TLS als Transportmodus ohne Identitätsprüfung herstellen;
verify_ca - Verbindung über TLS herstellen und Zertifikat verifizieren;
verify_full - Verbindung über TLS herstellen, Zertifikat verifizieren und prüfen, dass die durch DBHost angegebene Datenbankidentität (CN) mit ihrem Zertifikat übereinstimmt.
Ein nicht definierter Verschlüsselungstyp bedeutet eine unverschlüsselte Verbindung.
Plugins.PostgreSQL.Default.TLSKeyFile nein
(ja, wenn Plugins.PostgreSQL.Default.TLSConnect auf verify_ca oder verify_full gesetzt ist)
Vollständiger Pfad zu einer Datei, die den privaten PostgreSQL-Schlüssel für die verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken enthält; wird verwendet, wenn kein Wert in einer benannten Sitzung angegeben ist.
Plugins.PostgreSQL.Default.Uri nein Standard-URI für die Verbindung zu PostgreSQL; wird verwendet, wenn kein Wert in einem Datenpunkt-Schlüssel oder einer benannten Sitzung angegeben ist.

Sollte keine eingebetteten Zugangsdaten enthalten (diese werden ignoriert).
Muss dem URI-Format entsprechen.
Unterstützte Schemata: tcp, unix.
Beispiele: tcp://127.0.0.1:5432
tcp://localhost
unix:/var/run/postgresql/.s.PGSQL.5432
Plugins.PostgreSQL.Default.User nein Standardbenutzername für die Verbindung zu PostgreSQL; wird verwendet, wenn kein Wert in einem Datenpunkt-Schlüssel oder einer benannten Sitzung angegeben ist.
Plugins.PostgreSQL.KeepAlive nein 60-900 300 Maximale Wartezeit (in Sekunden), bevor ungenutzte Plugin-Verbindungen geschlossen werden.
Plugins.PostgreSQL.Sessions.<SessionName>.CacheMode nein prepare Cache-Modus für die PostgreSQL-Verbindung.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.
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" in erster Linie nützlich ist, wenn die Umgebung vorbereitete Anweisungen nicht zulässt, z. B. beim Einsatz eines Connection-Poolers wie PgBouncer.
Plugins.PostgreSQL.Sessions.<SessionName>.Database nein Datenbank für die Sitzungsverbindung.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.
Plugins.PostgreSQL.Sessions.<SessionName>.Password nein Muss dem Passwortformat entsprechen. Passwort für die Sitzungsverbindung.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSCAFile nein
(ja, wenn Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect auf verify_ca oder verify_full gesetzt ist)
Vollständiger Pfad zu einer Datei, die das/die Zertifikat(e) der obersten CA(s) für die Verifizierung von Peer-Zertifikaten enthält.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile ja, wenn Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile angegeben ist Vollständiger Pfad zu einer Datei, die das PostgreSQL-Zertifikat oder die Zertifikatskette enthält.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect nein Verschlüsselungstyp für die PostgreSQL-Verbindung.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.

Unterstützte Werte:
required - Verbindung über TLS als Transportmodus ohne Identitätsprüfung herstellen;
verify_ca - Verbindung über TLS herstellen und Zertifikat verifizieren;
verify_full - Verbindung über TLS herstellen, Zertifikat verifizieren und prüfen, dass die durch DBHost angegebene Datenbankidentität (CN) mit ihrem Zertifikat übereinstimmt.
Ein nicht definierter Verschlüsselungstyp bedeutet eine unverschlüsselte Verbindung.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile ja, wenn Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile angegeben ist Vollständiger Pfad zu einer Datei, die den privaten PostgreSQL-Schlüssel enthält.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.
Plugins.PostgreSQL.Sessions.<SessionName>.Uri nein Verbindungszeichenfolge einer benannten Sitzung.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.

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

Siehe auch: