IOS开发小技巧——强大的企业级调试日志——IOS第三方库CocoaLumberjack/CocoaLumberjack(1)

来源:互联网 发布:淘宝的收费方式 编辑:程序博客网 时间:2024/06/05 09:31

CocoaLumberjack是Mac和iOS上一个集快捷、简单、强大和灵活于一身的日志框架。CocoaLumberjack类似于流行的日志框架(如log4j),但它是专为Objective-C设计的,利用了多线程、GCD(如果可用)、无锁原子操作Objective-C运行时的动态特性。

快速
在大多数用例中,Lumberjack比NSLog快了一个数量级。

简单
当应用程序启动时,只需一行加单的代码就可配置Lumberjack。然后用DDLog语句简单地取代NSLog语句。 并且DDLog宏与NSLog的有完全相同的格式和语法,所以超级简单。

强大
一个日志语句可以被发送到多个logger,意味着你可以同时记录文件和控制台。此外,还可以创建自己的logger,将日志语句发送到网络、数据库或者分布式文件系统中。没有任何限制。

灵活性
配置你自己想要的日志框架。修改每个文件的日志级别(尤其是测试时)。修改每个logger的日志级 别(详细的控制台,但是简洁的日志文件)。修改每个Xcode配置的日志级别。为你的应用程序定制日志级别的数量。添加自己的精细的日志。在运行时动态修改日志级别。 选择如何以及何时回滚你的日志文件。将日志文件上传至中心服务器。压缩存档日志文件来节省硬盘空间。

当你遇到一下情况是,你可以选择Lumberjack框架:
1.你想找到一种方式来跟踪在程序中不断出现的不可复制的bug;
2.你对iPhone上的简短日志感到很失望;
3.出于支持系统和稳定性的需要,你想将应用程序升级到下一级别;
4.为你的应用程序(Mac或者iPhone)寻找企业级的日志解决方案。

以上就是这个第三分库的简介,那么,有木有觉得很强大的样子,那么,我们就开始今天要说这个第三分库的一个强大的功能


            《让我们的Xcode控制台输出文本带有颜色》

大概需要三个步骤:
一、安装xCode扩展插件XcodeColors。
二、引入第三方库CocoaLumberjack。
三、修改NSLog为DDLog方式。
一、安装xCode扩展插件XcodeColors
下载地址:https://github.com/robbiehanson/XcodeColors

二、引入第三方库CocoaLumberjack。
1.下载DDLog。下载地址:https://github.com/CocoaLumberjack/CocoaLumberjack
需要添加的主要文件有四个:
1.@DDLog(整个框架的基础,必须引入的)
2.@DDASLLogger(发送日志语句到苹果的日志系统,以便它们显示在Console.app上,一般正对Mac开发。可选。)
3.@DDTTYLoyger(发送日志语句到Xcode控制台,如果可用)
4.@DDFIleLoger(把日志语句发送至文件,可选)

笔记:
DDLog的输出级别默认提供以下若干种:
DDLogError:定义输出错误文本
DDLogWarn:定义输出警告文本
DDLogInfo:定义输出信息文本
DDLogDebug:定义输出调试文本
DDLogVerbose:定义输出详细文本

提供的日志级别为:
LOG_LEVEL_ERROR:只显示错误日志。
LOG_LEVEL_WARN:包括:LOG_LEVEL_ERROR
LOG_LEVEL_INFO:包括:LOG_LEVEL_WARN
LOG_LEVEL_DEBUG:包括:LOG_LEVEL_INFO
LOG_LEVEL_VERBOSE:包括:LOG_LEVEL_DEBUG
LOG_LEVEL_OFF:关闭日志

三、修改NSLog为DDLog方式。
这里主要是看这个第三方库怎么使用了,可以看一下下载地址里面的详细介绍,这里我在上面已经解析好了,相信大家也看过了,那么废话小说,直接代码

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    // 系统允许使用XcodeColors    setenv("XcodeColors", "YES", 0);    // 初始化DDLog日志输出,这里我们只是需要在控制台输出而已    [DDLog addLogger:[DDTTYLogger sharedInstance]];    // 开启输出文本颜色区分    [[DDTTYLogger sharedInstance] setColorsEnabled:YES];    return YES;}//DDLogError(@"错误信息"); // 红色//DDLogWarn(@"警告"); // 橙色//DDLogInfo(@"提示信息"); // 默认是黑色//DDLogVerbose(@"详细信息"); // 默认是黑色[DDLog addLogger:[DDASLLogger sharedInstance]];// 如果需要,可以添加其他的日志输出支持    [[DDTTYLogger sharedInstance] setForegroundColor:[UIColor blueColor] backgroundColor:nil forFlag:LOG_FLAG_INFO];// 可以修改你想要的颜色
0 0
原创粉丝点击