首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >CocoaLumberjack - Swift :没有收到前几天的日志文件

CocoaLumberjack - Swift :没有收到前几天的日志文件
EN

Stack Overflow用户
提问于 2020-02-19 06:44:20
回答 1查看 544关注 0票数 0

我在我的CocoaLumberjack/Swift iOS项目中使用了Pod。

问题是,我总是得到当前的一天(今天或最后一次应用程序启动的最后一天)日志文件。CocoaLumberjack没有保存前几天的旧日志文件

给我,今天是2020-02-19.我从CocoaLumberjack:那里得到的文件

xyz 2020-02-19--05-55-39-774.log //文件大小-> 10 MB

xyz 2020-02-19--05-55-46-305.log //文件大小-> 1.7MB

**没有前几天的旧文件,

我禁用了基于时间的滚动。

logger.rollingFrequency = -1 // also tried with 0

并对每个文件使用10 MB内存限制。

logger.maximumFileSize = 10 * (1024 * 1024) //10MB

根据CocoaLumberjack文件。

代码语言:javascript
运行
复制
* You may optionally disable rolling due to filesize by setting `maximumFileSize` to zero.
* If you do so, rolling is based solely on `rollingFrequency`.

这是我来自AppDelegate.的源代码

代码语言:javascript
运行
复制
import CocoaLumberjack

...... 

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    // Enable CocoaLumberjack logging
    self.setLoggingProperty()
}

private func setLoggingProperty() {
    if #available(iOS 10.0, *) {
        DDLog.add(DDOSLogger.sharedInstance)
    } else {
        // Fallback on earlier versions
        DDLog.add(DDASLLogger.sharedInstance)
        if let dDTTYLogger = DDTTYLogger.sharedInstance {
            DDLog.add(dDTTYLogger)
        }
    }

    let logger: DDFileLogger = DDFileLogger.init()

    logger.maximumFileSize = 10 * (1024*1024) //10MB
    logger.rollingFrequency = -1 // Disable time base rolling

    logger.logFileManager.maximumNumberOfLogFiles = 7
    DDLog.add(logger)
}

有没有人面临类似的问题?我是不是遗漏了什么?

EN

回答 1

Stack Overflow用户

发布于 2020-02-19 07:00:13

更改滚动频率和大小。设置波纹管片段

代码语言:javascript
运行
复制
let fileLogger = DDFileLogger(logFileManager: LogsManager.shared())
        DDLog.add(DDOSLogger.sharedInstance)
        // 24-hour rolling, maximum 14 files, max 50 MB per file.
        fileLogger.rollingFrequency = 60 * 60 * 24
        fileLogger.maximumFileSize = 50 * 1024 * 1024;
        fileLogger.logFileManager.maximumNumberOfLogFiles = 14;
        // The file logger
        DDLog.add(fileLogger)
        // TTY = The Xcode console logger
        DDLog.add(DDTTYLogger.sharedInstance)
        // ASL = The Apple System Logs
        DDLog.add(DDOSLogger.sharedInstance)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60294464

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档