iOS 日志管理异常捕获组件LFLogManager
2018-02-02 21:09
501 查看
一、功能
1.分级打印保存
解决一大堆重要、不重要打印信息在控制台混为一团的尴尬局面。可设置仅打印某级别及以上的信息。分为5类打印:DDLogError(@"打印并保存特别重要信息"); DDLogWarn(@"打印并保存重要信息"); DDLogInfo(@"打印并保存一般信息"); DDLogDebug(@"打印并保存很一般信息"); DDLogVerbose(@"打印并保存无足挂齿信息");
2.日志浏览与删除及设置打印级别
可视化界面都封装好了,无需动手只需要跳到LFLogListController这个界面即可,这些功能都在这个界面做好了。
LFLogListController *vc = [[LFLogListController alloc] init]; [self.navigationController pushViewController:vc animated:YES];
说明:比如设置打印级别为DDLogLevelInfo时则只打印保存DDLogLevelInfo及以上级别的信息
3.捕获异常崩溃并保存日志
使用者不用管,自动记录的4.自定义打印级别和日志存储路径
见下面使用中的介绍二、使用
1. pod 'LFKit/Component/LFLogManager'或源码拖进工程2.在pch文件中加入这些
#import <CocoaLumberjack/DDLog.h> extern DDLogLevel ddLogLevel; //自定义log1(如果不自定义log级别和文件路径,则不需要下面代码) #define LFLOG_LEVEL1 (1 << 5) #define LFLOG_LEVEL2 (1 << 6) #define LFLog1(frmt, ...) LOG_MAYBE(YES, ddLogLevel, (1 << 0), LFLOG_LEVEL1, __PRETTY_FUNCTION__,frmt, ## __VA_ARGS__) #define LFLog2(frmt, ...) LOG_MAYBE(YES, ddLogLevel, (1 << 1), LFLOG_LEVEL2, __PRETTY_FUNCTION__,frmt, ## __VA_ARGS__) //自定义log2(如果不自定义log级别和文件路径,则不需要下面代码) #define XXLOG_LEVEL1 (1 << 7) #define XXLOG_LEVEL2 (1 << 8) #define XXLog1(frmt, ...) LOG_MAYBE(YES, ddLogLevel, (1 << 0), XXLOG_LEVEL1, __PRETTY_FUNCTION__,frmt, ## __VA_ARGS__) #define XXLog2(frmt, ...) LOG_MAYBE(YES, ddLogLevel, (1 << 1), XXLOG_LEVEL2, __PRETTY_FUNCTION__,frmt, ## __VA_ARGS__)
3.在应用启动时加如下代码
[LFLogManager shareInstance].maximumFileSize = 1024; [[LFLogManager shareInstance] install]; //自定义log1(如果不自定义log级别和文件路径,则不需要下面代码) NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES); NSString *baseDir = ([paths count] > 0) ? [paths objectAtIndex:0] : nil; NSString *filePath = [baseDir stringByAppendingPathComponent:@"Logs/LFLog"]; [[LFLogManager shareInstance] installWithLevels:@[@(LFLOG_LEVEL1),@(LFLOG_LEVEL2)] path:filePath]; //自定义log2(如果不自定义log级别和文件路径,则不需要下面代码) NSArray *paths2 = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES); NSString *baseDir2 = ([paths2 count] > 0) ? [paths2 objectAtIndex:0] : nil; NSString *filePath2 = [baseDir2 stringByAppendingPathComponent:@"Logs/LFLog2"]; [[LFLogManager shareInstance] installWithLevels:@[@(XXLOG_LEVEL1),@(XXLOG_LEVEL2)] path:filePath2];
说明:
这只是LFKit的一个子库,LFKit地址https://github.com/zhanglinfeng/LFKit
需要LFKit中所有自定义控件的pod 'LFKit/Component'
需要总库的 pod 'LFKit'
相关文章推荐
- 捕获异常崩溃日志(iOS)
- 6.1iOS异常捕捉,日志组件
- iOS crash捕获异常崩溃日志
- iOS中捕获日志与异常示例详解
- iOS-iOS异常捕获和崩溃日志
- IOS下捕获异常并生成异常堆栈日志
- iOS应用日志:开始编写日志组件与异常日志
- iOS应用日志:开始编写日志组件与异常日志
- iOS应用日志:开始编写日志组件与异常日志
- iOS应用日志:开始编写日志组件与异常日志
- iOS应用日志:开始编写日志组件与异常日志
- iOS已发布应用中对异常信息捕获和处理
- iOS捕获异常,常用的异常处理方法
- Android log日志异常捕获信息收集类
- Android全局捕获崩溃异常记录日志保存至本地并定时删除
- iOS 中捕获程序崩溃日志
- iOS 中捕获程序崩溃日志 (2014-04-22 17:35:59)
- java将捕获的异常写入日志
- iOS已发布应用中对异常信息捕获
- 经营你的iOS应用日志:开始编写日志组件CRASH信息