티스토리 뷰
로그 메시지는 크게 개발 도중 중간중간 값을 찍어 보는 용도로 사용되는 것과, 오류가 발생했을 때 나중에 확인하기 위해 사용하는 것으로 크게 구별된다.
전자에 있어서는 또한 릴리즈 이후까지 남겨 둘만한 것과 릴리즈가 되면 제거해야하는 것으로 구별할 수 도 있다. 프로젝트를 여럿진행하면서 가장 큰 것이 로그에 대한 것이다. 로그에 대한 체계가 제대로 잡혀있지 않은 설계에 의한 개발은 추후에 로그 때문에 카운트 펀치를 맞게 되는 경우가 많다.
로그의 중요성은 강조해도 지나치지 않지만, 여기에 제시하고자하는 것은 그 로그를 이용해서 통합 테스트를 하는데 도움이 되게 하려면, 꽤 정형화된 방식으로 남겨야한다. 테스트 관점에서 보면 출력되는 로그는 일종의 테스트의 이후 결과 판정에 대한 입력값이 된다.
이 입력값은 정해진 방식대로 나타나야하며, 어떤 때는 사람보다 기계가 이해하기 쉬운 방식으로 나와야한다. 테스트가 잘되고 있는 지를 로그를 통해 절차를 이해한다면, 프로세스의 흐름을 제대로 추적할 수 있고, 그것에 따라서 진행되는 과정을 관리할 수 있게 된다.
가져야할 습관은
1. 분기가 일어나는 곳에서 충분한 정보를 외부에 알릴 수 있는가
2. 오류에 대한 자세한 정보가 다른 것과 묻혀서 일반화 되어 남겨지지 않는가.
3. 사용하는 라이브러리의 오류와 내가 작성한 오류가 섞여서 희석되지 않는가.
4. 과연 이 로그들이 일련의 과정을 거친 뒤 자동화된 분석 툴에 의해 정상 작동/오작동을 판별할 수 있는가.
정도로 정리할 수 있겠다.
전자에 있어서는 또한 릴리즈 이후까지 남겨 둘만한 것과 릴리즈가 되면 제거해야하는 것으로 구별할 수 도 있다. 프로젝트를 여럿진행하면서 가장 큰 것이 로그에 대한 것이다. 로그에 대한 체계가 제대로 잡혀있지 않은 설계에 의한 개발은 추후에 로그 때문에 카운트 펀치를 맞게 되는 경우가 많다.
로그의 중요성은 강조해도 지나치지 않지만, 여기에 제시하고자하는 것은 그 로그를 이용해서 통합 테스트를 하는데 도움이 되게 하려면, 꽤 정형화된 방식으로 남겨야한다. 테스트 관점에서 보면 출력되는 로그는 일종의 테스트의 이후 결과 판정에 대한 입력값이 된다.
이 입력값은 정해진 방식대로 나타나야하며, 어떤 때는 사람보다 기계가 이해하기 쉬운 방식으로 나와야한다. 테스트가 잘되고 있는 지를 로그를 통해 절차를 이해한다면, 프로세스의 흐름을 제대로 추적할 수 있고, 그것에 따라서 진행되는 과정을 관리할 수 있게 된다.
가져야할 습관은
1. 분기가 일어나는 곳에서 충분한 정보를 외부에 알릴 수 있는가
2. 오류에 대한 자세한 정보가 다른 것과 묻혀서 일반화 되어 남겨지지 않는가.
3. 사용하는 라이브러리의 오류와 내가 작성한 오류가 섞여서 희석되지 않는가.
4. 과연 이 로그들이 일련의 과정을 거친 뒤 자동화된 분석 툴에 의해 정상 작동/오작동을 판별할 수 있는가.
정도로 정리할 수 있겠다.
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- TCP/IP
- 대화
- OpenID
- 오픈소스
- 디버깅
- tattertools
- Tattertools plugin
- JavaScript
- 클레로덴드럼
- 식물
- 수선화
- SSO
- url
- Subversion
- MySQL
- macosx
- SVN
- VIM
- 덴드롱
- 퀴즈
- 커피
- 벤자민
- nodejs
- BlogAPI
- writely
- 구근
- Linux
- perl
- 킹벤자민
- ssh
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함