Morgan 설치하기

 

Morgan은 NodeJS를 위한 HTTP request logger middleware 이다.

Morgan을 설치해보자 ( npm i morgan )

https://www.npmjs.com/package/morgan

 

Morgan사용법


https://www.npmjs.com/package/morgan#examples

 

morgan 함수에는 특정한 사용법이 있다.

이 함수를 호출하면 내가 설정한 대로 middleware를 return 해준다.

morgan과 내가 만들었던 middleware는 사용 방법이 똑같다. 다만 다른 점은, morgan이 조금 더 정교하다는 것이다.

morgan은 GET, path, status code, 응답 시간 등의 정보를 제공한다.

물론 morgan도 next() 함수를  제공한다.

 

skip을 사용해서 특정 statusCode만 필터 가능

// EXAMPLE: only log error responses
morgan('combined', {
skip: function (req, res) { return res.statusCode < 400 }
})

 

그리고 완성한 최종 코드

import express from "express";
import morgan from "morgan";

const PORT = 4000;

const app = express();
const logger = morgan("dev");

const home = (req, res) => {
  return res.send("hello");
};

const login = (req, res) => {
  return res.send("login");
};

app.use("logger");
app.get("/", home);
app.get("/login", login);

const handleListening = () =>
  console.log(`✅ Server listening on port http://localhost:${PORT} 🚀`);

app.listen(PORT, handleListening);