مساحة الاسم: تصحيح الأخطاء

تصحيح الأخطاء

()debug

دالة أساسية لتصحيح الأخطاء تطبع لغة "قواعد الأمان" الكائنات والمتغيرات ونتائج البيان كما هي يتم تقييمها بواسطة محرك قواعد الأمان. تتم كتابة مخرجات debug إلى firestore-debug.log.

لا يمكن استدعاء الدالة debug إلا داخل القواعد الشروط.

لا يتم تنفيذ حظر الدوال debug إلا من خلال محرك "قواعد الأمان" في عن محاكي Firestore، وهو جزء من "مجموعة محاكاة Firebase". تصحيح الأخطاء ليس له أي تأثير في الإنتاج.

تأتي إدخالات ملف سجل تصحيح الأخطاء من خلال سلسلة تحدد القواعد نوع بيانات اللغة لمخرجات السجل (على سبيل المثال، string_value، map_value).

يمكن دمج المكالمات إلى debug.

لا تتيح الميزة debug حاليًا مفهوم التسجيل. (على سبيل المثال، INFO وWARN وERROR).

// firestore.rules
// Nested debug calls in the following match block....
match /carts/{cartID} {
  allow create: if request.auth != null && request.auth.uid == request.resource.data.ownerUID;
    allow read, update, delete: if
      debug(
        debug(request.auth.uid) == debug(resource.data.ownerUID)
      );
  }
...

// firestore-debug.log
// ...produce logfile output like the following.
string_value: "alice" // for debug(request.auth.uid)

string_value: "alice" // for debug(resource.data.ownerUID)

bool_value: true      // for the outermost enclosing debug() call
...