配置CocoaLumberjack的一些问题记录

想在Xcode中整一个彩色日志显示,按照GettingStarted.md 一文中的步骤将CocoaLumberjack 2.x整合进我的项目中来,遇到一些问题,当然不乏一些坑,作个记录。

整合步骤:

  • Drag CocoaLumberjack/Framework/{Desktop/Mobile}/Lumberjack.xcodeproj into your project
  • In your App target Build Settings
    • Add to ‘User Header Search Paths‘ $(BUILD_ROOT)/../IntermediateBuildFilesPath/UninstalledProducts/include
    • Set ‘Always Search User Paths‘ to YES
  • In your App target Build Phases
    • Add CocoaLumberjack static library target to ‘Target Dependencies‘
    • Add libCocoaLumberjack.a to ‘Link Binary With Libraries‘
  • Include the framework in your source files with
#import <CocoaLumberjack/CocoaLumberjack.h>

1、首先是编译提示Use of undeclared identifier ‘LOG_LEVEL_VERBOSE‘问题

这个我是按照文档XcodeTricks.md 在pch文件中加了下面的代码:

#ifdef DEBUG
  static const int ddLogLevel = LOG_LEVEL_VERBOSE;
#else
  static const int ddLogLevel = LOG_LEVEL_WARN;
#endif

踩坑1,把LOG_LEVEL_VERBOSE和LOG_LEVEL_WARN换成DDLogLevelVerbose和DDLogLevelError就好了。

修改后的代码应该是:

#ifdef DEBUG
static const int ddLogLevel = DDLogLevelVerbose;
#else
static const int ddLogLevel = DDLogLevelError;
#endif

然后在方法application:didFinishLaunchingWithOptions:中添加以下代码设置颜色显示:

[DDLog addLogger:[DDASLLogger sharedInstance]];
[DDLog addLogger:[DDTTYLogger sharedInstance]];
[[DDTTYLogger sharedInstance] setColorsEnabled:YES];

测试颜色显示的代码:

DDLogError(@"Paper jam");
DDLogWarn(@"Toner is low");
DDLogInfo(@"Warming up printer (pre-customization)");
DDLogVerbose(@"Intializing protcol x26 (pre-customization)");

2、彩色日志显示需要插件XcodeColors插件支持,这个插件我下载的是https://github.com/rvi/XcodeColors里面的,因为它支持了Xcode6.3。

3、用CocoaLumberjack Demo里自带的TextXcodeColors工程测试,pod install后打开TextXcodeColors.xcodeproj,编译提示ld: library not found for -lPods-TXC_ios-CocoaLumberjack

又是一个坑。一般来说,pod install后应该生成xcworkspace文件,但是没有生成TextXcodeColors.xcworkspace文件,我就奇怪了。后来才发现,应该是打开Demos.xcworkspace,然后在里面选择TextXcodeColors这个target,当然前提是先要进入TextXcodeColors文件夹执行pod install才行。尽量使用“pod install --verbose --no-repo-update”

4、Demo里测试日志颜色正常,在自己的项目里就不会显示颜色

坑3。奥秘在于要对Project的Scheme作了如下调整:

In Xcode bring up the Scheme Editor (Product -> Edit Scheme...)
    Select "Run" (on the left), and then the "Arguments" tab
    Add a new Environment Variable named "XcodeColors", with a value of "YES"

参考:
iOS开源项目之日志框架CocoaLumberjack
利用 CocoaLumberjack 搭建自己的 Log 系统

Colorful XCode Console

时间: 2024-10-15 10:56:38

配置CocoaLumberjack的一些问题记录的相关文章

Log4Net在MVC下的配置以及运用线程队列记录异常信息

Log4Net是用来记录日志的,可以将程序运行过程中的信息输出到一些地方(文件.数据库.EventLog等),日志就是程序的黑匣子,可以通过日志查看系统的运行过程,从而发现系统的问题.日志的作用:将运行过程的步骤.成功失败记录下来,将关键性的数据记录下来分析系统问题所在.Log4J.对于网站来讲,不能把异常信息显示给用户,异常信息只能记录到日志,出了问题把日志文件发给开发人员,就能知道问题所在. 配置Log4Net环境 (1)新建一个WebApplication (2)添加对log4net.dl

在centos6.4上配置vim的一些零碎记录

上一篇日志已经step by step地实录了如何在本机mac上配置vim开发环境已经各种插件. 有了一定经验之后,把配置vim的环境到了实验室远程server上centos6.4的环境下配置,这台机器是内网服务器连外网比较麻烦. 主要就是多了server无法联网的条件,这个将来在公司配置开发机环境也是基本不能联网的,所以就当提前适应了吧. 这里把遇到的一些关键点记录下来,以便后个人后续查阅. 编译vim74 由于YouCompleteMe插件需要vim7.3高版本支持:而server上的vim

配置apache日志,分别记录不同搜索引擎爬虫的访问记录

编辑/usr/local/apache/conf/extra/http_vhost.conf,在添加的虚拟主机中配置日志如下: SetEnvIfNoCase User-Agent Baiduspider baidu_robot   #百度访问日志 SetEnvIfNoCase User-Agent Googlebot   google_robot    #谷歌访问日志 SetEnvIfNoCase User-Agent 360Spider   360__robot SetEnvIfNoCase

c3p0和jdbcTemplate配置oracle集群RAC记录

PERAC = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 131.197.17.137)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 131.197.17.138)(PORT = 1521)) (LOAD_BALANCE = yes) (FAILOVER = ON) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = pe) (FA

安装完Kali linux 之后 需要配置的一些 常用软件 记录

apt 阿里云 deb http://mirrors.aliyun.com/kali sana main non-free contribdeb http://mirrors.aliyun.com/kali-security/ sana/updates main contrib non-freedeb-src http://mirrors.aliyun.com/kali-security/ sana/updates main contrib non-free 前言 最近实在无法忍受在 vmwar

win10 Oracle11g 64位配置PL/SQL Developer【记录】

在 http://download.csdn.net/download/wuqinfei_cs/7740373 下载PL/SQL Developer. 1.  解压,在instantclient_11_2目录下新建NETWORK文件夹,再在其下新建ADMIN文件夹.将oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN目录下的tnsnames.ora复制到之前新建的ADMIN文件夹中. 2.  右键计算机属性,高级系统设置,环境变量.在系统变量中新建 变量:N

log4j配置相对路径实现日志记录

从网上简单搜索了一下,发现有三种介绍的方法.总结在这里1. 解决的办法自然是想办法用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如: log4j.appender.logfile.File=${WORKDIR}/logs/app.log 其中“${WORKDIR}/”是个变量,会被System Property中的“WORKDIR”的值代替.这样,我们就可以在log4j加载配置文件之前,先用System.setProperty设置好根路径. 在 没有发现这个

【BIEE】超过了已配置的最大允许输入记录数

声明:BIEE版本为Oracle Business Intelligence 11.1.1.7.160719 BIEE打开报表报错如下: 如果你是英文版的错误如下: "View Display ErrorExceeded configured maximum number of allowed input records.Error DetailsError Codes: EKMT3FK5:OI2DL65P 出现这个问题,我们需要到路径biee\instances\instance1\confi

Ubuntu18.04 配置TensorRT6.0爬坑记录

首先这是一个不完美的配置,因为Cudnn版本和TensorRT的版本并没有完全对上,运行的时候会报警告. 另:如果不做第四步TensorRT的配置大家可以将这篇文章视为一篇简单的深度学习环境配置文. 列一下版本号 Ubuntu 18.04 Cuda:10.1 Cudnn:7.6.0 Miniconda3:4.7.10 Pycharm:2019.2.3 TensorRT:6.0.1.5 步骤: Nvidia驱动 Cuda和Cudnn Miniconda和Pycharm 安装并在环境中配置Tenso