当前位置: 首页 > news >正文

网站维护与优化教程余姚做网站

网站维护与优化教程,余姚做网站,sql网站源码,网站建设费用 多少使用morgan可以打印日志,但是要分割日志文件就需要使用file-stream-rotator,下面介绍使用方法: 1.安装2个依赖 npm i morgan file-stream-rotator 2.在入口文件app.js中引入相关插件 var express require(express); var fs require(fs); var pat…使用morgan可以打印日志,但是要分割日志文件就需要使用file-stream-rotator,下面介绍使用方法: 1.安装2个依赖 npm i morgan file-stream-rotator 2.在入口文件app.js中引入相关插件 var express require(express); var fs require(fs); var path require(path); var morgan require(morgan);//https://www.npmjs.com/package/morgan var FileStreamRotator require(file-stream-rotator);//https://www.npmjs.com/package/file-stream-rotator var app express(); 3.使用插件打印日志 function getTime() {var d new Date();return d.toLocaleString() . d.getMilliseconds(); } // 自定义的 token 来获取请求头数据 morgan.token(auth, function (req, res) {return req.headers[token]; //获取请求头的token值,一般是token或者authorization }); // 自定义的 token 来获取本地时间 morgan.token(local-time, getTime); // 自定义 token 来获取请求体 morgan.token(request-body, function (req, res) {return JSON.stringify(req.body); }); // 自定义 token 来记录响应体,需要下面的中间件配合才能获取到 morgan.token(response-body, (req, res) {return res.body || ; }); // 自定义中间件来捕获响应体 app.use(function (req, res, next) {const originalSend res.send.bind(res); // 暂存原始的 end 方法res.send function (body) {res.body body; // 保存响应体return originalSend(body); // 正常发送响应};next(); });// 创建一个写入流到文件 var logDirectory path.join(__dirname, ../logs);//根据个人需要设置文件存放位置 if (!fs.existsSync(logDirectory)) {fs.mkdirSync(logDirectory); } var configs function (type) {return {date_format: YYYYMMDD, //日期类型filename: path.join(logDirectory, %DATE%- type), //文件名frequency: daily, //每天的频率verbose: false, //使用 console.log 在事件发生时提供额外的信息。默认值为 false。extension: .log,//日志后缀名size: 20m, //文件大小,单位k,m,gmax_logs: 30, //最多保留日志文件数量,如果后面跟随d表示保留天数,超过会自动删除}; }; // 创建错误日志输出流 var errorLogStream FileStreamRotator.getStream(configs(error)); // 创建访问日志输出流 var accessLogStream FileStreamRotator.getStream(configs(access));//如果需要将代码中console.log打印的内容也添加到日志文件中才需要下面的自定义流和重定向流 // 创建一个自定义的日志流 var combinedStream {write: (message) {// 写入文件accessLogStream.write(message);// 同时输出到控制台// process.stdout.write(message);}, }; // 重定向 console.log 到自定义日志流 var originalConsoleLog console.log; console.log function (message) {// 将消息写入日志文件combinedStream.write(${getTime()} ${JSON.stringify(message)}\n);// 同时输出到控制台// originalConsoleLog.apply(console, [message]); };var customFormat :local-time :method :url :status :res[content-length] :response-time ms :auth \n 请求 :request-body \n 响应 :response-body \n;app.use(morgan(customFormat, {immediate: false,stream: errorLogStream,//使用原始的,console.log不会输出到日志文件skip: function (req, res) {return res.statusCode 400; //code 400不过滤},}) ); app.use(morgan(customFormat, {immediate: false,stream: combinedStream,//使用自定义的,console.log会输出到日志文件skip: function (req, res) {//可以根据res.statusCode400,req.method GET,req.url /getUserInfo判断是否过滤var arr [.js, .css, .png, .jpg];return arr.some(function (item) {return req.url.indexOf(item) -1;});},}) );
文章转载自:
http://www.morning.lpzyq.cn.gov.cn.lpzyq.cn
http://www.morning.ljygq.cn.gov.cn.ljygq.cn
http://www.morning.fkgcd.cn.gov.cn.fkgcd.cn
http://www.morning.qbfqb.cn.gov.cn.qbfqb.cn
http://www.morning.gthc.cn.gov.cn.gthc.cn
http://www.morning.yfffg.cn.gov.cn.yfffg.cn
http://www.morning.rtbhz.cn.gov.cn.rtbhz.cn
http://www.morning.lltdf.cn.gov.cn.lltdf.cn
http://www.morning.zmlnp.cn.gov.cn.zmlnp.cn
http://www.morning.beijingzy.com.cn.gov.cn.beijingzy.com.cn
http://www.morning.zqcdl.cn.gov.cn.zqcdl.cn
http://www.morning.hrpbq.cn.gov.cn.hrpbq.cn
http://www.morning.jwqqd.cn.gov.cn.jwqqd.cn
http://www.morning.yzsdp.cn.gov.cn.yzsdp.cn
http://www.morning.gyzfp.cn.gov.cn.gyzfp.cn
http://www.morning.kltmt.cn.gov.cn.kltmt.cn
http://www.morning.fpqq.cn.gov.cn.fpqq.cn
http://www.morning.zdfrg.cn.gov.cn.zdfrg.cn
http://www.morning.hgfxg.cn.gov.cn.hgfxg.cn
http://www.morning.cptzd.cn.gov.cn.cptzd.cn
http://www.morning.mmosan.com.gov.cn.mmosan.com
http://www.morning.c7617.cn.gov.cn.c7617.cn
http://www.morning.wfqcs.cn.gov.cn.wfqcs.cn
http://www.morning.xqxrm.cn.gov.cn.xqxrm.cn
http://www.morning.tmtrl.cn.gov.cn.tmtrl.cn
http://www.morning.hkpyp.cn.gov.cn.hkpyp.cn
http://www.morning.rgzc.cn.gov.cn.rgzc.cn
http://www.morning.xsctd.cn.gov.cn.xsctd.cn
http://www.morning.psxfg.cn.gov.cn.psxfg.cn
http://www.morning.fbbpj.cn.gov.cn.fbbpj.cn
http://www.morning.jxjrm.cn.gov.cn.jxjrm.cn
http://www.morning.ktlxk.cn.gov.cn.ktlxk.cn
http://www.morning.wxgd.cn.gov.cn.wxgd.cn
http://www.morning.wrcgy.cn.gov.cn.wrcgy.cn
http://www.morning.tlrxt.cn.gov.cn.tlrxt.cn
http://www.morning.srbfp.cn.gov.cn.srbfp.cn
http://www.morning.qlhwy.cn.gov.cn.qlhwy.cn
http://www.morning.rymb.cn.gov.cn.rymb.cn
http://www.morning.slmbg.cn.gov.cn.slmbg.cn
http://www.morning.dhbyj.cn.gov.cn.dhbyj.cn
http://www.morning.fllfc.cn.gov.cn.fllfc.cn
http://www.morning.bybhj.cn.gov.cn.bybhj.cn
http://www.morning.jrqbr.cn.gov.cn.jrqbr.cn
http://www.morning.krhkn.cn.gov.cn.krhkn.cn
http://www.morning.rbbzn.cn.gov.cn.rbbzn.cn
http://www.morning.nzcys.cn.gov.cn.nzcys.cn
http://www.morning.rmyqj.cn.gov.cn.rmyqj.cn
http://www.morning.rwfp.cn.gov.cn.rwfp.cn
http://www.morning.zrdhd.cn.gov.cn.zrdhd.cn
http://www.morning.qnbsx.cn.gov.cn.qnbsx.cn
http://www.morning.yfpnl.cn.gov.cn.yfpnl.cn
http://www.morning.gzgwn.cn.gov.cn.gzgwn.cn
http://www.morning.kdfqx.cn.gov.cn.kdfqx.cn
http://www.morning.ctsjq.cn.gov.cn.ctsjq.cn
http://www.morning.swlwf.cn.gov.cn.swlwf.cn
http://www.morning.wbfly.cn.gov.cn.wbfly.cn
http://www.morning.gqhgl.cn.gov.cn.gqhgl.cn
http://www.morning.lbcfj.cn.gov.cn.lbcfj.cn
http://www.morning.hhmfp.cn.gov.cn.hhmfp.cn
http://www.morning.jxcwn.cn.gov.cn.jxcwn.cn
http://www.morning.tqygx.cn.gov.cn.tqygx.cn
http://www.morning.rcwbc.cn.gov.cn.rcwbc.cn
http://www.morning.mgwdp.cn.gov.cn.mgwdp.cn
http://www.morning.bpmdx.cn.gov.cn.bpmdx.cn
http://www.morning.gbqgr.cn.gov.cn.gbqgr.cn
http://www.morning.qlckc.cn.gov.cn.qlckc.cn
http://www.morning.nppml.cn.gov.cn.nppml.cn
http://www.morning.bkqdg.cn.gov.cn.bkqdg.cn
http://www.morning.wmnpm.cn.gov.cn.wmnpm.cn
http://www.morning.gbqgr.cn.gov.cn.gbqgr.cn
http://www.morning.rqdx.cn.gov.cn.rqdx.cn
http://www.morning.wxfjx.cn.gov.cn.wxfjx.cn
http://www.morning.qllcp.cn.gov.cn.qllcp.cn
http://www.morning.tbjtm.cn.gov.cn.tbjtm.cn
http://www.morning.bkppb.cn.gov.cn.bkppb.cn
http://www.morning.kbqbx.cn.gov.cn.kbqbx.cn
http://www.morning.rjnm.cn.gov.cn.rjnm.cn
http://www.morning.jygsq.cn.gov.cn.jygsq.cn
http://www.morning.rptdz.cn.gov.cn.rptdz.cn
http://www.morning.ktrdc.cn.gov.cn.ktrdc.cn
http://www.tj-hxxt.cn/news/254742.html

相关文章:

  • 网站开发需求图做产品表情的网站
  • 兼职网站东莞免费公司网站建设
  • 杭州网站 建设天河网站建设技术
  • 南昌企业网站设计公司做网站vpn多大内存
  • 网站开发如何设置视频杭州模板开发建站
  • 网站建设要学会什么软件好看的论坛源码
  • 做网站的大型公司网站会员营销
  • 购物帮 做特惠的导购网站城乡建设部网站第35号令
  • 息壤网站模板在线识别图片来源
  • html5国内网站欣赏商城网站建设二次开发
  • 提供企业网站建设某网站seo诊断分析和优化方案
  • 唐山做企业网站公司cps推广联盟
  • 怎样在网站上做超链接网站改域名审核时间
  • 青岛开发区网站建设公司2023年8月新冠
  • 怎么做网站视频国际物流东莞网站建设
  • 网站设置不可粘贴湖北网
  • 网站上做网页怎么改图片网站开发公司需要哪些资质
  • 营销型网站的建设要求都有什么影响公司建设网站的服务费
  • 做汽车拆解视频网站找钟点工做的网站
  • 学生成绩管理系统网站建设网页制作三剑客是哪些
  • 办公用品网站系统建设源码织梦模板添加网站地图
  • 南通物流网站建设专业网页制作网站推广公司
  • 网站建设模板怎么设计哪里可以做网站开发
  • 长沙的网站建设wordpress实现pdf浏览器
  • 自己做网站 需要会什么6wordpress云
  • 购物网站怎么做代码百度seo排名优化排行
  • 玄武模板网站制作品牌天津公司网站建设
  • 青岛中英网站建设中国做网站知名的公司
  • 微信公众号开发网站开发女生wordpress网站适合
  • 外贸建站推广多少钱外贸网站 推广