
밤새 미치는 줄 알았네 -_-
처음엔 완전히 transparent 하게 해서 로컬 로거와 원격지 로거가 구분 안 되게 하려고 하다가.. 너무 chatty하게 가면 상호 호출이 얽혀서 나중에 다른 언어로도 구현해서 붙이려고 할 때 개빡칠까봐 롤백하고 SentryProxy를 명확하게 구분해서 만들었음..
LoggerFactory는 설정 명세를 가지고 있어서 원격지에서 로거를 생성할 때도 필수/선택적 옵션들을 구분해서 입력받을 수 있다. 로거 팩토리나 설정 옵션 설명에서 지역화 메시지도 지원함. 로그 접속은 커맨드 세션과 별도로 만들어서 로그 전송한다. sentry하고 base 로그 수집 구현하면서 RPC 빠진 부분들도 많이 찾아서 메웠고..
초 단위로 버퍼링 후 ZIP 압축해서 바이너리로 보내고, 받아서 다시 압축 풀어서 로그 디스패칭 하는 것도 구현해야겠다. 원격지로 로그 수십 메가를 하나씩 보내려면 오버헤드가 너무 많으니.. 이제 로그 쌓고 조회하는 방식을 다시 고민하면 되겠다..
크라켄은 거대한 이벤트 시스템이라는 생각이 듬.. 레지스트리와 이벤트 콜백으로 도배가 되었어...




덧글