개발자

로그 작성 컨벤션 형식 문의드립니다.

3월 24일조회 89

안녕하세요. 저희 프로젝트는 node express를 사용하고 있습니다. 프로젝트의 로그의 통일성이 부족하고, 로그 시스템이 존재하지 않아서 문제가 있습니다. 그래서 콘솔에서 로그를 볼 때는 텍스트 형식으로 보고, 로그 시스템 구축 할 때는 daily로 저장되는 형식을 json으로 변환해서 진행하고 싶습니다. 여기서 콘솔에서 로그를 볼 때 어떻게 통일성을 갖추면 좋을까요? 지금까지는 “날짜 및 시간 log-level [디렉토리명/파일명] 텍스트 내용” 형식으로 하려고 했는데 좀 더 좋은 방안이 없는지 고견을 여쭙고자 문의드립니다.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 1

aigoia님의 프로필 사진

형식적이고 규칙적이거나 절차적인거는 가장 최상에 어썸한 방법보다는 영 그닥 별로지만 팀원들과 합의된 것으로 정하는게 국룰입니다. 이게 컨벤션이라는게 고대 로마의 공화정 체제에서 유래한 단어인데 서로 합의된거에 구속된다 혹은 자기가 참여해서 정한 규율을 절대적으로 지킨다는 시민적 미덕이 공동체에 화합을 이끌어내는 즉 공화이다라는 사상을 담고있는 단어입니다. 저는 Node.js Express는 먼가 독특한 철학을 가지고 있는거 같은데 그게 왠지 각 팀마다에 자율적인 컨벤션을 지향한다가 아닌가 싶긴 합니다. 먼가 장자에 나오는 소국과민이나 미니멀리즘 같은거여.

profile picture

익명

작성자

3월 26일

답변 감사합니다. 이 부분도 생각하고 있었는데요. 그래서 팀원들의 의견을 받고 있었습니다. 한번 도전해보겠습니다! 좋은 의견 감사합니다.(_ _)

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

3월 24일

프로젝트의 로그 통일성을 위해, 여러분이 설명한 형식은 이미 충분히 잘 설정된 것으로 보입니다. "날짜 및 시간, log-level, [디렉토리명/파일명], 텍스트 내용" 이 4가지 요소는 로그를 해석하는데 필수적인 정보입니다. 그러나 추가적인 향상을 위해서는 몇 가지 방안을 제시할 수 있습니다: 1) **메타 데이터 첨부**: 각 로그에 대한 추가 컨텍스트를 제공하는 메타데이터를 포함하면 도움이 됩니다. 예를 들면, 요청 ID나 사용자 ID 같은 정보들입니다. 2) **로그 포맷터 사용**: bunyan이나 winston 같은 Node.js 로깅 라이브러리로 표준화되고 구조화된 로그 출력을 생성할 수 있습니다. 이들은 콘솔과 파일에 대해 다른 형태의 출력을 만들 수 있도록 지원하기 때문에 json과 text 형식 모두 가능합니다. 3) **로거 설정 내보내기**: 모든 모듈과 코드에서 사용될 기본 로거 설정을 내보내면 코드 전체에 일관된 로깅 프랙티스를 유지하는데 도움이 됩니다. 4) **에러 핸들링**: 에러 원인과 관련 정보를 포함하는 에러 로그를 생성합니다. 이는 문제 해결에 큰 도움이 됩니다. 5) **로그 레벨 관리**: 개발 환경에서는 debug 레벨 로깅을 활성화하고, 프로덕션 환경에서는 info나 error 등의 레벨로 제한할 수 있습니다. 로그 레벨에 따른 필터링은 중요 정보를 찾기 쉽게 하며, 필요 이상의 로깅으로 인한 성능 저하를 방지합니다. 프로젝트의 복잡성과 요구사항에 따라 적당한 방안을 선택하면 좋을 것 같습니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!