nodejs 日志框架winston笔记
winston是一款nodejs的日志库,本文以2.1.1版本为例,介绍一下使用方法。
1.基础用法
引用日志库,返回的是一个对象。包含一些构造器,实例方法。

其中transports是日志输出方式。.
Logger是实例构造器,Transport是日志输出实例构造器。最后一块是实例方法,用于输出日志,log是常规方法,剩余的是指定日志类型的方法。
使用默认的日志实例进行日志输出

1.1 自定义日志实例

使用Logger构造器创建实例,需要传入配置项(level,transports等)。Console为默认的输出配置。
1.2 格式化
默认格式化器缺少细节信息,没有时间戳、机器名和进程号,输出格式也不那么适合机器处理。你可以得到所有信息,只是得自己稍微多做点工作。

输出如下,信息更丰富,但依然不那么适合机器处理。
info: Hello world! timestamp=1402286804314, pid=80481
最后,log方法提供了和util.format一样的字符串添补方法:%s替换字符串,%d替换数字(整形或浮点型),%i(替换整形),%f(替换浮点型)
最后一个对象都会被做为meta解析成=形式,比如{name:sc}作为meta会解析成name=sc;

除此之外还可以在transports中配置

输出 1530587425268 INFO sc
2.输出日志(transports)
winston内置的有Console,File,Http三种方式,默认是Console。
Console:输出到终端(控制台),File输出到文件,Http是以流式传输的方式传递给nodejs http或者https请求。
对于每个日志实例都可以通过add方法添加输出方式,用remove方法移除。

2.1 日志分类输出

info.log内会收集所有日志,warn中会收集warn和error类型日志,error中只收集error日志。
文档看完了以后再补
nodejs 日志框架winston笔记的更多相关文章
- Express NodeJs Web框架 入门笔记
Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具. 使用 Express 可以快速地搭建一个完整功能的网 ...
- Node.js日志框架选型比較:Winston
日志对于问题定位.调试,系统性能调优至关重要,尤其是系统复杂以及在线执行的情况下. 好的开发框架都会有一个可开启关闭/可配置记录级别的日志系统.我们从下面几个方面来做选型: 1. 每行日志都须要有准确 ...
- SpringBoot学习笔记(13):日志框架
SpringBoot学习笔记(13):日志框架——SL4J 快速开始 说明 SpringBoot底层选用SLF4J和LogBack日志框架. SLF4J的使用 SpringBoot的底层依赖关系 1. ...
- golang日志框架--logrus学习笔记
golang日志框架--logrus学习笔记 golang标准库的日志框架非常简单,仅仅提供了print,panic和fatal三个函数,对于更精细的日志级别.日志文件分割以及日志分发等方面并没有提供 ...
- Spring Boot笔记四:日志框架介绍
我是一名程序员,我喜欢写System.out.println来打印一些重要的信息...后来我学了面向对象,我把这些输出语句整合到了一个工具类里面,可以打印,也可以保存日志. 我是一名积极思考的程序员, ...
- java日志框架笔记-log4j-springboot整合
# 日志框架slf4j log4j logback之间的关系 简答的讲就是slf4j是一系列的日志接口,而log4j logback是具体实现了的日志框架. ```java SLF4J获得logger ...
- 后端——框架——日志框架——logback——《官网》阅读笔记——第一章节
第一章节搭建了logback日志框架的环境,演示了Hello World的示例,并详细分析了示例. 搭建日志框架的过程非常简单,只需要在项目的classpath上添加以下三个jar包,logback- ...
- Nodejs日志管理包
Nodejs日志管理工具包:log4js 和 winston 1.log4js的使用 1)package.json中加入依赖 "log4js":"~0.6.21" ...
- Yii框架学习笔记(二)将html前端模板整合到框架中
选择Yii 2.0版本框架的7个理由 http://blog.chedushi.com/archives/8988 刚接触Yii谈一下对Yii框架的看法和感受 http://bbs.csdn.net/ ...
随机推荐
- Python 3 配置文件处理
首先安装环境 创建配置文件和读取文件 config.ini 内容 [email] mail_server=xxxxx mail_username=xxxx mail_password=xxxxx ma ...
- bsd pkg install gcc gmake cmake gdb cgdb
bsd pkg install gcc gmake cmake gdb cgdb 安装pkg帮助文档并查看文档# pkg help install# man pkg-install # pkg sea ...
- tkinter 按钮响应函数传值
tkinter 中的Button组件的响应函数如何传入参数,可能非常困扰新手,这里记录一下. 步骤: 1. 写好响应函数(形参设置好) 2. 在Button command 设置形式:command ...
- 【转】常见的tcp/ip协议的知识
1.tcp/ip协议的层数 左图是osi 7层模型,右图是tcp/ip 4层模型.二者对应关系如上. 2.socket中TCP的三次握手建立连接详解 我们知道tcp建立连接要进行“三次握手”,即交换三 ...
- js对属性的操作
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- (Linux基础学习)第二章:CentOS7.4安装教程
001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 ...
- abp学习(四)——根据入门教程(aspnetMVC Web API进一步学习)
Introduction With AspNet MVC Web API EntityFramework and AngularJS 地址:https://aspnetboilerplate.com/ ...
- centos7 安装 mongodb 4.0.0
原文链接:http://www.webosss.com/article/detail/38 下载mongodb:地址:https://fastdl.mongodb.org/linux/mongodb- ...
- python+selenium+chrome初级自动化操作
例1. #coding=utf- from selenium import webdriver import os,time chromedriver = "C:\Users\AppData ...
- (java)selenium webdriver学习--打开新窗口,并判断新窗口是否与目标窗口一致
描述:selenium webdriver学习--打开新窗口,并判断新窗口是否与目标窗口一致,若一致则切换到该窗口并获取标题 跳出if判断,获取父级标题,并关闭 HTML标签不太明显时,可以用路径表示 ...