#ndc_10 M2 프로젝트의 오류보고시스템 / 백승엽

/pnotes/assets/2017-02-11-ndc10-error-reporting-system-1.png

프로그래머만 봐도 되는 건 assert. data 오류처럼 게임 디자이너나 게임 아티스트도 봐야 하는 건 오류 보고 시스템으로. assert로만 대동단결하면 프로그래머만 괴롭다. 결국, 다 프로그래머에게 돌아옴.

/pnotes/assets/2017-02-11-ndc10-error-reporting-system-2.png

/pnotes/assets/2017-02-11-ndc10-error-reporting-system-3.png

오류 코드로 GUID 사용. 아이디어 좋다. E20498 이런 번호 언제 붙이고 있어.

/pnotes/assets/2017-02-11-ndc10-error-reporting-system-4.png

이거 지원 안 하면 괴롭다. 몇 회까지 무시 옵션이 눈에 띈다. 유용할까? 로딩할 때도 발생하고 업데이트 로직에서도 발생하는 경우 대충 무시 회수를 때려 맞춰서 런타임 오류를 잡아내는 데 사용 정도? 직접 사용은 안 해봐서 유용한 예제는 생각나지 않는다.

/pnotes/assets/2017-02-11-ndc10-error-reporting-system-5.png

덤프 수집 서버처럼 오류 메일도 다 수집해서 알려주는 방법으로? 그냥 바로 날리면 매번 날라와서 괴롭다. 2^n 발생 시 메일을 날려주는 것도 괜찮을 것 같다. Developing Imperfect Software: How to Prepare for Production Pipeline Failure 발표에서는 assert를 서버에 쌓아서 알려준다.

/pnotes/assets/2017-02-11-ndc10-error-reporting-system-6.png

현재 팀엔 주번 제도가 있음. 잡다한 일을 몰아서 다른 사람 편하게 해주자는 용도. 오류까지 맡겨버려도 괜찮지 않을까?

/pnotes/assets/2017-02-11-ndc10-error-reporting-system-7.png

오버레이 좋다. 프로그래머만 활성화한 assert로만 표시하면 프로그래머만 괴롭다. 싫은 소리 해야 하는 주체가 되기도 하고. 오버레이를 적극적으로 활용하는 것도 괜찮은 전략.

자료


크리에이티브 커먼즈 라이선스
Feedback plz <3 @ohyecloudy, ohyecloudy@gmail.com