前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一个nodejs里日志文件的实现

一个nodejs里日志文件的实现

作者头像
Jerry Wang
发布2019-05-31 10:49:01
1.4K0
发布2019-05-31 10:49:01
举报

首先使用nodejs标准的文件系统module fs:

代码语言:javascript
复制
const fs = require('fs');

日志一般都要打时间戳,所以导入时间戳工具:

代码语言:javascript
复制
const dateTime = require('node-datetime');

根据不同的日志级别写入本文log文件:

代码语言:javascript
复制
var log = {
  setName:function(message) {
    logName = message;
  },
  all:function(message){
    console.log(getDate() + ' [ ALL   -  '+prepareLogName()+'] '+ message);
    writeMessage(getDate() + ' [ ALL   -  '+prepareLogName()+'] '+ message);
  },
  trace:function(message){
    console.log(getDate() + ' [ TRACE -  '+prepareLogName()+'] '+ message);
    writeMessage(getDate() + ' [ TRACE -  '+prepareLogName()+'] '+ message);
  },
  debug:function(message){
    console.log(getDate() + ' [ DEBUG -  '+prepareLogName()+'] '+ message);
    writeMessage(getDate() + ' [ DEBUG -  '+prepareLogName()+'] '+ message);
  },
  info:function(message){
    debugger;
    console.log(getDate() + ' [ INFO  -  '+prepareLogName()+'] '+ message);
    writeMessage(getDate() + ' [ INFO  -  '+prepareLogName()+'] '+ message);
  },
  warn:function(message){
    console.log(getDate() + ' [ WARN  -  '+prepareLogName()+'] '+ message);
    writeMessage(getDate() + ' [ WARN  -  '+prepareLogName()+'] '+ message);
  },
  error:function(message){
    console.log(getDate() + ' [ ERROR -  '+prepareLogName()+'] '+ message);
    writeMessage(getDate() + ' [ ERROR -  '+prepareLogName()+'] '+ message);
  },
  fatal:function(message){
    console.log(getDate() + ' [ FATAL -  '+prepareLogName()+'] '+ message);
    writeMessage(getDate() + ' [ FATAL -  '+prepareLogName()+'] '+ message);
  },
  off:function(message){
    console.log(getDate() + ' [ OFF   -  '+prepareLogName()+'] '+ message);
    writeMessage(getDate() + ' [ OFF   -  '+prepareLogName()+'] '+ message);
  }
}

writeMessage方法的实现:调用fs同步写入本地日志文件:

代码语言:javascript
复制
function writeMessage(message) {
		pwd = process.cwd();
		fs.appendFileSync(pwd+'/logs/log', message+"\n");
}

最后写入的本地日志文件如下图:

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年02月20日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档