네임스페이스: debug

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
...