GitHub项目推介_XLog

iOS开发调试时控制台的日志的输出缺少分级,一些出错信息往往被忽视。XLog能够在Xcode控制台使用不同颜色区分显示各级别的日志信息,这能帮助你快速的发现出错信息。在旺信项目的日志工具(WXLog)中集成了该插件功能。开启方式:在安装该插件后,开启宏开关DISABLE_COLOR_LOG。

主要是在控制台输出日志时添加日志层级标识以及对应的颜色值。实现函数如下:

+(void)outputLogInfoColorful:(NSString *)logInfo logHead:(NSString *)logHead level:(NSInteger)level   // 将日志输出控制台
{
    NSString *lv_tag = [WXLogUtils getLogLevelTag:level];
    NSString *color = [WXLogUtils getLogLevelColor:level];
    
    printf("%s", [color UTF8String]);
    printf("%s[%s]", [WXLOG_ESC_CH UTF8String], [lv_tag UTF8String]);
    
    printf("\n%s ", [[[NSDate date] description] UTF8String]);
    if(0 == DISABLE_MORE_INFO_LOG)
    {
        printf("%s", [logHead UTF8String]);
    }
    
    printf("%s", [logInfo UTF8String]);
    
    printf("%s[/%s]", [WXLOG_ESC_CH UTF8String], [lv_tag UTF8String]);
    printf("%s", [WXLOG_COLOR_RESET UTF8String]);
    
    printf("\n");
}

+ (NSString *)getLogLevelTag:(NSInteger)level
{
    NSString *levelTag = @"INFO";
    switch(level)
    {
        case WXLOGLEVEL_ERROR: {
            levelTag =  WXLOG_LEVEL_ERROR_TAG;
        } break;
        case WXLOGLEVEL_WARNING: {
            levelTag =  WXLOG_LEVEL_WARN_TAG;
        } break;
        case WXLOGLEVEL_INFO: {
            levelTag =  WXLOG_LEVEL_INFO_TAG;
        } break;
        case WXLOGLEVEL_DEBUG: {
            levelTag =  WXLOG_LEVEL_DEBUG_TAG;
        } break;
        default: {
        } break;
    }
    
    return levelTag;
}

+ (NSString *)getLogLevelColor:(NSInteger)level
{
    NSString *color = WXLOG_COLOR_WHITE;
    
    switch(level)
    {
        case WXLOGLEVEL_ERROR: {
            color =  WXLOG_COLOR_RED;
        } break;
        case WXLOGLEVEL_WARNING: {
            color =  WXLOG_COLOR_BROWN;
        } break;
        case WXLOGLEVEL_INFO: {
            color =  WXLOG_COLOR_GREEN;
        } break;
        case WXLOGLEVEL_DEBUG: {
            color =  WXLOG_COLOR_BLUE;
        } break;
        default: {
        } break;
    }
    
    return color;
}


这是自定义的一套配色:

#define WXLOG_ESC_CH @"\033"
// colors for log level, change it as your wish
#define WXLOG_COLOR_RED     WXLOG_ESC_CH @"#E8202A"
#define WXLOG_COLOR_GREEN   WXLOG_ESC_CH @"#7CFC00"
#define WXLOG_COLOR_BROWN   WXLOG_ESC_CH @"#DAA520"
#define WXLOG_COLOR_BLUE    WXLOG_ESC_CH @"#4169E1"
#define WXLOG_COLOR_WHITE   WXLOG_ESC_CH @"#FFFFFF"

// hard code, use 00000m for reset flag
#define WXLOG_COLOR_RESET   WXLOG_ESC_CH @"#00000m"

#define WXLOG_LEVEL_DEBUG_TAG   @"DEBUG"
#define WXLOG_LEVEL_INFO_TAG    @"INFO"
#define WXLOG_LEVEL_WARN_TAG    @"WARN"
#define WXLOG_LEVEL_ERROR_TAG   @"ERROR"

效果如下:




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值