當前位置

首頁 > 語文基礎 > 日誌 > 關於記錄程式日誌的三種選擇

關於記錄程式日誌的三種選擇

推薦人: 來源: 閱讀: 3.8W 次

1、採用Log4CXX等公共開源日誌元件:這類日誌元件的特點是跨平臺且功能比較強大,例如可以把日誌發往另一臺伺服器或記錄到資料庫中等;另外,可配置性較高,可以通過配置檔案或程式程式碼對日誌進行很多個性化設定。但從另外一個角度看,由於這些優點往往也導致了在使用方面的缺點。首先,對於一般應用程式來說,它們並不需要太多的功能,通常只需要把日誌記錄到檔案或反饋到應用程式,功能太多反正讓使用者使用起來覺得繁瑣還得揹負很多從來都用不到的程式碼。其次,這類日誌元件通常是跨平臺的,並不只是針對 Windows 或 VC 的應用程式,因此使用起來總會覺得有點彆扭,例如他們的字元都是用 char 型別的,對於一個 Unicode 程式來說每次寫日誌都要做字元轉換是很不爽的事情,本座在多年前曾經使用過 Log4Cpp ,程式執行時總是報告日誌元件有記憶體洩露,雖然有可能是誤報,但是使用起來總覺得很不舒服。

關於記錄程式日誌的三種選擇

2、自己寫幾個簡單的類或函式記錄日誌:這種方法的確很簡單,通常都不用一兩百行的程式碼。但這種方法通常缺乏規範性和通用性,其他程式需要記錄類似的但有點差異的日誌時,通常的作法是:Copy-Paste-Modify;另外,這類方法很可能也沒有考慮效能或併發方面的問題,通常是直接在工作執行緒中寫日誌,對於那些效能要求較高的應用程式是絕對不允許的。

3、乾脆不記錄任何日誌:的確,現在很多程式由於各種原因並沒有記錄任何日誌。但本座以為,如果一個程式是有用的,具備一定功能,並且需要連續執行較長一段時間,那麼記錄日誌是必須的;否則,得認真考慮該程式是否有存在的必要了。