네임스페이스: 디버그

디버그

디버그()

보안 규칙 엔진에 의해 평가되는 보안 규칙 언어 개체, 변수 및 명령문 결과를 인쇄하는 기본 디버그 기능입니다. debug 출력은 firestore-debug.log에 기록됩니다.

debug 함수는 규칙 조건 내에서만 호출할 수 있습니다.

debug 함수 블록은 Firebase 에뮬레이터 제품군의 일부인 Firestore 에뮬레이터의 보안 규칙 엔진에 의해서만 실행됩니다. 디버그 기능은 프로덕션에 영향을 주지 않습니다.

디버그 로그 파일 항목 앞에는 로그 출력의 규칙 언어 데이터 유형을 식별하는 문자열(예: 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
...