분산 트레이싱이 끊기는 자리 · 샘플링과 비용 · 퀴즈
샘플링 확인
문항 5개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.
테일 샘플링을 쓸 때 컬렉터 앞에 필요한 것은?
- 스팬을 잠시 담아 두는 캐시 계층
- TLS 를 끊어 주는 종료 프록시
- 대역폭을 줄이는 gRPC 압축
- trace_id 를 키로 쓰는 로드밸런싱
요청 수·오류율 같은 비율을 트레이스로 계산하면 안 되는 이유는?
- 샘플링 편향이 그대로 값에 들어가서
- 스팬 질의가 느려 실시간으로 못 내서
- 스팬이 너무 많아 집계가 안 끝나서
- 스팬 타임스탬프가 노드마다 어긋나서
실무에서 권장되는 조합은?
- 모든 트레이스를 100% 그대로 저장한다
- 헤드 10~20% + 오류 100% + 중요 경로 테일
- 무작위 1% 만 남기고 나머지는 버린다
- 모든 트레이스를 테일 샘플링으로 판단한다
테일 샘플링에서 컬렉터가 OOM 으로 죽으면?
- 샘플링만 멈춘다
- 자동으로 헤드 샘플링으로 전환된다
- 버퍼가 디스크로 넘어가 영향이 없다
- 죽는 동안의 트레이스가 통째로 사라진다
샘플링 결정이 중간 서비스에서 다시 내려지면?
- 구간마다 다시 재서 더 정확해진다
- 저장할 스팬이 줄어 비용이 준다
- 트레이스가 반쪽만 남는다
- 루트 결정이 이겨서 아무 차이 없다