iOS: CocoaLumberjack (версия 3.5.1) всегда создает новый файл при запуске приложения.

Я использую какао lumberjack для хранения журналов приложений. Я хочу свернуть файл журнала только на основе размера (если он достигает 1MB).

Ниже код, который я использую для конфигурации.

    let fileLogger: DDFileLogger = DDFileLogger()   
     fileLogger.rollingFrequency = -1
    fileLogger.maximumFileSize = 1024 * 1024
    fileLogger.logFileManager.maximumNumberOfLogFiles = 7
    DDLog.add(fileLogger

Но я столкнулся с одной проблемой: он создает новый файл при каждом запуске приложения, а не после достижения 1 МБ.

Согласно моему анализу в файле DDFileLogger.m по методу - (NSFileHandle *)lt_currentLogFileHandle свойство _currentLogFileHandle всегда равно нулю при запуске приложения.

есть что-то, что мне здесь не хватает. Пожалуйста, предложите мне

Я использую версию CocoLumberjack 3.5.1. приложение поддерживает с iOS 10 Xcode версии 10.1


person Logger    schedule 26.02.2019    source источник
comment
Я думаю, вам нужно использовать версию initWithLogFileManager: для создания экземпляра DDFileLogger с вашей собственной версией файлового менеджера. См. эту страницу. В качестве альтернативы напишите свой собственный класс регистратора, который не должен занимать более часа. Я никогда не был удовлетворен чужим кодом регистрации.   -  person trojanfoe    schedule 26.02.2019
comment
@trojanfoe. Я не понял тебя. Не могли бы вы уточнить?   -  person Logger    schedule 26.02.2019
comment
Я считаю, что вы должны создать свой собственный класс диспетчера файлов журналов, чтобы управлять созданием файлов журналов. Смотрите страницу, которую я связал.   -  person trojanfoe    schedule 26.02.2019
comment
что, если вы установите maxNumberOfLogFiles равным 1?   -  person Mosbah    schedule 26.02.2019
comment
это тоже может быть полезно: stackoverflow.com/questions/35991208/   -  person Mosbah    schedule 26.02.2019
comment
@Mosbah, если я установлю для maxNumberOfLogFiles значение 1 при запуске приложения, он удалит старый файл и создаст новый файл.   -  person Logger    schedule 26.02.2019
comment
Это была ошибка библиотеки CocoaLumberjack. Они выпустили новую версию с исправлением.   -  person Logger    schedule 31.05.2019