6

我正在使用CocoaLumberjack进行我的应用程序中的所有日志记录。使用它,我可以使用 DDLogVerbose(...) 或任何可用的变体直接登录到文件。

我也在使用fmdb(SQLite 包装器)。问题是这个库使用 NSLog() 并且如果它的输出最终出现在我的日志文件中,则没有。

有没有办法捕获 NSLog 的输出并将其重定向到 CocoaLumberjack 的?或者,如果这不可能,只需“重写”NSLog() 以便它实际执行 DDLogVerbose()?

4

2 回答 2

1

尝试添加

#define NSLog DDLogInfo

到其他库的顶部。当然你需要

#include "Logging.h"

让它工作。

于 2013-07-04T04:21:08.207 回答
1

这可能有效,但它也可能创建一个无限循环,因为 CocoaLumberjack 正在使用 NSLog,因此使用 DDLogInfo 重新定义可能会搞砸。你只需要尝试看看。

于 2013-11-21T10:29:54.957 回答