2012-08-22 10 views
6

私はCocoaLumberjackを私のアプリケーションのすべてのログインに使用しています。これを使用して、DDLogVerbose(...)または使用可能なバリアントのいずれかを使用してファイルに直接ログできます。他のライブラリのCocoaLumberjackとNSLog

私はfmdb(SQLiteラッパー)も使用しています。問題は、このライブラリがNSLog()を使用していて、その出力がログファイルで終わっていない場合です。

NSLogの出力をキャプチャして、それをCocoaLumberjack'sにリダイレクトする方法はありますか?それが不可能な場合は、実際にDDLogVerbose()を実行するようにNSLog()を "書き換え"ますか?他のライブラリの一番上に

#define NSLog DDLogInfo 

を追加

答えて

1

してみてください。もちろん、あなたは

#include "Logging.h" 

が必要です。

+0

ありがとうございました!これは自分のNSLogステートメントではうまくいくが、Appleのログステートメントではうまく動作しない。 – vomako

1

これはうまくいくかもしれませんが、CocoaLumberjackがNSLogを使用しているので、無限ループが発生する可能性があります。したがって、DDLogInfoの再定義によって処理が混乱する可能性があります。試して見てみるだけです。

+0

正しいですが、無限ループがあります。このための回避策はありますか? – ebi

関連する問題