[javascript] console.log()를 이용하여 요청/응답 로그 남기기

Node.js 애플리케이션을 개발할 때, 종종 HTTP 요청과 응답의 세부 정보를 기록하고 싶을 수 있습니다. console.log()를 사용하여 요청과 응답을 로깅하는 방법을 살펴보겠습니다.

요청 로그 남기기

Node.js의 http 모듈을 사용하여 HTTP 서버를 만들 때, 서버의 request 이벤트 리스너에서 요청을 로깅할 수 있습니다. 아래 예제는 간단한 HTTP 서버를 만들고, 요청이 들어올 때 요청 URL을 콘솔에 기록하는 방법을 보여줍니다.

const http = require('http');

http.createServer((req, res) => {
  console.log(`Received request for ${req.url}`);
  // 요청 처리 로직
  res.end('Hello World');
}).listen(3000);

위 예제에서, req.url은 현재 요청의 URL을 나타냅니다. 이 값을 console.log()를 통해 콘솔에 기록하면 간단한 요청 로깅이 가능합니다.

응답 로그 남기기

마찬가지로, HTTP 서버의 response 이벤트 리스너를 사용하여 응답을 로깅할 수 있습니다. 아래 예제는 응답이 클라이언트로 전송될 때 응답 코드를 콘솔에 기록하는 방법을 보여줍니다.

const http = require('http');

http.createServer((req, res) => {
  res.on('finish', () => {
    console.log(`Sent response with status code ${res.statusCode}`);
  });
  // 응답 전송 로직
  res.end('Hello World');
}).listen(3000);

위 예제에서, res.statusCode는 응답의 상태 코드를 나타냅니다. 이 값을 console.log()를 통해 콘솔에 기록하면 간단한 응답 로깅이 가능합니다.

console.log()를 사용하여 요청과 응답을 로깅함으로써 애플리케이션의 동작을 모니터링하고 디버깅하는 데 도움을 줄 수 있습니다.