我正在使用CocoaLumberjack进行应用中的所有日志记录。使用这个我可以使用DDLogVerbose(...)或任何可用的变体直接登录到文件。
我也在使用fmdb(SQLite包装器)。问题是这个库使用NSLog(),如果它的输出最终在我的日志文件中,则使用none。
有没有办法捕获NSLog的输出并将其重定向到CocoaLumberjack?或者,如果这不可能,只需“重写”NSLog(),以便它实际执行DDLogVerbose()?
答案 0 :(得分:1)
尝试添加
#define NSLog DDLogInfo
到其他库的顶部。当然你需要
#include "Logging.h"
让它发挥作用。
答案 1 :(得分:1)
这可能有效,但它也可以创建一个无限循环,因为CocoaLumberjack正在使用NSLog,因此使用DDLogInfo重新定义可能会搞砸。你只需要试着看看。