Przestrzeń nazw: debugowanie

debugować

debug()

Podstawowa funkcja debugowania, która wyświetla język reguł zabezpieczeń. obiektów, zmiennych i wyników wyrażeń w trakcie ich działania oceniane przez mechanizm reguł zabezpieczeń. Dane wyjściowe funkcji debug są zapisywane w Firestore-debug.log.

Funkcję debug można wywołać tylko w Regułach warunków.

Bloki funkcji debug są wykonywane tylko przez mechanizm reguł zabezpieczeń w emulator Firestore, który wchodzi w skład Pakietu emulatorów Firebase. Debugowanie nie ma wpływu na środowisko produkcyjne.

Wpisy w pliku logu debugowania są poprzedzane ciągiem znaków identyfikującym reguły. język danych wyjściowych dziennika (np. string_value, map_value).

Wywołania debug mogą być zagnieżdżone.

Obecnie funkcja debug nie obsługuje koncepcji logowania poziomów (np. 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
...