DDLog设置方法


本文永久地址为http://www.cnblogs.com/ChenYilong/p/3984246.html,转载请注明出处。

2014年8月11日 星期一 研究发现必须执行额外的步骤:
在Xcode->Project -> Edit active executable ->Argument

添加如下1个参数

下载这两个:
注意如果https://github.com/robbiehanson/XcodeColors安装不成功记得,删除下这个文件,重新安装:
"~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/XcodeColors.xcplugin"


© chenyilong. Powered by Postach.io

本文永久地址为http://www.cnblogs.com/ChenYilong/p/3984246.html,转载请注明出处。



下面附上一篇介绍DDLog的帖子(原文出处http://www.cocoachina.com/bbs/read.php?tid=135574 ,侵删)

 

闲话不续,搞了一段时间xmpp,发一些学习贴,共同学习
此文为别人翻译版本,转过来大家共同学习下,原文地址http://www.cnblogs.com/xiaoweige/archive/2012/10/08/lumberjack.html
实际上DDLog隶属于lumberjack这个框架,XMPP中带有其源码,下面就介绍如何使用之

想要学习这个框架只需要三个步骤

  1 把框架添加到你的应用程序
  2 配置框架
  3 用Lumberjack输入代替你的NSLog输出

下面详细介绍每个步骤

1 把框架添加到你的应用程序

主要添加的文件有以下四个

@ DDLog(基础框架)

@ DDASLLogger(发送到苹果的日志系统,他们显示到控制台上),个人建议没有必要

@DDTTYLoyger (发送日志语句到控制台)

@DDFIleLoger (把输出信息写进文件中)

DDLog是强制性的,其余的都是可选的,这取决于你如何打算使用这个框架,如果你不打算纪录到一个文件,你可以跳过DDFileLogger,或者你想跳过ASl 在你的爱好快速纪录日志,你可以跳过DDASLLoger

2 配置框架

  第一件事情你要做的是在你applicationDidFinishLaunching方法中配置(通常是这么做)添加你所需要的文件

  下面几行代码是在开始的时候所需要的

  [DDLog addLogger:[DDASLLogger sharedInstance]];

      [DDLog addLogger:[DDTTYLogger sharedInstance]];

  上面两行代码添加了一对logging框架,换句话说,你的日志语句已经能够发送到控制台,(就像一个正常的NSLog)

  这个框架的好处之一就是它的灵活性,如果你还想要你的日志语句写入到一个文件中,你可以添加和配置fileLogger

  fileLogger = [[DDFileLogger alloc] init];

fileLogger.rollingFrequency = 60 * 60 * 24; // 24 hour rolling

  fileLogger.logFileManager.maximumNumberOfLogFiles = 7;

  [DDLog addLogger:fileLogger];

上面的代码是告诉应用程序保持一周的日志文件系统

3 用Lumberjack输入代替你的NSLog输出

DDLog的头文件定义了宏,您将使用来取代你的NSLog语句。你可以参考下面的语句来代替你的NSlog

// Convert from this:
NSLog(@"Broken sprocket detected!");
NSLog(@"User selected file:%@ withSize:%u", filePath, fileSize);

// To this:
DDLogError(@"Broken sprocket detected!");
DDLogVerbose(@"User selected file:%@ withSize:%u", filePath, fileSize);

我们看到DDLog和NSLog有这完全相同的语法,在使用的时候不会有人和的障碍。

DDLog默认有四种级别的日志,你所要做的就是决定使用那种日志级别来打印你的日志语句,它们分别是:

@DDlogError
@DDlogWarn
@DDlogInfo
@DDlogVerbose

注释:你也可以自定义级别,你可以添加上更细微的控制代替系统四个简单的等级。
当然你选择那个NSLog语句,这取决于你的消息的严重程度。

下面的这些不同的日志等级也许正有你所需要的

如果你设置的日志级别为 LOG_LEVEL_ERROR那么你只会看到DDlogError语句的输出。
如果你将日志的级别设置为LOG_LEVEL_WARN那么你只会看到DDLogError和DDLogWarn语句。
如果您将日志级别设置为 LOG_LEVEL_INFO,您将看到error、Warn和信息报表。
如果您将日志级别设置为LOG_LEVEL_VERBOSE,您将看到所有DDLog语句。
如果您将日志级别设置为 LOG_LEVEL_OFF,你不会看到任何DDLog语句。

那么我在哪里设置日志级别?我必须使用一个日志级别为我的整个项目吗?

当然不是,我们都知道它就像调试或者添加新的特性,你想详细纪录你目前正在调试的部分,这个框架提供了对每个文件的调试,所以你可以修改日志级别在你正在编辑的文件中。

注释:(当然还有许多其他高级选项,比如全球日志级别,每xcode配置水平,每记录器级别等。但是我们会去,在另一篇文章)。
下面是详细的如何在你的代码中运用这个框架
// CONVERT FROM THIS

#import "Sprocket.h"

@implementation Sprocket

- (void)someMethod
{
    NSLog(@"Meet George Jetson");
}

@end

// TO THIS

#import "Sprocket.h"
#import "DDLog.h"

static const int ddLogLevel = LOG_LEVEL_VERBOSE;

@implementation Sprocket

- (void)someMethod
{
    DDLogVerbose(@"Meet George Jetson");
}

@end

注意日志级别声明为常数,这意味着DDLog以上声明的日志级别将被认为默认值,编译到你的项目中。 

 

© chenyilong. Powered by Postach.io

本文永久地址为http://www.cnblogs.com/ChenYilong/p/3984246.html,转载请注明出处。



 
 

 

最新文章

  1. WebApi 接口参数不再困惑:传参详解
  2. 【Cocos2d-x 3.x】 动作类Action源码分析
  3. QT学习笔记1
  4. svn 的备份还原
  5. wp8 入门到精通 Animation 背景加字体颜色从下向上变化颜色效果
  6. dpkg ---- apt-get ------ aptitude 三种方式的区别 及命令格式
  7. Codeforces Round #197 (Div. 2) C,D两题
  8. hdu 4628 动态规划
  9. java -Xms -Xmx -XX:PermSize -XX:MaxPermSize
  10. Java并发编程:JDK中的阻塞队列
  11. libGDX-wiki发布
  12. leetcode — distinct-subsequences
  13. form组件
  14. [转载]URL 源码分析
  15. day02 进制之间的转换and计算机编码叙述
  16. LeetCode(115):不同的子序列
  17. zabbix 添加用户 配置权限
  18. SQL-1 选取表中某一属性最大值的所有信息 查找最晚入职员工的所有信息
  19. 源码 ServerParameter
  20. Cognos创建Oracle数据源错误以及客户端生成加密信息错误

热门文章

  1. k8s之使用secret获取私有仓库镜像
  2. POW的重力之美
  3. android listview addheaderview viewpager
  4. Redis学习笔记之入门基础知识——其他特性
  5. “数学口袋精灵”App的第一个Sprint计划----开发日记
  6. c#程序阅读分析
  7. 团队作业四-WBS练习
  8. Linux命令(十) 在文件或目录之间创建链接 ln
  9. (转)linux 内存管理——内核的shmall 和shmmax 参数
  10. element-ui upload组建上传 file-list踩过的坑