본문으로 건너뛰기

Stdout Log

개요

stdout-log 정책은 API 요청 및 응답 데이터를 콘솔(표준 출력)에 기록하는 데 사용됩니다. 요청 처리 중 헤더, 본문 및 사용자 정의 필드에 대한 자세한 로깅을 제공합니다. 이는 특히 실패를 진단하거나 서비스 간 데이터 흐름을 추적할 때 디버깅 및 모니터링 목적으로 유용합니다. 그러나 대량의 요청/응답 페이로드를 로깅하면 성능 문제나 과도한 로그 양이 발생할 수 있으므로 주의가 필요합니다.

이 정책은 전체 본문, 헤더 또는 오류 응답만 선택적으로 로깅할 수 있으며, 사용자 정의 필드 주입 및 민감한 데이터 마스킹을 모두 지원합니다.

구성 세부정보

필드유형설명
withBodyLog토글활성화되면 요청 및 응답 본문을 모두 기록합니다. 대량의 로그 양이 발생할 수 있습니다.
withHeaderLog토글활성화되면 요청 헤더를 기록합니다.
withErrorBodyLog토글활성화되면 실패한 응답(HTTP 상태 코드 >= 300)에 대해서만 요청/응답 본문을 기록합니다.
customFieldsJSON 편집기로그 데이터에 추가 사용자 정의 필드를 삽입할 수 있습니다. 값은 유효한 JSON이어야 합니다. 예: "request_uri": "xyz"
maskingFields양식개인 정보 보호를 위해 로그에서 마스킹할 필드를 정의합니다. 요청 본문, 응답 본문 또는 요청 헤더에 적용됩니다. withBodyLog 또는 withHeaderLog가 활성화되어야 합니다.
노트

변경할 수 없음: 이 정책이 제거되지 않도록 방지하는 토글입니다.

설정 값 변경 불가: 설정 후 구성 값을 변경하지 못하도록 방지하는 토글입니다.

If withBodyLog 또는 withHeaderLog가 비활성화된 상태에서 마스킹이 여전히 활성화되어 있으면, 로깅 불일치를 피하기 위해 마스킹 규칙 제거를 제안하는 경고 모달이 나타납니다.

마스킹 필드 옵션

각 마스킹 규칙은 다음을 요구합니다:

  • 유형: 요청 본문, 응답 본문 또는 요청 헤더 중 하나.
  • 필드 이름: 마스킹할 필드 (예: account, phone).
  • 마스킹 값: 필드를 대체할 값 (예: *** 또는 마스킹된 패턴).

사용자는 파란색 추가 버튼을 클릭하여 새 마스킹 필드를 추가하거나 해당 필드의 빨간색 빼기 버튼을 클릭하여 제거할 수 있습니다.

예제

모든 페이로드 로깅

"withBodyLog": true,
"withHeaderLog": true,
"withErrorBodyLog": false
  • 모든 요청에 대해 요청 및 응답 본문과 모든 헤더를 로깅합니다.
  • 개발 환경에 적합합니다.

오류 전용 로깅

"withErrorBodyLog": true
  • 응답 상태가 300 이상일 때만 본문과 헤더를 로깅합니다.
  • 중요한 오류를 캡처하면서 로그 양을 줄이는 데 도움이 됩니다.

로그의 사용자 정의 필드

{
"customFields": {
"request_id": "abc123",
"env": "staging"
}
}
  • 각 로그 항목에 사용자 정의 메타데이터를 추가합니다.

민감한 정보 마스킹

유형필드마스킹된 값
요청 본문account*****
요청 본문phone010--

이 값들은 로깅된 요청/응답 본문 출력에서 자동으로 마스킹됩니다.