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 Typen von überwachen:

  • PostgreSQL-Protokoll

  • Protokoll aktualisieren

  • Fehlerprotokoll für die IAM-Datenbankauthentifizierung

    Anmerkung

    Um Fehlerprotokolle für die IAM-Datenbankauthentifizierung zu aktivieren, müssen Sie zunächst die IAM-Datenbankauthentifizierung für Ihre aktivieren. Weitere Hinweise 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 zugegriffen werden AWS Management Console, wo Sie sie anzeigen 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 Überwachung von Amazon RDS Amazon. 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 Wird verwendet pgAudit , um Datenbankaktivitäten zu protokollieren.

PostgreSQL-Protokolle in Amazon Logs veröffentlichen CloudWatch

Um Ihre PostgreSQL-Protokolldatensätze in einem äußerst langlebigen Speicher zu speichern, können Sie Amazon CloudWatch Logs verwenden. Mit CloudWatch Logs können Sie auch Protokolldaten in Echtzeit analysieren und diese zur Anzeige von Metriken und CloudWatch zur Erstellung von Alarmen verwenden. 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 wählen, ob Ihre CloudWatch PostgreSQL-Protokolle während der Erstellung Ihrer RDS for PostgreSQL-DB-Instance in Logs hochgeladen werden sollen. 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 die Veröffentlichung von Protokolldateien in Logs. CloudWatch 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 for PostgreSQL-DB-Instance so, dass Protokolldaten in einer Protokollgruppe veröffentlicht werden.

Sie können die folgenden Protokolltypen in CloudWatch Logs for RDS for PostgreSQL veröffentlichen:

  • PostgreSQL-Protokoll

  • Protokoll aktualisieren

  • Fehlerprotokoll für die 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 einzusehen, öffnen Sie die CloudWatch Konsole unter https://console.aws.amazon.com/cloudwatch/.

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

  2. Wählen Sie im Navigationsbereich 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 Abschnitt Protokollexporte die Protokolle aus, die Sie in Logs veröffentlichen möchten CloudWatch .

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

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

Sie können PostgreSQL-Protokolle mit dem veröffentlichen. 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 Sie eine Instanz, um Protokolle in Logs zu veröffentlichen CloudWatch

Das folgende Beispiel ändert eine bestehende PostgreSQL-DB-Instance, um Protokolldateien in Logs zu veröffentlichen. CloudWatch 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ürLinux, oder: macOS Unix

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

Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["postgresql","upgrade"]}'
Beispiel Erstellen Sie eine Instanz, um Logs in Logs zu CloudWatch veröffentlichen

Das folgende Beispiel erstellt eine PostgreSQL-DB-Instance und veröffentlicht Protokolldateien in Logs. CloudWatch 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ürLinux, odermacOS: Unix

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

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.