JavaScript

超轻量级php框架startmvc

Node.js中Koa2在控制台输出请求日志的方法示例

更新时间:2020-08-24 21:36:01 作者:startmvc
前言Koa2真的是个很轻量的框架,轻量到路由都作为了模块单独了出来,Koa2也没有日志功能

前言

Koa2真的是个很轻量的框架,轻量到路由都作为了模块单独了出来,Koa2也没有日志功能,如果我们需要有一些请求的日志和时间,我们就需要引入日志中间件

下面话不多说了,来一起看看详细的介绍吧

引入时间格式化库MomentJS

安装MomentJS


npm install moment --save

简单格式化时间

使用YYYY-MM-DD HH:MM:SS代表 年-月-日 时-分-秒(24小时制)


 console.log(Moment().format('YYYY-MM-DD HH:MM:SS'));

输出

2019-05-01 20:05:95

使用Koa2日志中间件

安装koa-logger


npm install koa-logger --save

如果需要使用TS,需要安装TS类型声明


npm install @types/koa-logger --save

简单使用koa-logger


const Koa = require("koa"); 
const Koa_Logger = require("koa-logger"); // 日志中间件
const Koa_Router = require("koa-router");

// 实例化
const app = new Koa(); 
const logger = Koa_Logger(); 
const router = new Koa_Router();

router.get("/",async (ctx)=>{
 ctx.body = "Hellow Koa";
});

// 使用中间件 
app.use(logger); // 日志输出

app.use(router.routes()); // 路由

// 启动app
app.listen(3000); // 设置监听端口
// 启动标识
console.log("Koa运行在:http://127.0.0.1:3000"); 

访问http://localhost:3000/,页面显示

控制台输出

给请求日志添加时间

改变一下logger的调用方式,加入moment格式化后的时间


const Koa = require("koa"); 
const Koa_Logger = require("koa-logger"); // 日志中间件
const Koa_Router = require("koa-router");
const Moment = require("moment");
// 实例化
const app = new Koa(); 
const logger = Koa_Logger((str) => { // 使用日志中间件
 console.log(Moment().format('YYYY-MM-DD HH:MM:SS')+str);
}); 
const router = new Koa_Router();

router.get("/",async (ctx)=>{
 ctx.body = "Hellow Koa";
});

// 使用中间件 
app.use(logger); // 日志输出

app.use(router.routes()); // 路由

// 启动app
app.listen(3000); // 设置监听端口
// 启动标识
console.log("Koa运行在:http://127.0.0.1:3000"); 

分别访问http://localhost:3000/ 、http://localhost:3000/?test

控制台输出如下

这样我们就有了一个带时间的请求日志了

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。

node.js koa2 koa2输出请求日志