2011-12-21 167 views
1

我打算使用syslog來登錄應用程序。我需要能夠在編譯時禁用日誌記錄,也許使用宏。這可能與系統日誌工具有關,還是需要將syslog包裝在我自己的宏/函數中?根據優先級來禁用/啓用日誌消息是一個優點。使用系統日誌時禁用/啓用日誌記錄

回答

1

也許你可以在define塊中打包setlogmask

setlogmask設置掩模(以下簡稱「logmask」),用於確定哪些未來 系統日誌的呼叫應被忽略。如果程序沒有調用setlogmask,則 syslog不會忽略任何調用。您可以使用setlogmask來指定 將來應忽略特定優先級的消息。

是這樣的:

#ifdef LOG_LEVEL1 
setlogmask (LOG_UPTO (LOG_NOTICE)); 
#endif 
#ifdef LOG_LEVEL2 
setlogmask (LOG_UPTO (LOG_WARNING)); 
#endif 
+0

感謝您的答覆。我不知道setlogmask。這不完全是我想要的,但它似乎是我能得到的最好的。 – Elektito 2011-12-25 04:15:20