NodeJS – 為 console.log 加上時間與檔案紀錄。

如果你有開發 Node.js 的經驗,一定相當常運用其內建的 console.log() 來作為 Debug 的方式之一。

而當整個系統完成或上線之後,就比較無法使用這種方式去找後續發生的問題,因為我們不見得能看到系統端終端機中的內容,但若為了這個紀錄功能要多寫一個 function 然後替換掉原本拿來 debug 用的 console.log …這也太麻煩了吧。

幸運的是,JavaScript 允許你用 Override 的方式來覆寫原有的程式,改成你所需要的樣子。

等一下我們就要來覆寫 console.log 這個 function 來為它加入時間戳記以及寫入一個檔案作為紀錄的功能。

開始之前

在這支程式中,我為了方便產生時間格式,有使用到 date-utils 這個模組,所以請記得在你的 Node.js 專案資料夾中安裝

並在程式碼上方加入

已便使用這個模組提供的 toFormat 功能。

程式碼

在你的程式中加入:

然後執行你的程式,應該就會看到類似下方的訊息,這樣是不是更好紀錄與找問題了呢?

參考來源:http://davidherron.com/blog/2014-04-26/overriding-consolelog-nodejs-and-other-thoughts-about-logging-node-apps

您的見解

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料