Morgan是一个node.js关于http请求的日志中间件

安装模块

npm install morgan --save #保存到package.json的依赖列表
1
使用方法

在终端打印日志
...
var logger = require('morgan');
...
app.use(logger('dev'));
...
1
2
3
4
5
每次http请求,express实例都会输出日志,并且使用一致的格式

GET / 200 338.136 ms - 170
POST / 404 60.506 ms - 1225
GET /users 200 2.432 ms - 23
POST /users 404 43.958 ms - 1225
1
2
3
4
将日志写入文件
var express = require('express');
var logger = require('morgan');//日志模块
var fs = require('fs');//文件模块

var app = express();
var accessLogStream = fs.createWriteStream(__dirname+'/access.log',{flags:'a'});//创建一个写入流
app.use(logger('combined',{stream:accessLogStream}));//将日志写入文件
app.get('/',function(req,res){
res.send('hello world');
})

app.listen(3000);
1
2
3
4
5
6
7
8
9
10
11
12
13
一天一个日志文件
var express=require('express');
var logger=require('morgan');
var fs=require('fs');
var FileStreamRotator = require('file-stream-rotator');

var app=new express();

//设置日志文件目录
var logDirectory=__dirname+'/logs';
//确保日志文件目录存在 没有则创建
fs.existsSync(logDirectory)||fs.mkdirSync(logDirectory);

//创建一个写路由
var accessLogStream=FileStreamRotator.getStream({
filename:logDirectory+'/accss-%DATE%.log',
frequency:'daily',
verbose:false
})

app.use(logger('combined',{stream:accessLogStream}));//写入日志文件

app.get('/',function(req,res){
res.send('hello world');
});

app.listen(3000);
---------------------
作者:no-96
来源:CSDN
原文:https://blog.csdn.net/qq_14998713/article/details/62416901
版权声明:本文为博主原创文章,转载请附上博文链接!

最新文章

  1. MYSQL介绍安装及一些问题解决
  2. go:defer
  3. css3属性column知多少
  4. 史上最简单的个人移动APP开发入门--jQuery Mobile版跨平台APP开发
  5. Thread的第四天学习
  6. CSS常见问题及兼容性
  7. hdu 3853 LOOPS(概率 dp 期望)
  8. delphi 获取硬盘序列号、cpu号、bios号、网卡号
  9. Spring cloud 学习资料整理
  10. 【bzoj 4407】于神之怒加强版
  11. webpack4打包nodejs项目进阶版——多页应用模板
  12. SP5973 SELTEAM - Selecting Teams
  13. 自我分析-Spring IOC
  14. macbook中gcc替换为gnu gcc
  15. Django之ModelForm(二)-----ModelForm组件
  16. [QPlugins]学习大纲
  17. jenkins定时
  18. 剑指offer——面试题5:替换空格
  19. 网页播放rtsp流媒体
  20. (译)关于使用Eclipse Memory Analyzer的10点小技巧

热门文章

  1. Idea-每次修改JS文件都需要重启Idea才能生效解决方法
  2. 概率图模型 基于R语言 这本书中的第一个R语言程序
  3. Vue(九)小案例 - 百度搜索列表(跨域)
  4. Mac下安装pyenv
  5. Linux内存管理学习资料
  6. Wordpress页面只显示一篇文章
  7. Mysql中DDL, DML, DCL, 和TCL是什么?
  8. Error-MVC: 未能找到路径“D:\\DsWeb\DS.Web\dist\bin\roslyn\csc.exe”的一部分。
  9. boost::filesystem经常使用使用方法具体解释
  10. select 与 time.After 配合使用的问题