nodejs 日志框架winston筆記


winston是一款nodejs的日志庫,本文以2.1.1版本為例,介紹一下使用方法。

1.基礎用法

引用日志庫,返回的是一個對象。包含一些構造器,實例方法。

其中transports是日志輸出方式。.

Logger是實例構造器,Transport是日志輸出實例構造器。最后一塊是實例方法,用於輸出日志,log是常規方法,剩余的是指定日志類型的方法。

使用默認的日志實例進行日志輸出

1.1 自定義日志實例

使用Logger構造器創建實例,需要傳入配置項(level,transports等)。Console為默認的輸出配置。

1.2 格式化

默認格式化器缺少細節信息,沒有時間戳、機器名和進程號,輸出格式也不那么適合機器處理。你可以得到所有信息,只是得自己稍微多做點工作。

輸出如下,信息更豐富,但依然不那么適合機器處理。
info: Hello world! timestamp=1402286804314, pid=80481

最后,log方法提供了和util.format一樣的字符串添補方法:%s替換字符串,%d替換數字(整形或浮點型),%i(替換整形),%f(替換浮點型)

最后一個對象都會被做為meta解析成=形式,比如{name:sc}作為meta會解析成name=sc;

 

 除此之外還可以在transports中配置

輸出 1530587425268 INFO sc

 

2.輸出日志(transports)

winston內置的有Console,File,Http三種方式,默認是Console。

Console:輸出到終端(控制台),File輸出到文件,Http是以流式傳輸的方式傳遞給nodejs http或者https請求。

對於每個日志實例都可以通過add方法添加輸出方式,用remove方法移除。

 2.1 日志分類輸出

info.log內會收集所有日志,warn中會收集warn和error類型日志,error中只收集error日志。

 

文檔看完了以后再補

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com