상세 로깅
상세 로깅은 Braze SDK에서 낮은 수준의 자세한 정보를 출력하여 SDK가 초기화되고, 서버와 통신하며, 푸시, 인앱 메시지 및 콘텐츠 카드와 같은 메시징 채널을 처리하는 방식을 볼 수 있게 해줍니다.
푸시 알림이 도착하지 않거나, 인앱 메시지가 표시되지 않거나, 사용자 데이터가 동기화되지 않는 등 예상대로 작동하지 않을 때, 상세 로그는 문제의 근본 원인을 파악하는 데 도움이 됩니다. 추측하는 대신, 각 단계에서 SDK가 무엇을 하고 있는지 정확히 볼 수 있습니다.

상세 로깅을 사용해야 하는 경우
다음과 같은 경우에 상세 로깅을 활성화하세요:
- SDK 초기화 확인: SDK가 올바른 API 키와 엔드포인트로 정상적으로 시작되는지 확인합니다.
- 메시지 전달 문제 해결: 푸시 토큰이 등록되었는지, 인앱 메시지가 트리거되었는지, Content Cards가 동기화되었는지 확인합니다.
- 딥링크 디버그: SDK가 푸시, 인앱 메시지 또는 Content Cards에서 딥링크를 수신하고 열리는지 확인합니다.
- 세션 추적 유효성 검사: 세션이 예상대로 시작되고 종료되는지 확인합니다.
- 연결 문제 진단: SDK와 Braze 서버 간의 네트워크 요청 및 응답을 검사합니다.

상세 로깅 활성화

상세 로그는 개발 및 테스트 환경에서만 사용하도록 설계되었습니다. 민감한 정보가 노출되지 않도록 앱을 프로덕션에 릴리스하기 전에 상세 로깅을 비활성화하세요.
가장 완전한 출력을 캡처하려면 Application.onCreate() 메서드에서 다른 SDK 호출보다 먼저 상세 로깅을 활성화하세요.
코드에서:
BrazeLogger.setLogLevel(Log.VERBOSE);
BrazeLogger.logLevel = Log.VERBOSE
braze.xml에서:
<integer name="com_braze_logger_initial_log_level">2</integer>
상세 로깅이 활성화되었는지 확인하려면 Logcat 출력에서 V/Braze를 검색하세요. 예시:
2077-11-19 16:22:49.591 ? V/Braze v9.0.01 .bo.app.d3: Request started
자세한 내용은 Android SDK 로깅을 참조하세요.
초기화 중 Braze.Configuration 객체에서 로그 레벨을 .debug로 설정하세요.
let configuration = Braze.Configuration(
apiKey: "<BRAZE_API_KEY>",
endpoint: "<BRAZE_ENDPOINT>"
)
configuration.logger.level = .debug
let braze = Braze(configuration: configuration)
BRZConfiguration *configuration = [[BRZConfiguration alloc] initWithApiKey:@"<BRAZE_API_KEY>"
endpoint:@"<BRAZE_ENDPOINT>"];
[configuration.logger setLevel:BRZLoggerLevelDebug];
Braze *braze = [[Braze alloc] initWithConfiguration:configuration];
.debug 레벨은 가장 상세한 레벨이며 문제 해결에 권장됩니다. 자세한 내용은 Swift SDK 로깅을 참조하세요.
URL 파라미터로 ?brazeLogging=true를 추가하거나, SDK 초기화 시 로깅을 활성화하세요:
braze.initialize('YOUR-API-KEY', {
baseUrl: 'YOUR-SDK-ENDPOINT',
enableLogging: true
});
초기화 후에도 로깅을 토글할 수 있습니다:
braze.toggleLogging();
로그는 브라우저 개발자 도구의 Console 탭에 표시됩니다. 자세한 내용은 웹 SDK 로깅을 참조하세요.
- Braze > Braze Configuration으로 이동하여 Braze 구성 설정을 여세요.
- Show Braze Android Settings 드롭다운을 선택하세요.
- SDK Log Level 필드에
0을 입력하세요.
SDK 구성 시 로그 레벨을 설정하세요:
const configuration = new Braze.BrazeConfiguration('YOUR-API-KEY', 'YOUR-SDK-ENDPOINT');
configuration.logLevel = Braze.LogLevel.Verbose;
로그 수집하기
상세 로깅을 활성화한 후, 문제 해결 중인 이슈를 재현한 다음 플랫폼의 콘솔 또는 디버깅 툴에서 로그를 수집합니다.
Android Studio의 Logcat을 사용하여 로그를 캡처합니다.
- 기기를 연결하거나 에뮬레이터를 시작합니다.
- Android Studio에서 하단 패널의 Logcat을 엽니다.
V/Braze또는D/Braze로 필터링하여 Braze SDK 출력만 분리합니다.- 이슈를 재현합니다.
- 관련 로그를 복사하여 텍스트 파일로 저장합니다.
macOS의 콘솔 앱을 사용하여 로그를 캡처합니다.
- 상세 로깅이 활성화된 상태로 기기에 앱을 설치합니다.
- 기기를 Mac에 연결합니다.
- 콘솔 앱을 열고 기기 사이드바에서 사용 중인 기기를 선택합니다.
- 검색 바에서
Braze또는BrazeKit으로 로그를 필터링합니다. - 이슈를 재현합니다.
- 관련 로그를 복사하여 텍스트 파일로 저장합니다.
브라우저의 개발자 도구를 사용합니다.
- 브라우저의 개발자 도구를 엽니다(일반적으로 F12 또는 Cmd+Option+I).
- 콘솔 탭으로 이동합니다.
- 이슈를 재현합니다.
- 콘솔 출력을 복사하여 텍스트 파일로 저장합니다.

Braze 지원팀을 위해 로그를 수집할 때는 앱을 실행하기 전에 로깅을 시작하고, 이슈가 발생한 후에도 충분한 시간 동안 계속 로깅합니다. 이렇게 하면 전체 이벤트 순서를 빠짐없이 캡처할 수 있습니다.
상세 로그 읽기
상세 로그는 SDK가 무엇을 하고 있는지 추적하는 데 도움이 되는 일관된 구조를 따릅니다. 특정 채널의 로그 출력을 해석하는 방법(확인해야 할 주요 항목 및 일반적인 문제 해결 패턴 포함)에 대해 알아보려면 상세 로그 읽기를 참조하세요.
Braze 지원팀에 로그 공유하기
SDK 문제로 Braze 지원팀에 문의할 때는 다음 정보를 포함해 주세요:
- 상세 로그 파일: 앱 실행 전부터 문제 발생 시점까지의 전체 로그 캡처.
- 재현 단계: 문제를 트리거하는 동작에 대한 명확한 설명.
- 예상 동작 vs. 실제 동작: 예상했던 결과와 실제로 발생한 결과.
- SDK 버전: 사용 중인 Braze SDK 버전.
- 플랫폼 및 OS 버전: 예: iOS 18.0, Android 14, Chrome 120.