CocoaPods trunk is moving to be read-only. Read more on the blog, there are 18 months to go.
TestsTested | ✗ |
LangLanguage | Obj-CObjective C |
License | MIT |
ReleasedLast Release | Dec 2016 |
Maintained by laizw.
一个简单美的控制台日志工具
以前都是使用 XcodeColors + CocoaLumberjack,奈何 Xcode 8 不能再使用插件了,只好自己来撸一个了~
YFLog
的宏默认使用的 domain
extern NSString * const YFLoggerDefaultDomain;
[YFLogger logger]; // 使用默认 domain 创建的 logger
typedef enum : NSUInteger {
YFLoggerLevelNone = 0,
YFLoggerLevelError = 1, // ❤️
YFLoggerLevelWarning = 1 << 1, // 💛
YFLoggerLevelDebug = 1 << 2, // 💚
YFLoggerLevelInfo = 1 << 3, // 💙
YFLoggerLevelVerbose = 1 << 4, // 💜
YFLoggerLevelAll = NSUIntegerMax,
} YFLoggerLevel;
// 默认是 YFLoggerLevelAll
[[YFLogger logger] setLoggerLevelMask:YFLoggerLevelAll];
// 如果只想看到 Error 和 Warning
[[YFLogger logger] setLoggerLevelMask:YFLoggerLevelError | YFLoggerLevelWarning];
// 默认开启
[[YFLogger logger] setAllLogsEnable:YES];
YFError(@"YFLogLevelError");
YFWarning(@"YFLogLevelWarning");
YFInfo(@"YFLogLevelInfo");
YFDebug(@"YFLogLevelDebug");
YFVerbose(@"YFLogLevelVerbose");
YFLogError(@"这是完整的 Log");
YFLogWarning(@"使用这一类宏,会追踪当前的方法");
YFLogDebug(@"这一类宏会打印log标志(爱心)和Log的行号+方法名");
YFLogInfo(@"后面才会显示你打印的信息")
YFLogVerbose(@"↓ 下面这个是追踪方法 (FuncTrace)");
YFLogTrace()
NSString *domain = @"YFTestDomain";
[YFLogger addLoggerWithDomain:domain];
YFFlagError(YES, domain, @"这是一个高级用法,可以控制是否打印方法,并且需要绑定一个 domain");
YFFlagVerbose(NO, domain, @"不打印方法和行号");
YFFlagWarning(NO, domain, @"如果 domain 没有绑定,那么使用该 domain 的 Log 信息是不会输出的");
YFFlagDebug(YES, domain, @"目前的 domain 是: %@", domain);
YFFlagInfo(YES, domain, @"下面会用一个没有注册的 domain 来测试打印 --> YFFlagVerbose(YES, @\"OtherDomain\", @\"看不到我看不到我看不到我\");");
YFFlagVerbose(YES, @"OtherDomain", @"看不到我看不到我看不到我");
YFFlagInfo(YES, domain, @"看行号,发现少了一行,因为上一个没有注册 domain 没有打印");
pod "YFLog"
laizw, [email protected]
YFLog is available under the MIT license. See the LICENSE file for more info.