문서 메뉴
문서 홈
/ /
Atlas Device SDK
/

로깅 - Swift SDK

이 페이지의 내용

  • Realm 로그 수준 설정 또는 변경
  • 앱 클라이언트를 초기화하기 전에 로거 설정
  • 로깅 끄기
  • 로깅 기능 사용자 지정

애플리케이션을 개발하거나 디버깅할 때 앱의 로그 수준을 설정하거나 변경할 수 있습니다. 개발 요구 사항에 따라 다른 양의 데이터를 기록하도록 로그 수준을 변경할 수 있습니다.

다음도 참조하세요.

이 페이지에서는 Realm Swift SDK v10 에 추가된 Realm 로거를 설정하는 방법을 보여줍니다.39.0. 이는 이전 버전의 Realm Swift SDK에서 동기화 클라이언트 로그 수준 설정을 대체합니다. 이전 버전에서 동기화 클라이언트 로그 수준을 설정하는 방법에 대한 자세한 내용은 클라이언트 로그 수준 설정 - Swift SDK를 참조하세요.

Realm Swift SDK에서 보고하는 세부 정보 수준을 설정할 수 있습니다. Logger.shared.level 을(를) 사용하여 기본 로거의 로그 수준을 설정합니다.

Logger.shared.level = .trace

RLMLogLevel 열거형은 구성할 수 있는 다양한 로깅 수준을 나타냅니다.

로그 수준을 변경하여 코드의 여러 지점에서 상세도를 높이거나 낮출 수 있습니다. 이 동작은 동기화된 Realm을 열기 전에 설정해야 하며 변경할 수 없는 더 이상 사용되지 않는 동기화 클라이언트 로그 수준 과 다릅니다.

// Set a log level that isn't too verbose
Logger.shared.level = .warn
// Later, when trying to debug something, change the log level for more verbosity
Logger.shared.level = .trace

앱 클라이언트 를 초기화하면 Swift SDK는 앱의 구성을 캐시합니다. 초기화 후 앱 구성을 변경해도 아무런 효과가 없습니다. 여기에는 로거 설정이 포함됩니다. 앱을 초기화하면 현재 공유 로거를 읽고 저장합니다.

그러나 기존 로거의 로그 수준을 변경하는 것은 언제든지 가능합니다.

Realm Swift SDK의 기본 로그 임계값 수준은 .info 입니다. 그러면 콘솔에 일부 정보가 표시됩니다. 로그 수준을 .off 로 설정하여 로깅을 완전히 비활성화할 수 있습니다.

Logger.shared.level = .off

로거 인스턴스를 초기화하고 로깅에 사용할 함수를 정의합니다.

// Create an instance of `Logger` and define the log function to invoke.
let logger = Logger(level: .detail) { level, message in
// You may pass log information to a logging service, or
// you could simply print the logs for debugging. Define
// the log function that makes sense for your application.
print("REALM DEBUG: \(Date.now) \(level) \(message) \n")
}

애플리케이션을 개발하는 동안 오류를 진단하고 문제를 해결하려면 로그 수준을 debug 또는 trace 로 설정합니다. 프로덕션 배포의 경우 로그 수준을 낮추면 성능이 향상됩니다.

Logger.shared 를 사용하여 로거를 앱의 기본 로거로 설정할 수 있습니다. 기본 로거를 설정한 후 필요에 따라 앱 수명 주기 동안 로그 수준을 변경할 수 있습니다.

let logger = Logger(level: .info) { level, message in
// You may pass log information to a logging service, or
// you could simply print the logs for debugging. Define
// the log function that makes sense for your application.
print("REALM DEBUG: \(Date.now) \(level) \(message) \n")
}
// Set a logger as the default
Logger.shared = logger
// After setting a default logger, you can change
// the log level at any point during the app lifecycle
Logger.shared.level = .debug

돌아가기

테스트 및 디버그

다음

애플리케이션 서비스