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 على تصغير عمليات realtime-* وrest-* إلى طرق Read وWrite وUpdate.

protocol

enum (RealtimeDatabaseAuditMetadata.Protocol)

تخزين البروتوكول الذي تم استخدامه

restMetadata

object (RealtimeDatabaseAuditMetadata.RestMetadata)

التفاصيل ذات الصلة بطلبات REST فقط.

precondition

object (RealtimeDatabaseAuditMetadata.Precondition)

شرط مسبق اختياري لاستخدام Update غير متاح لأي طرق أخرى.

executeDuration

Duration

وقت تنفيذ النشاط التجاري لخادم RTDB. غير متوفّر في: Connect أو Disconnect أو Unlisten.

pendingDuration

Duration

مدة انتظار خادم RTDB قبل بدء التنفيذ. ليس متاحًا لـ: Unlisten الذي يبدأه الخادم أو RunOnDisconnect.

path

string

مسار البيانات الذي تم الوصول إليه. غير متوفّر في: Connect أو Disconnect أو RunOnDisconnect.

حقل الاتحاد operation_metadata. يمكنك الاطّلاع على مزيد من التفاصيل عن أسماء Listen أو Read أو Update. يمكن أن يكون operation_metadata واحدًا فقط مما يلي:
queryMetadata

object (RealtimeDatabaseAuditMetadata.QueryMetadata)

معلومات البيانات الوصفية الخاصة بـ Listen أو Read

writeMetadata

object (RealtimeDatabaseAuditMetadata.WriteMetadata)

معلومات البيانات الوصفية الخاصة بـ Update

estimatedPayloadSizeBytes

int64

حجم الاستجابة المقدّر للعملية التي تخضع للتدقيق بالبايت. يُرجى عدم استخدامها لأغراض الفوترة. غير متوفّر في: Connect أو Disconnect أو Unlisten أو OnDisconnectCancel.

RealtimeDatabasepreviewMetadata.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 من العناصر الفرعية أو الأخير. غير متاح عند عدم استخدام limitToLast أو limitToFirst.

RealtimeDatabasepreviewMetadata.QueryMetadata.Bound

Bound هي نقطة نهاية طلب بحث تحتوي على مفتاح احتياطي.

تمثيل JSON
{
  "value": value,
  "key": string,
  "exclusive": boolean
}
الحقول
value

value (Value format)

قيمة من مثيل قاعدة البيانات.

key

string

المفتاح الاحتياطي. في حال الترتيب حسب $key، يتم حذف هذا الحقل نظرًا لتخزين محتواه في value بدلاً من ذلك.

exclusive

boolean

صحيح في حال استخدام startAfter أو endBefore. في هذه الحالة، لن تحتوي نتائج الاستعلام على قيم نقطة النهاية.

RealtimeDatabasepreviewMetadata.WriteMetadata

يتضمن "WriteMetadata" تفاصيل إضافية عن "Update".

تمثيل JSON
{
  "paths": {
    string: string,
    ...
  }
}
الحقول
paths

map (key: string, value: int64)

المسارات المعدَّلة في تحديث متعدد المسارات مع حجم البيانات المكتوبة في كل مسار

RealtimeDatabasepreviewMetadata.RestMetadata

يحتوي RestMetadata على تفاصيل ذات صلة بطلبات REST فقط.

تمثيل JSON
{
  "requestUri": string,
  "requestMethod": enum (RealtimeDatabaseAuditMetadata.RestMetadata.Method)
}
الحقول
requestUri

string

عنوان URL الكامل لقاعدة البيانات، بما في ذلك المسار: https://[NAMESPACE].us-central1.firebasedatabase.app/a/b/c.json.

requestMethod

enum (RealtimeDatabaseAuditMetadata.RestMetadata.Method)

بالنسبة إلى طلبات REST، ما الطريقة التي تم استخدامها. لم يتم تحديد ذلك للطلبات غير المستندة إلى REST أو إذا لم تكن طريقة متوفرة.

RealtimeDatabasepreviewMetadata.Precondition

تصف السمة Precondition الشرط المسبق، إن وجد، الذي تم استخدامه لـ Update. Update مع شروط مُسبَقة، وتُعرف بشكل أكثر شيوعًا في RTDB باسم المعاملات.

تمثيل JSON
{
  "preconditionType": enum (RealtimeDatabaseAuditMetadata.Precondition.PreconditionType),
  "hash": string
}
الحقول
preconditionType

enum (RealtimeDatabaseAuditMetadata.Precondition.PreconditionType)

نوع الشرط المسبق المستخدم.

hash

string

تجزئة SHA1 للبيانات التي يتوقّع العميل أن تكون في path. بالنسبة إلى طلبات REST، يتم إرسال هذه القيمة في عنوان ETAG.