閱讀384 返回首頁    go 新東方


nodejs日誌__常見日誌格式_用戶指南_日誌服務-阿裏雲

Nodejs日誌簡介

Nodejs的日誌默認打印到控製台,這對於收集數據和調查問題非常不方便。通過log4js這個包,可以實現把日誌打印到文件、自定義日誌格式等功能。

var log4js = require('log4js');
log4js.configure({
  appenders: [
    {   
      type: 'file', //文件輸出
      filename: 'logs/access.log', 
      maxLogSize: 1024,
      backups:3,
      category: 'normal' 
    }   
  ]
});
var logger = log4js.getLogger('normal');
logger.setLevel('INFO');
logger.info("this is a info msg");
logger.error("this is a err msg");

日記輸出到文件中,是這樣的:

[2016-02-24 17:42:38.946] [INFO] normal - this is a info msg
[2016-02-24 17:42:38.951] [ERROR] normal - this is a err msg

log4js的輸出級別6個: trace, debug, info, warn, error, fatal

Nodejs日誌接入SLS配置

以上述樣例為例 日誌正則式為:

[([^]]+)]s[([^]]+)]s(w+)s-(.*)

分別提取出:

time,level,loggerName,message

Nodejs 訪問日誌樣例

[2016-01-31 12:02:25.844] [INFO] access - 42.120.73.203 - - "GET /user/projects/ali_sls_log?ignoreError=true HTTP/1.1" 304 - "https://
aliyun.com/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.97 Safari/537.36"

生成的正則式:

[([^]]+)]s[(w+)]s(w+)s-s(S+)s-s-s"([^"]+)"s(d+)[^"]+("[^"]+)"s"([^"]+).*

分別提取的字段有:

time,level,loggerName,ip,request,status,referer,user_agent

最後更新:2016-11-23 17:16:06

  上一篇:go log4j日誌__常見日誌格式_用戶指南_日誌服務-阿裏雲
  下一篇:go wordpress日誌__常見日誌格式_用戶指南_日誌服務-阿裏雲