티스토리 뷰

왜 운영 환경에서 console.log를 제거해야 할까?

개발하다 보면 console.log를 여기저기 남기게 되는데,

운영 환경의 경우 민감한 데이터가 노출될 수 있고, 불필요한 연산이 매번 실행되기 때문에 제거하자!

 

 

설정 - esbuild.drop

// nuxt.config.js
export default defineNuxtConfig({
  vite: {
    esbuild: {
      drop: process.env.NODE_ENV === 'production' ? ['console', 'debugger'] : [],
    },
  },
})

 

 

 

선택적 제거 - esbuild.pure

console.error나 console.worn는 유지하고 console.log만 골라서 제거하고 싶은 경우 pure 옵션 사용

 

// nuxt.config.js
export default defineNuxtConfig({
  vite: {
    esbuild: {
      // console.log, console.debug만 제거 (error, warn은 유지)
      pure: process.env.NODE_ENV === 'production' ? ['console.log', 'console.debug'] : [],
    }
  },
})

 

 

 

참고로 런타임 시 console.log = () => {} 로 덮어쓰는 방법도 있지만,

코드 자체는 번들에 남아있어서 번들 사이즈가 줄어들지 않는다.

'Frontend' 카테고리의 다른 글

CSS Layout 정리  (0) 2026.02.23
React - useMemo & useCallback  (0) 2026.02.11
Vue3, Nuxt3 - Suspense  (0) 2026.02.06
Vue3, Nuxt3 - Image Lazy Loading  (0) 2026.02.06
Vue3 - vue3-virtual-scroller  (0) 2026.02.03
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2026/03   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함