Von pgAudit für AlloyDB for PostgreSQL generierte Audit-Logs aufrufen

Auf dieser Seite wird beschrieben, wie Sie die von pgAudit generierten Audit-Logs ansehen. Mit pgAudit können Sie Logs konfigurieren, die häufig für die Einhaltung von behördlichen, finanziellen und ISO-Zertifizierungen erforderlich sind. Auf dieser Seite wird auch das Logformat für pgAudit beschrieben. Weitere Informationen zu pgAudit finden Sie unter Informationen zu pgAudit.

Hinweis

So rufen Sie Audit-Logs auf:

Audit-Logs ansehen

Die generierten pgAudit-Logs für die jeweilige Instanz werden als Audit-Logs zum Datenzugriff an Cloud Logging gesendet.

Sie können die generierten pgAudit-Logs über die Log-Explorer-Anwendung aufrufen.

Wählen Sie dazu im Log-Explorer den cloudaudit.googleapis.com/data_access Logfilter aus.

Wenn Sie alle pgAudit-Logs für ein AlloyDB-Projekt aufrufen möchten, führen Sie die folgende Abfrage über die Oberfläche Erweiterte Filter aus:

resource.type="alloydb.googleapis.com/Instance"
logName="projects/your-project-name/logs/cloudaudit.googleapis.com%2Fdata_access"
protoPayload.request.@type="type.googleapis.com/google.cloud.alloydb.audit.v1.PgAuditEntry"

Logformat für pgAudit

Jeder pgAudit-Logeintrag in den Audit-Logs zum Datenzugriff enthält Felder, die die für eine Abfrage erfassten Informationen enthalten. Weitere Informationen zu diesen Logeintragsfeldern finden Sie in der pgAudit-Dokumentation.

Beispiel für einen pgAudit-Logeintrag:

{
  protoPayload: {
    @type: "type.googleapis.com/google.cloud.audit.AuditLog"
    methodName: "alloydb.instances.query"
    request: {
      @type: "type.googleapis.com/google.cloud.alloydb.audit.v1.PgAuditEntry"
      auditClass: "READ"
      auditType: "SESSION"
      chunkCount: "1"
      chunkIndex: "1"
      command: "SELECT"
      database: "finance"
      databaseSessionId: 2209692
      parameter: "[not logged]"
      statement: "SELECT * FROM revenue"
      statementId: 2
      substatementId: 1
      user: "alice"
    }
  }
}

Im Folgenden werden die Felder in den Audit-Logs zum Datenzugriff beschrieben:

  • auditClass : Der Typ der protokollierten Anweisung. Mögliche Werte sind READ, WRITE, FUNCTION, ROLE, DDL, MISC und MISC_SET.
  • auditType : SESSION oder OBJECT.
  • chunkCount : Die Blockaufteilung kann mit den Daten in den parameter und statement Feldern erfolgen. Das chunkCount Feld gibt die Gesamtzahl der Blöcke an. Siehe auch die Beschreibung des chunkIndex Felds.
  • chunkIndex : Gibt die Indexnummer der Datenblöcke in den parameter und statement Feldern im aktuellen request Container an. Die erste Zahl ist 1. Sehen Sie sich auch die Beschreibung des Felds chunkCount an.
  • command : Beispiele: ALTER TABLE oder SELECT.
  • parameter : Das Feld chunkIndex kann den Inhalt dieses Felds bestimmen. Siehe die Beschreibung des Felds chunkIndex. Wenn der Wert für `pgaudit.log_parameter` festgelegt ist, kann das parameter Feld die Anweisungsparameter als CSV-Daten in Anführungszeichen enthalten. Wenn keine Parameter vorhanden sind, enthält dieses Feld [none]. Andernfalls enthält dieses Feld [not logged].
  • statement : Anweisung, die auf dem Back-End ausgeführt wird. Das Feld chunkIndex kann den Inhalt des Felds statement bestimmen. Siehe die Beschreibung des Felds chunkIndex.
  • statementId : Eindeutige Anweisungs-ID für diese Sitzung. Jede Anweisungs-ID stellt einen Back-End-Aufruf dar. Anweisungs-IDs sind sequenziell, selbst wenn einige Anweisungen nicht protokolliert werden.
  • substatementId : Sequenzielle ID für jede Unteranweisung in der Haupt anweisung.

Status der Audit-Log-Pipeline überwachen

AlloyDB verarbeitet nutzergenerierte Audit-Logs asynchron, bevor sie sicher an Cloud Logging weitergeleitet werden. Mit Cloud Monitoring können Sie den Status, den Durchsatz und den Rückstand der Audit-Logging-Pipeline für Ihre Instanzen und Knoten überwachen.

Die folgenden Messwerte sind in Metrics Explorerfür die überwachte Ressource alloydb.googleapis.com/InstanceNodeverfügbar:

Messwertname Anzeigename Messwertart / Werttyp Einheit Beschreibung
alloydb.googleapis.com/node/database/logging/audit/backlog_bytes_count Größe des Audit-Log-Rückstands GAUGE / INT64 Byte (By) Die Größe des Audit-Log-Rückstands auf dem Knoten in Byte, der auf die Verarbeitung und den Upload zu Cloud Logging wartet. Ein dauerhaft hoher oder steigender Wert deutet auf einen Rückstau in der Audit-Log-Weiterleitungs-Pipeline hin.
alloydb.googleapis.com/node/database/logging/audit/processed_bytes_count Verarbeitete Audit-Log-Byte DELTA / INT64 Byte (By) Die Gesamtzahl der Byte an Audit-Log-Daten, die erfolgreich verarbeitet und vom Knoten an Cloud Logging weitergeleitet wurden.
alloydb.googleapis.com/node/database/logging/audit/processed_entries_count Verarbeitete Audit-Logeinträge DELTA / INT64 Anzahl (1) Die Gesamtzahl der Audit-Logeinträge, die erfolgreich verarbeitet und vom Knoten an Cloud Logging weitergeleitet wurden.

Weitere Informationen finden Sie in der Referenz zu System Insights-Messwerten.

Nächste Schritte