使用nodeJs koa2框架開發(fā)后端應(yīng)用,使用koa-log4中間件管理nodeJs訪問日志、系統(tǒng)日志。一、安裝koa-log4
因為項目使用了koa2,所以安裝的高版本的log4,
$ npm i --save koa-log4@2
如果使用koa1,請使用指令
$ npm i --save koa-log4@1
koa-log4 Npm主頁
二、新建log4.js文件來配置log4const path = require("path");//引入原生path模塊 const log4js = require("koa-log4");//引入koa-log4 log4js.configure({ appenders: { //訪問日志 access: { type: "dateFile", pattern: "-yyyy-MM-dd.log", //通過日期來生成文件 alwaysIncludePattern: true, //文件名始終以日期區(qū)分 encoding:"utf-8", filename: path.join("logs/", "access.log") //生成文件路徑和文件名 }, //系統(tǒng)日志 application: { type: "dateFile", pattern: "-yyyy-MM-dd.log", //通過日期來生成文件 alwaysIncludePattern: true, //文件名始終以日期區(qū)分 encoding:"utf-8", filename: path.join("logs/", "application.log") //生成文件路徑和文件名 }, out: { type: "console" } }, categories: { default: { appenders: [ "out" ], level: "info" }, access: { appenders: [ "access" ], level: "info" }, application: { appenders: [ "application" ], level: "WARN"} } }); exports.accessLogger = () => log4js.koaLogger(log4js.getLogger("access")); //記錄所有訪問級別的日志 exports. systemLogger = log4js.getLogger("application"); //記錄所有應(yīng)用級別的日志三、如何使用日志
訪問日志--記錄用戶所有訪問請求,以中間件的形式在koa入口使用即可
const Koa = require("koa"); const app = new Koa(); const { accessLogger,systemLogger, } = require("./logger"); const router = new KoaRouter(); app.use(accessLogger()); //中間件
系統(tǒng)日志--記錄系統(tǒng)狀態(tài)的error
app.on("error", err => {logger.error(err); });四、效果
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/100614.html
摘要:一是什么是可以用于生產(chǎn)環(huán)境的的進(jìn)程管理工具,并且它內(nèi)置一個負(fù)載均衡。嗯嗯,最好的用處就是監(jiān)控我們的生產(chǎn)環(huán)境下的程序運行狀態(tài),讓它給我們?nèi)找岳^日的處于工作狀態(tài)。部署自動部署,避免逐個在所有服務(wù)器中進(jìn)行。 一、PM2是什么 是可以用于生產(chǎn)環(huán)境的Nodejs的進(jìn)程管理工具,并且它內(nèi)置一個負(fù)載均衡。它不僅可以保證服務(wù)不會中斷一直在線,并且提供0秒reload功能,還有其他一系列進(jìn)程管理、監(jiān)控...
摘要:參與者流量來自于內(nèi)部系統(tǒng)和外部流量,其中大部分來自于外部流量。水平擴容服務(wù)的水平擴容重要性不言而喻。 背景 目前微店中臺團(tuán)隊為了滿足公司大部分產(chǎn)品、運營以及部分后端開發(fā)人員的嘗鮮和試錯的需求,提供了一套基于圖形化搭建的服務(wù)端接口交付方案,利用該方案及提供的系統(tǒng)可生成一副包含運行時環(huán)境定義可立即運行的工程代碼,最后,通過 某種serverless平臺 實現(xiàn)生成后代碼的部署、CI、運行、反...
摘要:日志規(guī)范一般前端開發(fā)同學(xué),對日志其實不太敏感,畢竟前端大多數(shù)情況下,不太關(guān)心日志。本文主要梳理了目前我們團(tuán)隊在開發(fā)中日志方面存在的問題,以及通過統(tǒng)一日志規(guī)范,希望達(dá)到什么樣的效果。日志格式字段日志格式統(tǒng)一采用,便于解析處理。nodejs 日志規(guī)范 一般前端開發(fā)同學(xué),對日志其實不太敏感,畢竟前端大多數(shù)情況下,不太關(guān)心日志。即使有,也可能調(diào)用一些第三方的統(tǒng)計,比如百度統(tǒng)計或者別的等。在 Node...
閱讀 2233·2021-10-14 09:43
閱讀 2261·2019-08-30 15:55
閱讀 788·2019-08-30 14:23
閱讀 2077·2019-08-30 13:21
閱讀 1294·2019-08-30 12:50
閱讀 2249·2019-08-29 18:46
閱讀 2341·2019-08-29 17:28
閱讀 2431·2019-08-29 17:21