对于我的应用程序,我需要在文本或日志文件中保存所有类型的控制台日志。我正在使用Log4Cocoa生成不同类型的日志。那么如何将所有控制台日志保存到文件中?有谁可以帮助我。
由于
答案 0 :(得分:1)
使用Log4Cocoa,每个记录器可以附加一个或多个目标。因此,如果将文件追加器附加到根记录器对象,则每条日志消息都将发送到该文件。初始化日志记录系统时,请添加以下内容:
NSString *logFileName = @"path-to-your-log-file";
[[L4Logger rootLogger] addAppender:
[[L4FileAppender alloc] initWithLayout:[L4Layout simpleLayout]
fileName:logFileName];
如果使用L4FileAppender
,您编写的文件可以无限制地增长。因此,您可以考虑使用L4RollingFileAppender
或L4DailyRollingFileAppender
。 L4RollingFileAppender
根据文件大小滚动文件。 L4DailyRollingFileAppender
根据时间滚动文件。尽管顾名思义,您可以配置L4DailRollingFileAppender
在不同的时间段滚动(每分钟,每小时,每半天等)。
如果您确实使用了文件追加器,那么您需要考虑如何从设备中获取日志文件,特别是如果您需要登录应用程序的生产版本。
就像我喜欢Log4Cocoa的优雅一样,我最终切换到了NSLogger(https://github.com/fpillet/NSLogger),你可能想看看它。