Parameter für die Anmeldung in SQL - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Parameter für die Anmeldung in SQL

Sie können das Logging-Verhalten für Ihren für die SQL Postgre-DB-Instance anpassen, indem Sie verschiedene Parameter ändern. In der folgenden Tabelle finden Sie die Parameter, die beeinflussen, wie lange die Protokolle gespeichert werden, wann das Protokoll rotiert werden soll und ob das Protokoll als Format CSV (durch Kommas getrennte Werte) ausgegeben werden soll. Neben anderen Einstellungen finden Sie auch die TextausgabeSTDERR, an die gesendet wurde. Um die Einstellungen für die Parameter zu ändern, die geändert werden können, verwenden Sie eine benutzerdefinierte für Ihren . RDSfür eine Postgre-InstanzSQL. Weitere Informationen finden Sie unter DB-Parametergruppen für Amazon RDS Amazon. Wie in der Tabelle angegeben, kann der Wert log_line_prefix nicht geändert werden.

Parameter Standard Beschreibung

log_destination

stderr

Legt das Ausgabeformat für das Protokoll fest. Die Standardeinstellung iststderr, aber Sie können auch einen durch Kommas getrennten Wert (CSV) angeben, indem Sie ihn csvlog zur Einstellung hinzufügen. Weitere Informationen finden Sie unter Festlegen des Protokollziels (stderr, csvlog)

log_filename

postgresql.log.%Y-%m-%d-%H

Gibt das Muster für den Namen der Protokolldatei an. Zusätzlich zur Standardeinstellung unterstützt dieser Parameter postgresql.log.%Y-%m-%d für das Dateinamenmuster.

log_line_prefix

%t:%r:%u@%d:[%p]:

Definiert das Präfix für jede Protokollzeile, die in stderr geschrieben wird, um die Uhrzeit (%t), den Remote-Host (%r), den Benutzer (%u), die Datenbank (%d) und die Prozess-ID (%p) anzugeben. Sie können diesen Parameter nicht ändern.

log_rotation_age

60

Minuten, nach denen die Protokolldatei automatisch rotiert wird. Sie können diesen Wert im Bereich von 1 bis 1440 Minuten ändern. Weitere Informationen finden Sie unter Festlegen der Rotation der Protokolldatei.

log_rotation_size

Die Größe (kB), bei der das Protokoll automatisch rotiert wird. Standardmäßig wird dieser Parameter nicht verwendet, da die Protokolle auf der Grundlage des log_rotation_age Parameters rotiert werden. Weitere Informationen hierzu finden Sie unter Festlegen der Rotation der Protokolldatei.

rds.log_retention_period

4320

SQLPostgre-Protokolle, die älter als die angegebene Anzahl von Minuten sind, werden gelöscht. Mit dem Standardwert von 4.320 Minuten werden Protokolldateien nach 3 Tagen gelöscht. Weitere Informationen finden Sie unter Festlegen des Aufbewahrungszeitraums für Protokolle.

Anwendungsprobleme können Sie identifizieren, indem Sie im Protokoll nach Abfragefehlern, Anmeldefehlern, Deadlocks und schwerwiegenden Serverfehlern suchen. Nehmen wir beispielsweise an, Sie haben eine Legacy-Anwendung von Oracle nach Amazon RDS Postgre konvertiertSQL, aber nicht alle Abfragen wurden korrekt konvertiert. Diese falsch formatierten Abfragen generieren Fehlermeldungen in den Protokollen, mit denen Sie Probleme identifizieren können. Weitere Informationen zur Protokollierung von Abfragen finden Sie unter Aktivieren der Abfrageprotokollierung für Ihren .

In den folgenden Themen finden Sie Informationen darüber, wie Sie verschiedene Parameter festlegen, die die grundlegenden Details für Ihre Postgre-Protokolle steuern. SQL

Festlegen des Aufbewahrungszeitraums für Protokolle

Der rds.log_retention_period Parameter gibt an, wie lange Ihr für die SQL Postgre-DB-Instance seine Protokolldateien aufbewahrt. Die Standardeinstellung ist 3 Tage (4 320 Minuten). Sie können diese Einstellung jedoch auf einen beliebigen Wert zwischen 1 Tag (1 440 Minuten) und 7 Tagen (10 080 Minuten) festlegen. Stellen Sie sicher, dass Ihr für die SQL Postgre-DB-Instance über ausreichend Speicherplatz verfügt, um die Protokolldateien für diesen Zeitraum zu speichern.

Wir empfehlen, dass Sie Ihre Protokolle routinemäßig in Amazon CloudWatch Logs veröffentlichen, damit Sie Systemdaten noch lange nach dem Entfernen der Protokolle aus Ihrem . RDSfür die Postgre-DB-Instance. SQL Weitere Informationen finden Sie unter SQLPostgre-Protokolle in Amazon CloudWatch Logs veröffentlichen.

Festlegen der Rotation der Protokolldatei

Amazon RDS erstellt standardmäßig jede Stunde neue Protokolldateien. Das Timing wird vom Parameter log_rotation_age kontrolliert. Dieser Parameter hat einen Standardwert von 60 (Minuten). Sie können ihn jedoch auf jeden beliebigen Wert zwischen 1 Minute und 24 Stunden (1 440 Minuten) festlegen. Wenn die Rotation ansteht, wird eine neue eindeutige Protokolldatei erstellt. Die Datei wird nach dem Muster benannt, das durch den Parameter log_filename angegeben wird.

Protokolldateien können auch entsprechend ihrer Größe gedreht werden, wie im Parameter log_rotation_size angegeben. Dieser Parameter gibt an, dass das Protokoll rotiert werden soll, wenn es die angegebene Größe (in Kilobyte) erreicht. RDSFür eine SQL For-Postgre-DB-Instance log_rotation_size ist dieser Wert nicht gesetzt, d. h. es wurde kein Wert angegeben. Der Parameter ermöglicht jedoch die Einstellung von 0-2 097 151 kB (Kilobyte).

Die Protokolldateinamen basieren auf dem Dateinamenmuster des Parameters log_filename. Die verfügbaren Einstellungen für diesen Parameter lauten wie folgt:

  • postgresql.log.%Y-%m-%d – Standardformat für den Namen der Protokolldatei. Nimmt das Jahr, den Monat und das Datum in den Namen der Protokolldatei auf.

  • postgresql.log.%Y-%m-%d-%H – Nimmt die Stunde in das Format des Protokolldateinamens auf.

Weitere Informationen finden Sie unter log_rotation_ageund log_rotation_sizein der SQL Postgre-Dokumentation.

Festlegen des Protokollziels (stderr, csvlog)

Standardmäßig SQL generiert Amazon RDS Postgre Protokolle im Standardfehlerformat (stderr). Dieses Format ist die Standardeinstellung des Parameters log_destination. Jede Nachricht erhält ein Präfix nach dem im log_line_prefix-Parameter angegebenen Muster. Weitere Informationen finden Sie unter Grundlagen des Parameters log_line_prefix.

for Postgre SQL kann die Protokolle auch im csvlog Format generieren. Das csvlog ist nützlich, um die Protokolldaten als Daten mit kommagetrennten Werten () zu analysieren. CSV Angenommen, Sie verwenden die Erweiterung log_fdw, um mit Ihren Protokollen als Fremdtabellen zu arbeiten. Die Fremdtabelle, die für stderr-Protokolldateien erstellt wurde, enthält eine einzelne Spalte mit Protokollereignisdaten. Durch Hinzufügen csvlog zum log_destination Parameter erhalten Sie die Protokolldatei in dem CSV Format mit den Abgrenzungen für die verschiedenen Spalten der Fremdtabelle. Sie können Ihre Protokolle jetzt einfacher sortieren und analysieren. Informationen dazu, wie Sie log_fdw mit csvlog verwenden, finden Sie unter Verwenden der Erweiterung log_fdw für den Zugriff auf das DB-Protokoll mit SQL.

Wenn Sie csvlog für diesen Parameter angeben, beachten Sie, dass sowohl stderr- als auch csvlog-Dateien generiert werden. Achten Sie auf den von den Protokollen verbrauchten Speicher und berücksichtigen Sie dabei die rds.log_retention_periodund andere Einstellungen, die sich auf den Protokollspeicher und Turnover auswirken. Wenn Sie stderr und csvlog verwenden, verdoppelt sich der von den Protokollen verbrauchte Speicher.

Wenn Sie csvlog zu log_destination hinzufügen und zu stderr allein zurückkehren möchten, müssen Sie den Parameter zurücksetzen. Öffnen Sie dazu die RDS Amazon-Konsole und dann die benutzerdefinierte für Ihre Instance. Wählen Sie den log_destination-Parameter, die Option Edit parameter (Parameter bearbeiten) und dann Reset (Zurücksetzen) aus.

Weitere Informationen zur Konfiguration der Protokollierung finden Sie unter Arbeiten mit Amazon RDS - und Aurora SQL Postgre-Protokollen: Teil 1.

Grundlagen des Parameters log_line_prefix

Das stderr-Protokollformat wird jeder Protokollnachricht wie folgt mit den Details vorangestellt, die durch den log_line_prefix-Parameter angegeben werden.

%t:%r:%u@%d:[%p]:t

Sie können diese Einstellung nicht ändern. Jeder Protokolleintrag, der an stderr gesendet wird, enthält die folgenden Informationen.

  • %t – Zeitpunkt der Protokolleingabe

  • %r – Adresse des Remote-Hosts

  • %u@%d – Benutzername und Datenbankname

  • [%p] – Prozess-ID, falls verfügbar