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笔记的更多相关文章

  1. Express NodeJs Web框架 入门笔记

    Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具. 使用 Express 可以快速地搭建一个完整功能的网 ...

  2. Node.js日志框架选型比較:Winston

    日志对于问题定位.调试,系统性能调优至关重要,尤其是系统复杂以及在线执行的情况下. 好的开发框架都会有一个可开启关闭/可配置记录级别的日志系统.我们从下面几个方面来做选型: 1. 每行日志都须要有准确 ...

  3. SpringBoot学习笔记(13):日志框架

    SpringBoot学习笔记(13):日志框架——SL4J 快速开始 说明 SpringBoot底层选用SLF4J和LogBack日志框架. SLF4J的使用 SpringBoot的底层依赖关系 1. ...

  4. golang日志框架--logrus学习笔记

    golang日志框架--logrus学习笔记 golang标准库的日志框架非常简单,仅仅提供了print,panic和fatal三个函数,对于更精细的日志级别.日志文件分割以及日志分发等方面并没有提供 ...

  5. Spring Boot笔记四:日志框架介绍

    我是一名程序员,我喜欢写System.out.println来打印一些重要的信息...后来我学了面向对象,我把这些输出语句整合到了一个工具类里面,可以打印,也可以保存日志. 我是一名积极思考的程序员, ...

  6. java日志框架笔记-log4j-springboot整合

    # 日志框架slf4j log4j logback之间的关系 简答的讲就是slf4j是一系列的日志接口,而log4j logback是具体实现了的日志框架. ```java SLF4J获得logger ...

  7. 后端——框架——日志框架——logback——《官网》阅读笔记——第一章节

    第一章节搭建了logback日志框架的环境,演示了Hello World的示例,并详细分析了示例. 搭建日志框架的过程非常简单,只需要在项目的classpath上添加以下三个jar包,logback- ...

  8. Nodejs日志管理包

    Nodejs日志管理工具包:log4js 和 winston 1.log4js的使用 1)package.json中加入依赖 "log4js":"~0.6.21" ...

  9. Yii框架学习笔记(二)将html前端模板整合到框架中

    选择Yii 2.0版本框架的7个理由 http://blog.chedushi.com/archives/8988 刚接触Yii谈一下对Yii框架的看法和感受 http://bbs.csdn.net/ ...

随机推荐

  1. Python 3 配置文件处理

    首先安装环境 创建配置文件和读取文件 config.ini 内容 [email] mail_server=xxxxx mail_username=xxxx mail_password=xxxxx ma ...

  2. 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 ...

  3. tkinter 按钮响应函数传值

    tkinter 中的Button组件的响应函数如何传入参数,可能非常困扰新手,这里记录一下. 步骤: 1. 写好响应函数(形参设置好) 2. 在Button command 设置形式:command ...

  4. 【转】常见的tcp/ip协议的知识

    1.tcp/ip协议的层数 左图是osi 7层模型,右图是tcp/ip 4层模型.二者对应关系如上. 2.socket中TCP的三次握手建立连接详解 我们知道tcp建立连接要进行“三次握手”,即交换三 ...

  5. js对属性的操作

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  6. (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 ...

  7. abp学习(四)——根据入门教程(aspnetMVC Web API进一步学习)

    Introduction With AspNet MVC Web API EntityFramework and AngularJS 地址:https://aspnetboilerplate.com/ ...

  8. centos7 安装 mongodb 4.0.0

    原文链接:http://www.webosss.com/article/detail/38 下载mongodb:地址:https://fastdl.mongodb.org/linux/mongodb- ...

  9. python+selenium+chrome初级自动化操作

    例1. #coding=utf- from selenium import webdriver import os,time chromedriver = "C:\Users\AppData ...

  10. (java)selenium webdriver学习--打开新窗口,并判断新窗口是否与目标窗口一致

    描述:selenium webdriver学习--打开新窗口,并判断新窗口是否与目标窗口一致,若一致则切换到该窗口并获取标题 跳出if判断,获取父级标题,并关闭 HTML标签不太明显时,可以用路径表示 ...