log4js node日志插件

最近不是特别忙在用express搭建后台项目,在开发过程中遇到了需要输入日志的问
本来想直接用node自带的console来实现,后来发现console输出的日志达不到自己希望的
日志格式,后来各种百度发现了log4js插件,本文来记录log4js插件使用

日志显示如图

日志图

const log4js = require('log4js');  
  
// 配置log4js  
log4js.configure({  
    appenders: {  
        // 定义一个appender,名为'out',类型为'stdout',表示日志将输出到控制台  
        out: { type: 'stdout' },  
        // 定义一个appender,名为'info',类型为'file',表示日志将被写入文件  
        // filename属性指定了日志文件的路径,这里设置为项目根目录下的'log.log'  
        info: { type: 'file', filename: './log.log' }   
    },  
    categories: {  
        // 定义一个日志类别'default',它使用'out'和'info'这两个appender  
        // level属性设置为'info',表示只有info级别及以上的日志会被记录  
        default: { appenders: ['out', 'info'], level: 'info' }  
        // 如果不想在控制台打印日志,可以去掉'appenders'数组中的'out'  
    }  
});  
  
// 获取一个日志记录器,名为'info',它将使用上面配置的'info' appender  
let logger = log4js.getLogger('info');  
  
// 将配置好的logger导出,以便在其他文件中使用  
module.exports = logger;

上面的代码配置了在express中使用log4js,以便同时在控制台和文件中记录日志。通过调整配置,你可以灵活地控制日志的输出方式和级别。

使用插件需要先

npm install log4js

在文件中引入

const log4js=require('log4js')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/800621.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++客户端Qt开发——常用控件(多元素控件)

5.多元素控件 Qt中提供的多元素控件有: QListWidget QListView QTablewidget QTableview QTreewidget QTreeview xxWidget和xView之间的区别 以QTableWidget和QTableView为例. QTableView是基于MVC设计的控件.QTableView自身不持有数据.使用QTableView的时候需要…

[BJDCTF2020]EzPHP1

知识点:1. url编码绕过 2. %0a绕过 3. post优先级绕过 4. php伪协议 5. 数组的强类型比较绕过 6. 取反绕过 进入之后发现了一个很帅气的页面😎~ 看看网页源代码试试~ 是base32编码,尝试一下解码. https://www.qqxiuzi.cn/bianma/base.php 解…

Java二十三种设计模式-适配器模式(6/23)

适配器模式:使不兼容的接口协同工作的桥梁 引言 适配器模式(Adapter Pattern)是一种结构型设计模式,它允许不兼容的接口之间可以一起工作,通过将一个类的接口转换成客户端期望的另一个接口。 在计算机编程中&#x…

Java | Leetcode Java题解之第237题删除链表中的节点

题目: 题解: class Solution {public void deleteNode(ListNode node) {node.val node.next.val;node.next node.next.next;} }

Windows上LabVIEW编译生成可执行程序

LabVIEW项目浏览器(Project Explorer)中的"Build Specifications"就是用来配置项目发布方法的。在"Build Specifications"右键菜单中选取"New",可以看到程序有几种不同的发布方法:Application(EXE)、Installer、.Net Inte…

Redis的热key解决

1、Redis热Key会带来哪些问题 1、流量集中,达到物理网卡上限。 当某一热点 Key 的请求在某一主机上超过该主机网卡上限时,由于流量的过度集中,会导致服务器中其它服务无法进行。 2、请求过多,缓存分片服务被打垮。 如果热点过于…

深入理解缓冲区:提升程序性能的关键

深入理解缓冲区:提升程序性能的关键 1、什么是缓冲区?2、缓冲区的作用3、缓冲区在Java中的应用4、如何操作缓冲区5、总结 💖The Begin💖点点关注,收藏不迷路💖 缓冲区(Buffer)是一种…

mac电脑pdf合并,macpdf合并成一个pdf

在数字化办公和学习的今天,pdf文件因其跨平台兼容性强、格式稳定而成为了最受欢迎的文档格式之一。但随之而来的问题也接踵而至,如何将多个pdf文件合并为一个?这不仅关系到文档的整洁性,更是时间管理的重要环节。今天,…

安全防御:防火墙基本模块

目录 一、接口 1.1 物理接口 1.2 虚拟接口 二、区域 三、模式 3.1 路由模式 3.2 透明模式 3.3 旁路检测模式 3.4 混合模式 四、安全策略 五、防火墙的状态检测和会话表技术 一、接口 1.1 物理接口 三层口 --- 可以配置IP地址的接口 二层口: 普通二层…

CSS在页面中使用的三种方式:行内样式、内嵌式样式表、链接式样式表

CSS样式如何在页面中使用,包含三种方式:行内样式、内嵌式样式表、链接式样式表。 CSS样式的使用系列博文: 《CSS在页面中使用的三种方式:行内样式、内嵌式样式表、链接式样式表》 《CSS选择器:基本选择器、复合选择器、…

[Vulnhub] violator ProFTPD+权限提升

信息收集 IP addressOpening Ports192.168.101.148TCP:21,80,2121 $ nmap -p- 192.168.101.148 --min-rate 1000 -sC -sV PORT STATE SERVICE VERSION 21/tcp open ftp ProFTPD 1.3.5rc3 80/tcp open http Apache httpd 2.4.7 ((Ubuntu)) |_http-title: I Say...…

isaac sim中添加fix joint时,坐标系固定不动问题

例如想为机械臂末端增加一个工具坐标系,此时在flange中添加fixjoint,并依次添加flage和xform 如何xfrom没有添加rigid body属性的话,那么xfrom坐标系就会固定在世界坐标系中,程序启动后机械臂会移动到该坐标系处,并且无…

SpringBoot实现图形验证码

目录 项目创建 前端代码实现 约定前后端交互接口 需求分析 接口定义 Hutool工具 实现服务器端代码 引入依赖 获取验证码 验证码校验 调整前端代码 随着安全性的要求越来越高,目前许多项目中都使用了验证码,验证码也有各种类型,如 …

JavaWeb(四:Ajax与Json)

一、Ajax 1.定义 Ajax(Asynchronous JavaScript And XML):异步的 JavaScript 和 XML AJAX 不是新的编程语言,指的是⼀种交互方式:异步加载。 客户端和服务器的数据交互更新在局部页面的技术,不需要刷新…

android13 frameworks里面常用的保存信息或者版本判断的方法

总纲 android13 rom 开发总纲说明 目录 1.前言 2. 数据库 2.1 代码读取用法参考 3.prop 属性配置 3.1 property的key值有哪些特点 4.区别 5. 其他数据存储 6.彩蛋 1.前言 frameworks 不像我们一般开发app那样,很多应用保存的方法都无法使用。这里记录我们系统rom开…

【首发】分享一款三网话费余额查询的API系统

描述 对于计算机专业的小伙伴来说,多熟悉一个系统就多一份就业机会! 今天给大家分享一款三网话费余额查询的API系统 亲测可运行!! 内容 目前主要的内容以php为主,对于学习php有比较大的帮助! 但是网络上…

信息系统项目管理师(高项)—学习笔记二

第一章 以下是上一篇(信息系统项目管理师(高项)—学习笔记)的续写,因为是之前记录的,这一篇还是细致到每一个小节的内容,有些过于复杂了,后续会简化~ 1.3 现代化创新发展 党的十九…

亚信安全发布2024年第24期《勒索家族和勒索事件监控报告》

本周态势快速感知 本周,勒索软件LockBit涉嫌对美国一家生产乙烯基产品的公司(Homeland Vinyl)进行攻击。LockBit声称他们已窃取了销售、库存、财务交易数据及其他公司记录,并声明将于2024年7月19日公开这些被盗信息。本周全球共监…

基于双向长短期记忆 BiLSTM 实现股票单变量时间序列预测(PyTorch版)

前言 系列专栏:【深度学习:算法项目实战】✨︎ 涉及医疗健康、财经金融、商业零售、食品饮料、运动健身、交通运输、环境科学、社交媒体以及文本和图像处理等诸多领域,讨论了各种复杂的深度神经网络思想,如卷积神经网络、循环神经网络、生成对…

GitHub连接超时问题 Recv failure: Connection was reset

用手机热点WIF拉取git项目的时候,遇到Recv failure: Connection was reset问题。 解决办法 一、手动开启本地代理 二、在终端(cmd)输入命令 git config --global http.proxy http://127.0.0.1:7890 git config --global https.proxy https:…