Datenbanken mit Cloud Monitoring überwachen

Nur für die Cloud Firestore Enterprise-Edition relevant.

In diesem Dokument wird das Audit-Logging für Cloud Firestore mit MongoDB-Kompatibilität beschrieben. Google Cloud-Dienste generieren Audit-Logs, in denen Verwaltungs- und Zugriffsaktivitäten in Ihren Google Cloud-Ressourcen aufgezeichnet werden.

Weitere Informationen zu Cloud-Audit-Logs finden Sie unter den folgenden Links:

Hinweise

Verwenden Sie bei der Konfiguration der Audit-Logs den Dienstnamen datastore.googleapis.com, um sowohl datastore.googleapis.com als auch firestore.googleapis.com. Once configured, logs for the Cloud Firestore with MongoDB compatibility API include the service namefirestore.googleapis.com` zu konfigurieren.

Die Zeit, die für die Verarbeitung einer DATA_READ- oder DATA_WRITE-Anfrage benötigt wurde, finden Sie im Feld processing_duration des metadata-Objekts einer AuditLog. Das Feld processing_duration beschreibt die Zeit, die die Datenbank für die Verarbeitung einer Anfrage benötigt hat. Sie ist geringer als die Endnutzerlatenz. Insbesondere ist kein Netzwerk-Overhead enthalten.

Dienstname

Für Cloud Firestore-Audit-Logs wird der Dienstname firestore.googleapis.com verwendet. Nach diesem Dienst filtern:

protoPayload.serviceName="firestore.googleapis.com"

Methoden nach Berechtigungstyp

Jede IAM-Berechtigung hat ein type-Attribut, dessen Wert „enum“ ist. Er kann einen der folgenden vier Werte haben: ADMIN_READ, ADMIN_WRITE, DATA_READ oder DATA_WRITE. Wenn Sie eine Methode aufrufen, generiert Cloud Firestore ein Audit-Log, dessen Kategorie vom Attribut type der Berechtigung abhängt, die für die Ausführung der Methode erforderlich ist.

Methoden, die eine IAM-Berechtigung mit dem type-Attributwert DATA_READ, DATA_WRITE oder ADMIN_READ erfordern, generieren Audit-Logs zum Datenzugriff.

Methoden, die eine IAM-Berechtigung mit dem type-Attributwert ADMIN_WRITE erfordern, generieren Audit-Logs zur Administratoraktivität.

Berechtigungstyp Methoden
ADMIN_READ google.cloud.location.Locations.GetLocation
google.cloud.location.Locations.ListLocations
google.firestore.admin.v1.FirestoreAdmin.GetBackup
google.firestore.admin.v1.FirestoreAdmin.GetBackupSchedule
google.firestore.admin.v1.FirestoreAdmin.GetDatabase
google.firestore.admin.v1.FirestoreAdmin.GetField
google.firestore.admin.v1.FirestoreAdmin.GetIndex
google.firestore.admin.v1.FirestoreAdmin.ListBackupSchedules
google.firestore.admin.v1.FirestoreAdmin.ListBackups
google.firestore.admin.v1.FirestoreAdmin.ListDatabases
google.firestore.admin.v1.FirestoreAdmin.ListFields
google.firestore.admin.v1.FirestoreAdmin.ListIndexes
google.firestore.admin.v1beta1.FirestoreAdmin.GetIndex
google.firestore.admin.v1.MongoDBCompatible.ListIndexes
google.firestore.admin.v1.MongoDBCompatible.ListDatabases
ADMIN_WRITE google.firestore.admin.v1.FirestoreAdmin.CreateBackupSchedule
google.firestore.admin.v1.FirestoreAdmin.CreateDatabase
google.firestore.admin.v1.FirestoreAdmin.CreateIndex
google.firestore.admin.v1.FirestoreAdmin.DeleteBackup
google.firestore.admin.v1.FirestoreAdmin.DeleteBackupSchedule
google.firestore.admin.v1.FirestoreAdmin.DeleteDatabase
google.firestore.admin.v1.FirestoreAdmin.DeleteIndex
google.firestore.admin.v1.FirestoreAdmin.RestoreDatabase
google.firestore.admin.v1.FirestoreAdmin.UpdateBackupSchedule
google.firestore.admin.v1.FirestoreAdmin.UpdateDatabase
google.firestore.admin.v1.FirestoreAdmin.UpdateField
google.longrunning.Operations.CancelOperation
google.longrunning.Operations.DeleteOperation
DATA_READ google.firestore.v1.MongoDBCompatible.Find
google.firestore.v1.MongoDBCompatible.Aggregate
google.firestore.v1.MongoDBCompatible.GetMore
google.firestore.v1.MongoDBCompatible.ListCollections
google.firestore.v1.MongoDBCompatible.Count
google.firestore.v1.MongoDBCompatible.Distinct
google.firestore.v1.MongoDBCompatible.CommitTransaction
google.firestore.v1.MongoDBCompatible.AbortTransaction
google.firestore.v1.MongoDBCompatible.EndSessions
google.firestore.v1.MongoDBCompatible.KillCursors
DATA_WRITE google.firestore.v1.MongoDBCompatible.Insert
google.firestore.v1.MongoDBCompatible.Update
google.firestore.v1.MongoDBCompatible.Delete
google.firestore.v1.MongoDBCompatible.FindAndModify
google.firestore.v1.MongoDBCompatible.CreateCollection

Anrufer von Anfragen identifizieren

Audit-Logeinträge enthalten Informationen zur Identität des Nutzers, der den protokollierten Vorgang ausgeführt hat. Die folgenden Felder in einem AuditLog-Objekt geben Aufschluss darüber, wer eine Anfrage stellt:

  • Die Identität des Aufrufers wird im Feld AuthenticationInfo gespeichert. Dazu kann auch die principalEmail des Nutzers gehören. Diese Informationen werden manchmal entfernt.

  • Das Feld callerIp im requestMetadata-Objekt eines AuditLog-Eintrags enthält die IP-Adresse des Anrufers.