#ios #swift #logging #nslog
#iOS #swift #ведение журнала #nslog
Вопрос:
Итак, я пытаюсь сохранить файл журнала, а затем открыть его в моем офисе.
Я пробовал «Willow» и «CocoaLumberjack», но у меня ничего не вышло.
Я пробовал открыть консоль, но она показывает журналы только с момента подключения устройства к Mac. Также пробовал:
NSLog("example")
и
let customLog = OSLog(subsystem: "com.your_company.your_subsystem_name", category: "Category")
os_log("This is info that may be helpful during development or debugging.", log: customLog, type: .debug)
Я делаю что-то не так или есть другой способ?
Спасибо
Ответ №1:
Хорошо, мне удалось сделать это с помощью модуля «CocoaLumberjack».
Почти так же, как в документации.
Я создал файл, подобный этому:
import Foundation
import CocoaLumberjack
func setupLogging() {
DDLog.add(DDOSLogger.sharedInstance) // Uses os_log
let fileLogger: DDFileLogger = DDFileLogger() // File Logger
fileLogger.rollingFrequency = 60 * 60 * 24 // 24 hours
fileLogger.logFileManager.maximumNumberOfLogFiles = 7
DDLog.add(fileLogger)
}
func writeLog(message: String) {
DDLogDebug(message)
}
В AppDelegate я сделал это:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
setupLogging()
return true
}
И затем везде, где я хотел записать журнал, я делал вот так:
writeLog(message: "test")
После завершения мне пришлось извлечь журнал следующим образом:
windows -> устройства и симулятор -> выберите устройство -> выберите приложение -> прокрутите вниз до значка шестеренки -> загрузить контейнер -> затем показать содержимое пакета -> библиотека / кэши / журналы
🙂