在Ubuntu系统中,Node.js应用程序的日志级别通常是通过应用程序本身的配置来设置的。大多数Node.js应用程序使用第三方日志库,如winston
、morgan
或bunyan
等。这些库允许你根据需要设置不同的日志级别。
以下是一些常见日志库的日志级别设置方法:
在Winston中,你可以为每个传输(transport)设置不同的日志级别。例如,如果你想要将控制台输出的日志级别设置为info
,可以这样配置:
const winston = require('winston');
const logger = winston.createLogger({
level: 'info', // 默认日志级别
format: winston.format.json(),
transports: [
new winston.transports.Console({
level: 'info' // 控制台输出日志级别
})
]
});
Morgan是一个HTTP请求记录器中间件,用于Express应用程序。你可以通过设置环境变量MORGAN_LOG_LEVEL
来更改日志级别:
export MORGAN_LOG_LEVEL=info
或者在你的Express应用程序中直接设置:
const express = require('express');
const morgan = require('morgan');
const app = express();
app.use(morgan('combined', { stream: { write: message => console.log(message.trim()) }, skip: (req, res) => false }));
app.set('env', 'development'); // 设置环境变量MORGAN_LOG_LEVEL为'develop'
在Bunyan中,你可以在创建日志记录器时设置日志级别:
const bunyan = require('bunyan');
const logger = bunyan.createLogger({
name: 'myApp',
level: 'info' // 设置日志级别
});
请注意,这些示例仅适用于相应的日志库。你需要根据你的应用程序使用的日志库进行相应的调整。同时,确保在部署到生产环境之前,将日志级别设置为适当的值,以避免泄露敏感信息。