Regeln . debuggen
debuggen
debuggen()
Eine grundlegende Debug-Funktion, die Objekte, Variablen und Anweisungsergebnisse der Security Rules-Sprache ausgibt, während sie von der Security Rules-Engine ausgewertet werden. Die Ausgaben von debug
werden in firestore-debug.log geschrieben.
Die debug
Funktion kann nur innerhalb von Rules- Bedingungen aufgerufen werden.
debug
Funktionsblöcke werden nur von der Security Rules Engine im Firestore-Emulator ausgeführt, der Teil der Firebase Emulator Suite ist. Die Debug-Funktion hat in der Produktion keine Auswirkung.
Debug-Protokolldateieinträgen wird eine Zeichenfolge vorangestellt, die den Datentyp der Regelsprache der Protokollausgabe identifiziert (z. B. string_value
, map_value
).
debug
Aufrufe können verschachtelt werden.
Derzeit unterstützt die debug
Funktion das Konzept der Protokollierungsebenen (z. B. INFO, WARN, ERROR) nicht.
// 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 ...