Datenbank-Protokolldateien von RDS für PostgreSQL - 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.

Datenbank-Protokolldateien von RDS für PostgreSQL

Sie können die folgenden Arten von Protokolldateien überwachen:

  • PostgreSQL-Protokoll

  • Protokoll aktualisieren

  • Fehlerprotokoll zur IAM-Datenbankauthentifizierung

    Anmerkung

    Um Fehlerprotokolle für die IAM-Datenbankauthentifizierung zu aktivieren, müssen Sie zunächst die IAM-Datenbankauthentifizierung für Ihre DB-Instances von RDS für PostgreSQL aktivieren. Weitere Informationen zur Aktivierung der IAM-Datenbankauthentifizierung finden Sie unter Aktivieren und Deaktivieren der IAM-Datenbank-Authentifizierung.

RDS für PostgreSQL protokolliert Datenbankaktivitäten in der PostgreSQL-Standardprotokolldatei. Bei einer On-Premises PostgreSQL-DB-Instance werden diese Nachrichten in log/postgresql.log lokal gespeichert. Für eine DB-Instance von RDS für PostgreSQL ist die Protokolldatei auf der Amazon-RDS-Instance verfügbar. Auf diese Protokolle kann auch über die AWS-Managementkonsole zugegriffen werden, wo Sie sie einsehen oder herunterladen können. Die Standardprotokollierungsebene erfasst Anmeldefehler, schwerwiegende Serverfehler, Deadlocks und Abfragefehler.

Weitere Informationen zum Anzeigen, Herunterladen und Überwachen von dateibasierten Datenbankprotokollen finden Sie unter Überwachen von Amazon RDS-Protokolldateien. Weitere Informationen zu PostgreSQL-Protokollen finden Sie unter Arbeiten mit Amazon RDS und Aurora-PostgreSQL-Protokollen: Teil 1 und Arbeiten mit Amazon RDS und Aurora-PostgreSQL-Protokollen: Teil 2.

Zusätzlich zu den in diesem Thema behandelten PostgreSQL-Standardprotokollen unterstützt RDS für PostgreSQL auch die PostgreSQL-Audit-Erweiterung (pgAudit). Die meisten regulierten Branchen und Regierungsbehörden müssen ein Auditprotokoll oder einen Audit-Trail für die Änderungen von Daten führen, um die gesetzlichen Bestimmungen zu erfüllen. Weitere Informationen zur Installation und Verwendung von pgAudit finden Sie unter Verwenden von pgAudit zur Protokollierung der Datenbankaktivität.

Veröffentlichen von PostgreSQL-Protokollen in Amazon CloudWatch Logs

Um Ihre PostgreSQL-Protokolldatensätze in einem Speicher mit hoher Beständigkeit abzulegen, können Sie Amazon CloudWatch Logs verwenden. Mit CloudWatch Logs können Sie auch Echtzeitanalysen von Protokolldaten durchführen und CloudWatch verwenden, um Metriken anzuzeigen und Alarme zu erstellen. Wenn Sie beispielsweise log_statement auf ddl festlegen, können Sie einen Alarm einrichten, der immer dann ausgelöst wird, wenn eine DDL-Anweisung ausgeführt wird. Sie können festlegen, dass Ihre PostgreSQL-Protokolle während des Erstellens Ihrer DB-Instance von RDS für PostgreSQL in CloudWatch Logs hochgeladen werden. Wenn Sie zu diesem Zeitpunkt keine Protokolle hochladen möchten, können Sie Ihre Instance später so ändern, dass ab diesem Zeitpunkt mit dem Hochladen von Protokollen begonnen wird. Mit anderen Worten, vorhandene Protokolle werden nicht hochgeladen. Es werden nur neue Protokolle hochgeladen, da sie auf Ihrer modifizierten DB-Instance von RDS für PostgreSQL erstellt werden.

Alle derzeit verfügbaren Versionen von RDS für PostgreSQL unterstützen das Veröffentlichen von Protokolldateien in CloudWatch Logs. Weitere Informationen finden Sie unter Aktualisierungen von Amazon RDS für PostgreSQL im Abschnitt Versionshinweise für Amazon RDS für PostgreSQL.

Um mit CloudWatch Logs zu arbeiten, konfigurieren Sie Ihre RDS für PostgreSQL-DB-Instance so, dass Protokolldaten in einer Protokollgruppe veröffentlicht werden.

Sie können die folgenden Protokolltypen für RDS für PostgreSQL in CloudWatch Logs veröffentlichen:

  • PostgreSQL-Protokoll

  • Protokoll aktualisieren

  • Fehlerprotokoll zur IAM-Datenbankauthentifizierung

Nachdem Sie die Konfiguration abgeschlossen haben, veröffentlicht Amazon RDS die Protokollereignisse, um Streams innerhalb einer CloudWatch-Protokollgruppe zu protokollieren. Beispielsweise werden die PostgreSQL-Protokolldaten innerhalb der Protokollgruppe gespeicher /aws/rds/instance/my_instance/postgresql. Um Ihre Protokolle anzuzeigen, öffnen Sie die CloudWatch-Konsole unter https://console.aws.amazon.com/cloudwatch/.

So veröffentlichen Sie PostgreSQL-Protokolle in CloudWatch Logs über die Konsole
  1. Öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.

  3. Wählen Sie die zu ändernde DB-Instance aus und klicken Sie anschließend auf Modify (Ändern).

  4. Wählen Sie im Bereich Protokollexporte die Protokolle aus, die Sie in CloudWatch Logs veröffentlichen möchten.

    Der Bereich Protokollexporte ist nur für PostgreSQL-Versionen verfügbar, die das Veröffentlichen in CloudWatch Logs unterstützen.

  5. Wählen Sie Weiter und dann auf der zusammenfassenden Seite Modify DB Instance (DB-Instance ändern) aus.

Sie können PostgreSQL-Protokolle mit der veröffentliche AWS CLI. Sie können den Befehl modify-db-instance mit den folgenden Parametern aufrufen.

  • --db-instance-identifier

  • --cloudwatch-logs-export-configuration

Anmerkung

Eine Änderung der Option --cloudwatch-logs-export-configuration wird immer sofort auf die DB-Instance angewendet. Aus diesem Grund sind die Optionen --apply-immediately und --no-apply-immediately wirkungslos.

Sie können PostgreSQL-Protokolle auch veröffentlichen, indem Sie die folgenden CLI-Befehle aufrufen:

Führen Sie einen dieser CLI-Befehle mit den folgenden Optionen aus:

  • --db-instance-identifier

  • --enable-cloudwatch-logs-exports

  • --db-instance-class

  • --engine

Je nach verwendetem CLI-Befehl müssen möglicherweise noch weitere Optionen angegeben werden.

Beispiel Ändern einer Instance zur Veröffentlichung von Protokollen in CloudWatch Logs

Im folgenden Beispiel wird eine vorhandene PostgreSQL-DB-Instance so konfiguriert, dass Protokolldateien in CloudWatch Logs veröffentlicht werden. Der --cloudwatch-logs-export-configuration-Wert ist ein JSON-Objekt. Der Schlüssel für dieses Objekt ist EnableLogTypes und dessen Wert ist ein Array von Zeichenfolgen mit einer beliebigen Kombination aus postgresql und upgrade.

Für Linux, macOS oder Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["postgresql", "upgrade"]}'

Für Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["postgresql","upgrade"]}'
Beispiel Erstellen einer Instance zur Veröffentlichung von Protokollen in CloudWatch Logs

Im folgenden Beispiel wird eine PostgreSQL-DB-Instance erstellt und die Protokolldateien werden in CloudWatch Logs veröffentlicht. Der Wert --enable-cloudwatch-logs-exports ist ein JSON-Array mit Zeichenfolgen. Die Zeichenfolgen können eine beliebige Kombination aus postgresql und upgrade sein.

Für Linux, macOS oder Unix:

aws rds create-db-instance \ --db-instance-identifier mydbinstance \ --enable-cloudwatch-logs-exports '["postgresql","upgrade"]' \ --db-instance-class db.m4.large \ --engine postgres

Für Windows:

aws rds create-db-instance ^ --db-instance-identifier mydbinstance ^ --enable-cloudwatch-logs-exports '["postgresql","upgrade"]' ^ --db-instance-class db.m4.large ^ --engine postgres

Sie können PostgreSQL-Protokolle mit der RDS-API veröffentlichen. Die Aktion ModifyDBInstance kann dazu mit den folgenden Parametern aufgerufen werden:

  • DBInstanceIdentifier

  • CloudwatchLogsExportConfiguration

Anmerkung

Eine Änderung des Parameters CloudwatchLogsExportConfiguration wird immer sofort auf die DB-Instance angewendet. Aus diesem Grund ist der Parameter ApplyImmediately wirkungslos.

Sie können PostgreSQL-Protokolle auch veröffentlichen, indem Sie die folgenden RDS-API-Operationen aufrufen:

Führen Sie eine dieser RDS-API-Operationen mit den folgenden Parametern aus:

  • DBInstanceIdentifier

  • EnableCloudwatchLogsExports

  • Engine

  • DBInstanceClass

Je nach ausgeführter Operation müssen möglicherweise noch weitere Parameter angegeben werden.