728x90
728x90
morgan 패키지
들어가며
- Node.js의 @morgan@ 패키지에 대해 알아보자.
@morgan@ 패키지
개념
- Node.js 웹 애플리케이션에서 로깅(로그 기록)을 도와주는 미들웨어 패키지
- 웹 애플리케이션을 개발하다보면 애플리케이션의 동작과 상태를 모니터링하고 디버깅하기 위해 로그를 생성하고 기록해야 할 때가 많은데, @morgan@은 이를 효과적으로 처리하는데 도움을 준다.
- @morgan@을 사용하면 HTTP 요청과 응답에 관한 다양한 정보를 로그로 기록할 수 있으며, 이를 통해 애플리케이션의 동작을 추적하고 문제를 식별할 수 있다.
- @morgan@은 주로 웹 서버 미들웨어로 사용되며, Express.js 및 다른 Node.js 웹 프레임워크와 함께 자주 사용된다.
- @morgan@을 사용하여 기록할 수 있는 정보에는 다음과 같은 것들이 포함될 수 있다.
① HTTP 요청 메서드 (GET, POST, 등)
② 요청 URL
③ 상태 코드 (예: 200, 404, 500)
④ 요청 및 응답 시간
⑤ 요청 IP 주소
⑥ 요청 헤더 정보
⑦ 사용자 에이전트 정보 (클라이언트 브라우저 정보)
- @morgan@을 사용하여 로그를 생성하고 설정할 수 있으며, 로그 형식, 출력 위치, 로그 레벨 등을 사용자 정의할 수 있다.
- @morgan@을 웹 애플리케이션에 추가하면 애플리케이션의 동작을 모니터링하고 디버깅하는 데 도움이 되며, 프로덕션 환경에서는 중요한 정보를 추적할 수 있어 유용하다.
설치
- @npm@을 이용하여 다음 명령을 실행하여 설치할 수 있다.
> npm install express morgan # express와 morgan 패키지 설치
사용 예
index.js
import express from "express";
import morgan from "morgan";
const app = express();
const port = 3000;
app.use(morgan("combined"));
app.get("/", (req, res) => {
res.send("Hello");
});
app.listen(port, () => {
console.log(`Listening on port ${port}`);
});
- 실시간으로 업데이트된 내용을 반영 및 확인하기 위해 @nodemon@을 이용하여 명령을 실행해본다.
> nodemon index.js
- Postman 프로그램에서 로컬 서버(@localhost:3000@)로 GET 요청을 보내본다.
- 터미널에서 다음과 같이 로그 기록을 확인할 수 있다.
[nodemon] 3.0.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): *.*
[nodemon] watching extensions: js,mjs,cjs,json
[nodemon] starting `node index.js`
Listening on port 3000
::1 - - [09/Nov/2023:07:08:07 +0000] "GET / HTTP/1.1" 200 5 "-" "PostmanRuntime/7.34.0"
::1 - - [09/Nov/2023:07:08:09 +0000] "GET / HTTP/1.1" 200 5 "-" "PostmanRuntime/7.34.0"
참고 사이트
728x90
728x90
'Programming > Node.js' 카테고리의 다른 글
[Node.js] 모듈 설치 시 의존성 문제 해결하기 (npm-check-updates) (1) | 2023.11.27 |
---|---|
[Node.js] PostgreSQL 설치 및 사용해보기 (0) | 2023.11.17 |
[Node.js] EJS(Embedded JavaScript) (0) | 2023.11.09 |
[Node.js] body-parser 패키지 (0) | 2023.11.09 |
[Node.js] 노드몬(nodemon) 패키지 (0) | 2023.11.08 |
[Node.js] Express.js (0) | 2023.11.08 |
[Node.js] URL QR 코드 생성기 만들기 (0) | 2023.11.07 |
[Node.js] 모듈 불러오는 방식 (require, import) (0) | 2023.11.07 |