RealtimeDatabaseAuditMetadata

FirebaseRealtimeDatabaseAuditMetaData wird als Teil der neuen protoPayload.metadata Nachrichten verfügbar gemacht.

JSON-Darstellung
{
  "requestType": enum (RealtimeDatabaseAuditMetadata.RequestType),
  "protocol": enum (RealtimeDatabaseAuditMetadata.Protocol),
  "restMetadata": {
    object (RealtimeDatabaseAuditMetadata.RestMetadata)
  },
  "precondition": {
    object (RealtimeDatabaseAuditMetadata.Precondition)
  },
  "executeDuration": Duration,
  "pendingDuration": Duration,
  "path": string,

  // Union field operation_metadata can be only one of the following:
  "queryMetadata": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata)
  },
  "writeMetadata": {
    object (RealtimeDatabaseAuditMetadata.WriteMetadata)
  }
  // End of list of possible types for union field operation_metadata.
  "estimatedPayloadSizeBytes": int64
}
Felder
requestType

enum ( RealtimeDatabaseAuditMetadata.RequestType )

Behalten Sie die Unterscheidung zwischen Echtzeit- und REST-Operationen bei. Im Gegensatz zur RTDB-Profiler-Ausgabe fassen Cloud Audit-Datenzugriffsprotokolle für RTDB realtime-* und rest-* Vorgänge in die Methoden „ Read “, „ Write “ und Update “ zusammen.

protocol

enum ( RealtimeDatabaseAuditMetadata.Protocol )

Speichern Sie, welches Protokoll verwendet wurde.

restMetadata

object ( RealtimeDatabaseAuditMetadata.RestMetadata )

Details, die nur für REST-Anfragen relevant sind.

precondition

object ( RealtimeDatabaseAuditMetadata.Precondition )

Eine optionale Voraussetzung für ein Update . Bei anderen Methoden nicht vorhanden.

executeDuration

Duration

Geschäftsausführungszeit des RTDB-Servers. Nicht vorhanden für: Connect , Disconnect oder Unlisten .

pendingDuration

Duration

Wartezeit des RTDB-Servers vor Beginn der Ausführung. Nicht vorhanden für: Unlisten initiiert durch den Server oder RunOnDisconnect .

path

string

Der Datenpfad, auf den zugegriffen wurde. Nicht vorhanden für: Connect , Disconnect oder RunOnDisconnect .

Union-Feld operation_metadata . Weitere Details zu Listen s, Read s oder Update s. operation_metadata kann nur einer der folgenden Werte sein:
queryMetadata

object ( RealtimeDatabaseAuditMetadata.QueryMetadata )

Metadateninformationen für ein Listen oder Read .

writeMetadata

object ( RealtimeDatabaseAuditMetadata.WriteMetadata )

Metadateninformationen für ein Update .

estimatedPayloadSizeBytes

int64

Die geschätzte Antwortgröße des überwachten Vorgangs in Bytes. Nicht für Abrechnungszwecke verwenden. Nicht vorhanden für: Connect , Disconnect , Unlisten oder OnDisconnectCancel .

RealtimeDatabaseAuditMetadata.QueryMetadata

QueryMetadata enthält zusätzliche Details zu Abfragen, die für Listen s oder Read s gesendet wurden.

JSON-Darstellung
{
  "orderBy": string,
  "direction": enum (RealtimeDatabaseAuditMetadata.QueryMetadata.Direction),
  "startAt": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)
  },
  "endAt": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)
  },
  "equalTo": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)
  },
  "unindexed": boolean,
  "limit": integer
}
Felder
orderBy

string

Wie ist die Abfrage geordnet? Mögliche Werte: $key , $priority , $value , <path> .

direction

enum ( RealtimeDatabaseAuditMetadata.QueryMetadata.Direction )

Wenn limitToLast verwendet wird, ASCENDING . Wenn limitToFirst verwendet wird, DESCENDING . Wenn keines von beiden verwendet wird, aber startAt oder startAfter verwendet wird, DESCENDING . In allen anderen Fällen ASCENDING .

startAt

object ( RealtimeDatabaseAuditMetadata.QueryMetadata.Bound )

Der Startpunkt der Abfrage.

endAt

object ( RealtimeDatabaseAuditMetadata.QueryMetadata.Bound )

Der Endpunkt der Abfrage.

equalTo

object ( RealtimeDatabaseAuditMetadata.QueryMetadata.Bound )

Wenn angegeben, umfassen die Abfrageergebnisse nur untergeordnete Elemente, die mit dem angegebenen Wert übereinstimmen.

unindexed

boolean

Wenn „true“, verwendet RTDB keinen serverseitigen Index, um Daten für die Abfrage bereitzustellen. Dies bedeutet, dass RTDB möglicherweise mehr Daten sendet, als die Abfrage auswählt. Ansonsten nicht vorhanden.

limit

integer

Die Abfrage war entweder auf die erste oder letzte limit an Kindern beschränkt. Nicht vorhanden, wenn weder limitToLast noch limitToFirst verwendet wird.

RealtimeDatabaseAuditMetadata.QueryMetadata.Bound

Ein Bound ist ein Abfrageendpunkt mit einem Fallback-Schlüssel.

JSON-Darstellung
{
  "value": value,
  "key": string,
  "exclusive": boolean
}
Felder
value

value ( Value format)

Ein Wert aus der Datenbankinstanz.

key

string

Der Fallback-Schlüssel. Bei der Sortierung nach $key wird dieses Feld weggelassen, da sein Inhalt stattdessen im value gespeichert wird.

exclusive

boolean

True, wenn startAfter oder endBefore verwendet wurden. In diesem Fall enthalten die Abfrageergebnisse keine Endpunktwerte.

RealtimeDatabaseAuditMetadata.WriteMetadata

WriteMetadata enthält zusätzliche Details zu Update s.

JSON-Darstellung
{
  "paths": {
    string: string,
    ...
  }
}
Felder
paths

map (key: string, value: int64 )

Die bei einer Multipfad-Aktualisierung geänderten Pfade zusammen mit der Größe der auf jedem Pfad geschriebenen Daten.

RealtimeDatabaseAuditMetadata.RestMetadata

RestMetadata enthält Details, die nur für REST-Anfragen relevant sind.

JSON-Darstellung
{
  "requestUri": string,
  "requestMethod": enum (RealtimeDatabaseAuditMetadata.RestMetadata.Method)
}
Felder
requestUri

string

Die vollständige Datenbank-URL, einschließlich des Pfads: https://[NAMESPACE].us-central1.firebasedatabase.app/a/b/c.json .

requestMethod

enum ( RealtimeDatabaseAuditMetadata.RestMetadata.Method )

Welche Methode wurde für REST-Anfragen verwendet? Wird für Nicht-REST-Anfragen oder wenn eine Methode nicht verfügbar ist, nicht angegeben.

RealtimeDatabaseAuditMetadata.Precondition

Precondition beschreibt die Vorbedingung, falls vorhanden, die für ein Update verwendet wurde. Update s mit Vorbedingungen, die in RTDB häufiger als Transaktionen bezeichnet werden.

JSON-Darstellung
{
  "preconditionType": enum (RealtimeDatabaseAuditMetadata.Precondition.PreconditionType),
  "hash": string
}
Felder
preconditionType

enum ( RealtimeDatabaseAuditMetadata.Precondition.PreconditionType )

Der Typ der verwendeten Vorbedingung.

hash

string

Ein SHA1-Hash der Daten, die der Client im path erwartet. Bei REST-Anfragen wird dieser Wert in einem ETAG-Header gesendet.