Node.js中Koa2在控制台输出请求日志的方法示例
- 作者: 那晚越女说我?
- 来源: 51数据库
- 2021-08-08
前言
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
控制台输出如下

这样我们就有了一个带时间的请求日志了
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。
推荐阅读
