Express js를 출력 파일에 로그인 하시겠습니까?
Express JS 웹 서버를 기록하는 가장 좋은 방법은 무엇입니까? 내장 된 express.logger ()는 화면에 로그 만 표시합니다. / log 폴더의 파일에도 로그인 할 수 있습니까? 또한 현재 로거는 요청과 응답을 자동으로 기록합니다. 일부 응용 프로그램 데이터를 로그 파일에 기록해야합니다. express.logger를 사용하여이 작업을 수행 할 수 있습니까?
감사합니다, Lalith
확장되는 연결 미들웨어를 살펴보십시오. express.logger ()는 connect.logger ()와 동일합니다.
http://expressjs.com/api.html#middleware
http://www.senchalabs.org/connect/logger.html
로거에는 출력을 원하는 위치로 설정할 수있는 스트림 옵션이 있습니다. 기본적으로 stdout으로 보냅니다. 또한 사용할 로그 형식을 지정할 수 있습니다.
Express 또는 Connect 로그를 파일로 보내려면 Node의 writeStream을 사용하십시오 . 예를 들어 익스프레스 로그를 ./myLogFile.log 로 보내 려면 :
다음을 사용하여 추가 모드에서 파일에 대한 스트림을 엽니 다.
var logFile = fs.createWriteStream('./myLogFile.log', {flags: 'a'}); //use {flags: 'w'} to open in write mode
그런 다음 익스프레스 구성에서 다음을 사용하십시오.
app.use(express.logger({stream: logFile}));
connect.logger에서도 작동합니다.
윈스턴 을 시도해야합니다
var logger = new (winston.Logger)({
transports: [
new (winston.transports.Console)(),
new (winston.transports.File)({ filename: 'somefile.log' })
]
});
winston은 다소 어리 석고 다중 전송 로깅 == tee (1)이거나 파일을 추적하고 데이터를 전송하는 것입니다.
log4js 사용 :
var log4js = require('log4js');
log4js.configure({
appenders: [{type: 'console'},
{type: 'file', filename: 'express.log', category: 'dev'}]
});
var logger = log4js.getLogger('dev');
logger.setLevel('DEBUG');
app.use(log4js.connectLogger(logger, {level: log4js.levels.DEBUG}));
Node.js의 경우 http://learnboost.github.com/cluster/ 클러스터를 시도해야합니다 . Express를 사용하여 앱을 빌드하고 클러스터가 로깅을 포함한 나머지 작업을 인수합니다.
- app.use (express.logger ()); // 익스프레스 앱에서, 예 : app.js
- cluster.use (cluster.logger ( 'logs')); // 클러스터 서버에서 예 : server.js
HTTP 요청 로깅 : https://github.com/expressjs/morgan#write-logs-to-a-file
var express = require('express')
var fs = require('fs')
var morgan = require('morgan')
var app = express()
// create a write stream (in append mode)
var accessLogStream = fs.createWriteStream(__dirname + '/access.log', {flags: 'a'})
// setup the logger
app.use(morgan('combined', {stream: accessLogStream}))
app.get('/', function (req, res) {
res.send('hello, world!')
})
참고 URL : https://stackoverflow.com/questions/5489815/logging-in-express-js-to-a-output-file
'programing tip' 카테고리의 다른 글
XML 헤더가 포함 된 경우 C # XmlDocument.LoadXml (string)이 실패하는 이유는 무엇입니까? (0) | 2020.12.03 |
---|---|
XML 속성을 통해 클래스 이름을 어떻게 바꿀 수 있습니까? (0) | 2020.12.03 |
nullable 형식으로 작동하지 않는 null 조건부 연산자? (0) | 2020.12.02 |
.Net Core 및 NuGet (0) | 2020.12.02 |
Visual Studio를 사용하는 GCC? (0) | 2020.12.02 |