[swift] Swift XCGLogger를 사용하여 로그 메시지를 어떻게 파일에 기록하나요?

Swift에서 로그 메시지를 파일에 기록하려면 XCGLogger 라이브러리를 사용할 수 있습니다. 이 라이브러리는 강력한 로깅 도구로, 다양한 로그 메시지를 파일에 저장하고 관리하는 데 사용할 수 있습니다.

먼저, 프로젝트에 XCGLogger 라이브러리를 추가해야 합니다. 해당 라이브러리는 CocoaPods나 Carthage와 같은 종속성 관리 도구를 사용하여 프로젝트에 설치할 수 있습니다. 이후에는 다음 코드를 사용하여 로그 파일을 생성하고 로그 메시지를 파일에 기록할 수 있습니다.

import XCGLogger

let log = XCGLogger(identifier: "advancedLogger", includeDefaultDestinations: false)

let fileDestination = AutoRotatingFileDestination(writeToFile: "/path/to/log/file.log", identifier: "advancedLogger.fileDestination")
fileDestination.targetLevel = .debug
fileDestination.outputLevel = .debug
fileDestination.logQueue = XCGLogger.logQueue

let logFormat = "$Dyyyy-MM-dd HH:mm:ss.SSS$d $L $M"
let logDateFormat = "yyyy-MM-dd HH:mm:ss.SSS"

let formatter = Formatter("%@ %@ %@ %@: %@", arguments: [
    .date(logDateFormat),
    .level,
    .location,
    .message
    ])
fileDestination.formatters = [formatter]

log.add(destination: fileDestination)

log.debug("This is a debug message")
log.error("This is an error message")

위의 코드에서, “/path/to/log/file.log” 대신 로그를 저장 할 파일 경로를 지정합니다. 로그 수준 (log level)도 설정할 수 있으며, 예제에서는 .debug로 설정하였습니다. 또한 로그 메시지에 대한 형식과 날짜 형식도 지정됩니다.

이제 위 코드를 실행하면, debug와 error라는 두개의 로그 메시지가 지정된 경로에 있는 로그 파일에 기록됩니다.

Swift XCGLogger를 사용하여 로그 메시지를 파일에 기록하는 방법에 대해 알려드렸습니다. 더 자세한 내용은 XCGLogger의 공식 문서를 참조하시기 바랍니다.

참고: XCGLogger GitHub Repository