You Can Become A
๋ฆ๊ฒ ์์ํด๋ ๋๊ตฌ๋ ์ง ๋ ธ๋ ฅํ๋ฉด ๊ฐ๋ฐ์๊ฐ ๋ ์ ์์ด์ !
๋ ธ๋ ๋ก๊ทธ
[NODE] ๐ Winston ๋ชจ๋ ์ฌ์ฉ๋ฒ - ์๋ฒ ๋ก๊ทธ ๊ด๋ฆฌ
Winston ๋ชจ๋ ์ด๋ค ์๋ฒ๋ ์ง ์ค์ ๋ก ์๋น์ค๋ฅผ ์ด์ํ๋ ค๋ฉด ๋ก๊ทธ๋ฅผ ๊ผผ๊ผผํ ๋จ๊ธฐ๋ ๊ฒ์ ํ์์ด๋ค. Log๋ ์๋ฌ๋ฅผ ํ์ ํ ์ ์๋ ์ด์ ์ด๊ธฐ ๋๋ฌธ์ ์๋ฒ๋ฅผ ์ด์ํ๋ค๊ณ ํ๋ฉด ๋ก๊ทธ ์์คํ ์ ๊ตฌ์ถํด์ ์์คํ ์ ์ด์ํด์ผ ํ๋ค. ์๋ฅผ๋ค์ด ์ด๋ค ์ฌ๋์ด, ์ด๋ค ์ด๋ฒคํธ, ์ด๋ค ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๋์ง, ์ด๋ค ๋์์ ํ๋ค๊ฐ, ์ด๋ค ํธ๋์ญ์ ์ ๋๋ฆฌ๋ค๊ฐ, ์ด๋ค ์๋ฌ๊ฐ ๋ฌ๋์ง ์ด๋ฅผ ์ ๋ฐ ๊ด๋ฆฌํ ์ ์๋ค. Node.js์์๋ log๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์๊ฒ ๋์์ฃผ๋ ๋ชจ๋์ธ winston.js๊ฐ ์๋ค. ์์คํค(winston.js)๋ ์ค์ ์๋ฒ๋ฅผ ์ด์ํ ๋ console.log ์ console.error ๋ฅผ ๋์ฒดํ๊ธฐ ์ํ ๋ชจ๋์ด๋ค. console.log ์ console.error ๋ ๊ฐ๋ฐ ์ค์๋ ํธ๋ฆฌํ๊ฒ ์ฝ์ ๋ก๊ทธ๋ก ์๋ฒ์ ์ํฉ์ ..
[NODE] ๐ Chalk ๋ชจ๋ - ๋ ธ๋ ์ฝ์ ๋ก๊ทธ๋ฅผ ์ปฌ๋ฌํํ๊ฒ โจ
๋ธ๋ผ์ฐ์ console.log ๊พธ๋ฏธ๊ธฐ ๋ธ๋ผ์ฐ์ ์ฝ์์ CSS ์คํ์ผ์ํธ๋ฅผ ์ง์ํ๊ธฐ ๋๋ฌธ์ ์กฐ๊ธ ๋ฒ๊ฑฐ๋กญ๊ธด ํ์ง๋ง ๋ง๋ค๊ธฐ ์ด๋ ต์ง๋ ์๋ค. console.log('%cHello, world!', 'color: #a4f644; background-color: red;'); %c ์ดํ์ ๊ธ์์๋ ๋ชจ๋ ๊ฐ์ ์คํ์ผ์ด ์ ํ์ง๊ฒ ๋๋ค. ์๋ก์ด ์คํ์ผ์ ์์ฐ๊ณ ์ถ์ผ๋ฉด %c๋ฅผ ๋ ์ฐ๋ฉด ๋๋ค. ํ๋ก ํธ์ค๋์์๋ ์ ํ ์ด๋ ค์ด ์์ ์ด ์๋๊ธฐ ๋๋ฌธ์, ๋น์ฐํ ๋ฐฑ์ค๋์์๋ ๋๋ ๊ฒ์ผ๋ก ์๊ฐํ๋ ๋ถ๋ค์ด ๋ง์๋ฐ ์๋๋ค. ์ ์ฝ๋์ฒ๋ผ css๊ฐ์ ์ฃผ์ด๋ ์ฌ์ ํ ๋ฐ๋ฅ๋งน๋ฅํ ํ์๊ธ์จ๋ง ๋์ฌ ๊ฒ์ด๋ค. ๋ฐ๋ผ์, ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ์ ์ฉ์ ํด์ผ ํ๋ค. ๋ ธ๋ console.log ๊พธ๋ฏธ๊ธฐ ํฐ๋ฏธ๋์์๋ ์๊น์ ๋ณ๊ฒฝํ๊ธฐ ์ํด์ ANSI escape code๋ฅผ ..
[EXPRESS] ๐ morgan ๋ฏธ๋ค์จ์ด ๐ฏ ์ฌ์ฉ๋ฒ ์ ๋ฆฌ
morgan ๋ชจ๋ morgan์ ์ฐ๊ฒฐ ํ ํฌํธ์ ์ ์ํ๋ฉด ๊ธฐ์กด ๋ก๊ทธ ์ธ์ ์ถ๊ฐ์ ์ธ ๋ก๊ทธ๋ฅผ ๋ณผ ์ ์๋ค. ์ ์ฝ๋๋ฅผ ์คํํ์ฌ 3000๋ฒ ํฌํธ์ ๋ค์ด๊ฐ ํ ์ฝ์์ ๋ณด๋ฉด ์๋์ ๊ฐ์ ๋ก๊ทธ๊ฐ ์ฐํ์๋ ๊ฒ์ ๋ณผ ์ ์๋ค. ๋ง์ง๋ง ๋ก๊ทธ๋ morgan ๋ฏธ๋ค์จ์ด์์ ๋์ค๋ ๊ฒ์ด๋ค. ์ด์ฒ๋ผ morgan์ ์์ฒญ๊ณผ ์๋ต์ ๋ํ ์ ๋ณด๋ฅผ ์ฝ์์ ๊ธฐ๋กํ๋ค. const express = require('express'); const path = require('path'); const morgan = require('morgan'); // ๋ฏธ๋ค์จ์ด ์ฐ๊ฒฐ const app = express(); app.set('port', process.env.PORT || 3000); // ๋ก๊ทธ ๊ธฐ๋ก if (process.env.NODE_ENV ..