2011-03-10 29 views
2

有沒有人對可可的選擇性採伐有什麼好的想法?我一直在想着簡單的方法來開啓和關閉一組類(比如我的服務類)。但是,我想找出一種不會迫使我進入日誌記錄級別的方式。我環顧四周,似乎沒有可靠的可可日誌框架,除了可能是log4端口。任何想法,將不勝感激。可可的選擇性採伐

回答

5

我發現Cocoa Lumberjack是一個很好的圖書館。將其集成到您的項目中非常容易,而且可以高度自定義。它還支持GCD,並且與NSLog相比具有非常高的high performance。這些文件都在wiki pages

有幾種不同的方法可以實現你所需要的伐木工,因爲你可以在類/文件級別控制輸出並執行自定義的「上下文」級別過濾。

默認情況下使用「水平」,但不強制您使用它。你可以對底層的LOG宏進行調用,而不是像ERROR,WARN,INFO等默認級別的宏。你也可以重新定義適合的級別。

還有一個github repo

+0

谷歌代碼鏈接不起作用了。但是,GitHub鏈接是有效的。 – antron 2013-06-30 13:31:38

1

例如,如果您願意在每次更改日誌記錄設置後重建應用程序,則可以查看Three20的TTDebug.hTTDebugFlags.h

它以這種方式工作 - 如果DEBUG宏被定義,TTDPRINT宏也被定義並且同樣適用於TTCONDITIONLOG宏。如果未定義DEBUG宏,則仍然可以使用TTDPRINT宏,但它什麼都不做。 TTDCONDITIONLOG可以以這種方式使用:

TTDCONDITIONLOG(DEBUG_MY_SERVICES, @"Hey, my debug message"); 

要啓用調試消息,定義DEBUG宏。如果你想使你的服務的調試消息,只是定義也DEBUG_MY_SERVICES爲:

#define DEBUG_MY_SERVICES 1 

如果你想切換您的服務調試信息關閉,更改1比0

這很容易,它速度快,在大多數情況下都足夠了。