簡體   English   中英

使用Bunyan記錄器登錄Node.js

[英]Logging in nodejs using bunyan logger

我在nodejs代碼中初始化bunyan記錄器,如下所示:

var log = bunyan.createLogger({
    name: 'myapp',
    stream: process.stdout,
    level: 'info'
});

這是來自https://www.npmjs.org/package/bunyan上的bunyan文檔

文檔提到默認情況下,日志輸出為stdout並處於“信息”級別。

我想知道的是,記錄器是否應要求我在其中記錄事情的文件名。 日志記錄在哪里發生?

嘗試這個 ...

var Logger = require('bunyan');
var applogger = new Logger({
  name: 'helloapi',
  streams: [
    {
      level: 'info',
      path: './log/applogging.log'
    }
  ]
});

檢查其主頁以獲取更多說明https://github.com/trentm/node-bunyan#streams-introduction

希望這有所幫助。 :)

process.stdout is for Logging on Console.

如果要登錄文件,則需要提供不同的流。

var log = bunyan.createLogger({ 
                name: 'myapp',
                streams: [
                    {
                        level: 'trace',
                        stream: process.stdout
                    },
                    {
                        level: 'warn',
                        path: './filename.log'
                    }
                ]
            });

安裝bunyan記錄器的步驟:

npm install bunyan bunyan-rotating-file-stream --save

通過bunyan-rotating-file-stream模塊,我們可以將日志文件設置為datetime。

手動創建日志文件夾。

    var bunyan  = require('bunyan');
    var RotatingFileStream = require('bunyan-rotating-file-stream');

    var applogger = new bunyan.createLogger({
        name: 'project name',            
        streams: [{
            stream: new RotatingFileStream({
                type: 'rotating-file',
                path: './logs/server-%Y%m%d.log',
                period: '1d',          // daily rotation 
                totalFiles: 2,        // keep up to 10 back copies 
                rotateExisting: true,  // Give ourselves a clean file when we start up, based on period 
                threshold: '10m',      // Rotate log files larger than 10 megabytes 
                totalSize: '20m',      // Don't keep more than 20mb of archived log files 
                gzip: true,             // Compress the archive log files to save space 
                template: 'server-%Y%m%d.log' //you can add. - _ before datestamp.
            })
        }]
    });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM