如何解决CocoaLumberjack - Swift:突然删除旧日志
我们正在使用 CocoaLumberjack(3.7.0) 来实现登录到应用程序。 我们希望将最大文件数保持为 90。
我们确信每天的文件大小不会超过 100 MB。
所以我们在下面提到了here
- 您可以通过将
rollingFrequency
设置为零(或任何非正数)来选择性地禁用滚动。 * 如果你这样做 因此,滚动仅基于maximumFileSize
。
以下是我们在代码中进行的设置。
DDLog.add(DDTTYLogger.sharedInstance!)
let tempDirectoryURL = FileManager.default.urls(for: .documentDirectory,in: .userDomainMask).first!
let folderURL = tempDirectoryURL.appendingPathComponent("Logs")
let manager = DDLogFileManagerDefault(logsDirectory: folderURL.path)
fileLogger = DDFileLogger(logFileManager: manager)
fileLogger?.rollingFrequency = 0
fileLogger?.maximumFileSize = 1000 * 1000 * 100
fileLogger?.logFileManager.maximumNumberOfLogFiles = 90
fileLogger?.logFormatter = CustomDDLogFormatter.init()
DDLog.add(fileLogger!)
有没有人知道这个问题的原因和解决方法?
解决方法
找到答案here 我们检查了 LumberJack 的内部代码和文档,在属性下面找到 “日志文件磁盘配额”
日志可以占用的最大空间。在滚动日志文件中,所有超过 logFilesDiskQuota 的旧日志文件都将被删除。 默认值 = 20 MB
解决方案here。
“您可以选择将其设置为零来禁用此选项。”
设置这个值后就解决了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。