Справочник
[iOS] Интеграция библиотеки журналов CocoaLumberJack — краткая книга
GitHub — apple/swift-log: API ведения журналов для Swift
Как экспортировать журналы
Способ 1: отправить электронное письмо, способ 2: экспортировать напрямую
Stack Overflow на русском
местоположение журнала
настоящий путь,
#文件名为bundleid+空格+日期.log
/AppData/Library/Caches/Logs/
мой Mac (предназначен для iPhone)
код
#输出到控制台, console.app
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)
консоль console.app
DDFileLogger
: Разобраться несложно, это писать лог в файл.DDOSLogger
: Начиная использовать в iOS10, вывод лога в консоль приложения и консоль Xcode. Это согласуется с методом вывода NSLog. Конечно, после обработки производительность будет лучше, чем при непосредственном использовании NSLog.DDASLLogger
: Записать лог в console.app. Устарело, начиная с iOS10DDTTYLogger
: записывает журналы в консоль Xcode.
определение файла журнала
DDFileLogger *fileLogger = [[DDFileLogger alloc] init];
//重用log文件,不要每次启动都创建新的log文件(默认值是NO)
fileLogger.doNotReuseLogFiles = NO;
//log文件在24小时内有效,超过时间创建新log文件(默认值是24小时)
fileLogger.rollingFrequency = 60*60*24;
//log文件的最大3M(默认值1M)
fileLogger.maximumFileSize = 1024*1024*3;
//最多保存7个log文件(默认值是5)
fileLogger.logFileManager.maximumNumberOfLogFiles = 7;
//log文件夹最多保存10M(默认值是20M)
fileLogger.logFileManager.logFilesDiskQuota = 1014*1024*20;
//添加文件写入logger
[DDLog addLogger:fileLogger];
Получение папки журнала и имени файла
//logs文件夹路径
DDLogInfo(@"logsDirectory=%@",fileLogger.logFileManager.logsDirectory);
//logs文件夹的所有log文件路径
DDLogInfo(@"sortedLogFilePaths=%@",fileLogger.logFileManager.sortedLogFilePaths);
//当前活跃的log文件路径
DDLogInfo(@"currentFilePath=%@",fileLogger.currentLogFileInfo.filePath);