RealtimeDatabaseAuditMetadata

FirebaseRealtimeDatabaseAuditMetaData は、新しい protoPayload.metadata メッセージの一部として公開されます。

JSON 表現
{
  "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
}
フィールド
requestType

enum (RealtimeDatabaseAuditMetadata.RequestType)

リアルタイム オペレーションと REST オペレーションの区別を保持します。RTDB プロファイラの出力とは異なり、RTDB の Cloud Audit Logs の Cloud Audit Logs は、realtime-* オペレーションと rest-* オペレーションを ReadWriteUpdate メソッドにまとめます。

protocol

enum (RealtimeDatabaseAuditMetadata.Protocol)

使用されたプロトコルを保存します。

restMetadata

object (RealtimeDatabaseAuditMetadata.RestMetadata)

REST リクエストのみに関連する詳細情報。

precondition

object (RealtimeDatabaseAuditMetadata.Precondition)

Update の前提条件(省略可)。他のメソッドには存在しません。

executeDuration

Duration

RTDB サーバーのビジネス実行時間。ConnectDisconnectUnlisten の場合は存在しない。

pendingDuration

Duration

実行開始までの RTDB サーバーのキューイング時間。存在しない: Unlisten がサーバーまたは RunOnDisconnect によって開始された。

path

string

アクセスされたデータパス。ConnectDisconnectRunOnDisconnect の場合は存在しない。

共用体フィールド operation_metadataListenRead、または Update の詳細。operation_metadata は次のいずれかになります。
queryMetadata

object (RealtimeDatabaseAuditMetadata.QueryMetadata)

Listen または Read のメタデータ情報。

writeMetadata

object (RealtimeDatabaseAuditMetadata.WriteMetadata)

Update のメタデータ情報。

estimatedPayloadSizeBytes

int64

監査対象オペレーションの推定レスポンス サイズ(バイト単位)。請求には使用しないでください。ConnectDisconnectUnlistenOnDisconnectCancel の場合は存在しない。

RealtimeDatabaseAuditMetadata.QueryMetadata

QueryMetadata には、Listen または Read に対して送信されたクエリに関する追加の詳細が含まれます。

JSON 表現
{
  "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
}
フィールド
orderBy

string

クエリはどのように並べ替えられますか。指定できる値: $key$priority$value<path>

direction

enum (RealtimeDatabaseAuditMetadata.QueryMetadata.Direction)

limitToLast が使用されている場合は、ASCENDING になります。limitToFirst が使用されている場合は、DESCENDING になります。どちらも使用されておらず、startAt または startAfter が使用されている場合は、DESCENDING になります。それ以外の場合は ASCENDING です。

startAt

object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)

クエリの開始点。

endAt

object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)

クエリのエンドポイント。

equalTo

object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)

指定すると、指定した値に一致する子のみがクエリ結果に含まれます。

unindexed

boolean

true の場合、RTDB はクエリのデータを提供するためにサーバーサイド インデックスを使用しません。つまり、RTDB がクエリで選択したデータよりも多くのデータを送信している可能性があります。それ以外の場合はなし。

limit

integer

クエリは、最初または最後の limit の子の数に制限されました。limitToLastlimitToFirst も使用されていない場合は表示されません。

RealtimeDatabaseAuditMetadata.QueryMetadata.Bound

Bound は、フォールバック キーのあるクエリ エンドポイントです。

JSON 表現
{
  "value": value,
  "key": string,
  "exclusive": boolean
}
フィールド
value

value (Value format)

データベース インスタンスの値。

key

string

フォールバック キー。$key で並べ替えると、内容は value に保存されるため、このフィールドを省略します。

exclusive

boolean

startAfter または endBefore が使用された場合は true。この場合、クエリ結果にエンドポイント値は含まれません。

RealtimeDatabaseAuditMetadata.WriteMetadata

WriteMetadata には、Update に関する追加の詳細が含まれています。

JSON 表現
{
  "paths": {
    string: string,
    ...
  }
}
フィールド
paths

map (key: string, value: int64)

マルチパスの更新で変更されたパスと、各パスに書き込まれるデータのサイズ。

RealtimeDatabaseAuditMetadata.RestMetadata

RestMetadata には、REST リクエストのみに関連する詳細情報が含まれます。

JSON 表現
{
  "requestUri": string,
  "requestMethod": enum (RealtimeDatabaseAuditMetadata.RestMetadata.Method)
}
フィールド
requestUri

string

パス https://[NAMESPACE].us-central1.firebasedatabase.app/a/b/c.json を含むデータベースの完全な URL。

requestMethod

enum (RealtimeDatabaseAuditMetadata.RestMetadata.Method)

REST リクエストの場合、どのメソッドを使用したか。REST 以外のリクエストの場合、またはメソッドが使用できない場合は、指定されません。

RealtimeDatabaseAuditMetadata.Precondition

Precondition は、Update に使用された前提条件を表します(前提条件がある場合)。前提条件を持つ Update。RTDB ではトランザクションとしてよく知られています。

JSON 表現
{
  "preconditionType": enum (RealtimeDatabaseAuditMetadata.Precondition.PreconditionType),
  "hash": string
}
フィールド
preconditionType

enum (RealtimeDatabaseAuditMetadata.Precondition.PreconditionType)

使用する前提条件のタイプ。

hash

string

クライアントが path にあると想定しているデータの SHA1 ハッシュ。REST リクエストの場合、この値は ETAG ヘッダーで送信されます。