Ruang nama: debug

men-debug

debug()

Fungsi debug dasar yang mencetak objek bahasa Aturan Keamanan, variabel, dan hasil pernyataan saat sedang dievaluasi oleh mesin Aturan Keamanan. Output debug ditulis ke firestore-debug.log.

Fungsi debug hanya dapat dipanggil di dalam kondisi Rules .

blok fungsi debug hanya dijalankan oleh mesin Aturan Keamanan di emulator Firestore, bagian dari Firebase Emulator Suite. Fungsi debug tidak berpengaruh dalam produksi.

Entri file log debug diawali dengan string yang mengidentifikasi tipe data bahasa Aturan dari output log (misalnya, string_value , map_value ).

Panggilan untuk debug dapat disarangkan.

Saat ini, fitur debug tidak mendukung konsep level logging (misalnya 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
...