LabHub
배우기 러닝패스 코스

OTCA — 오픈텔레메트리 인증 어소시에이트 · SDK 증거 추적: 사라진 스팬 찾기 · 퀴즈

퀴즈: 스팬이 사라진 경계

LabHub 에서 이어서 보기

문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.

  1. RECORD_ONLY 결정으로 만든 스팬을 끝냈습니다. 기본 익스포트 처리기에서 기대할 관측은?

    1. 처리기 종료 관측은 있지만 익스포터 목록은 비어 있다
    2. sampled가 켜지고 익스포터 목록에도 스팬이 나타난다
    3. 스팬 컨텍스트가 무효가 되어 trace ID도 사라진다
    4. 스팬이 끝나지 않아 처리기의 종료 관측도 없다
  2. ParentBased(root=ALWAYS_OFF)에 sampled 원격 부모가 들어왔습니다. 기본 분기에서 자식은?

    1. root가 꺼져 있으므로 부모 상태와 무관하게 버린다
    2. 원격 부모의 sampled 결정을 따라 기록하고 내보낸다
    3. 부모와 다른 trace ID를 새로 만들어 root로 기록한다
    4. 원격 부모를 무효로 바꾸고 로컬 샘플러만 호출한다
  3. unsampled 부모와 같은 trace ID를 가진 sampled 자식을 ALWAYS_ON으로 만들었습니다. 옳은 해석은?

    1. sampled 자식이 생겼으므로 버려진 부모 이벤트도 복구됐다
    2. 같은 trace ID면 부모와 자식의 sampled는 반드시 같다
    3. 자식 기록 정책은 바꿀 수 있지만 잃은 부모 내용은 복구되지 않는다
    4. 자식을 기록하면 전송 오류도 자동으로 복구되는 효과가 있다
  4. start_span으로 만든 스팬에서 예외를 잡고 record_exception만 호출했습니다. ERROR 상태도 요구한다면?

    1. 예외 이벤트가 생겼으므로 ERROR 지정은 필요하지 않다
    2. 이벤트를 두 번 기록하면 두 번째 호출이 상태를 바꾼다
    3. 스팬을 끝낸 다음 service.name을 ERROR로 바꾼다
    4. 예외 이벤트와 별도로 스팬의 ERROR 상태를 지정한다
  5. 열린 스팬을 둔 채 force_flush가 True를 반환했고 실제 수신은 0개입니다. 먼저 확인할 것은?

    1. 스팬을 끝낸 뒤 다시 내보내기 경계를 확인한다
    2. True이므로 수신기 기록을 성공한 것으로 덮어쓴다
    3. 스팬을 끝내지 않고 이름만 바꿔 같은 flush를 반복한다
    4. 요청이 없으므로 sampled 비트가 반드시 꺼졌다고 단정한다
  6. HTTP 400, exporter FAILURE, accepted_spans=0인데 flush=True입니다. 실험 수신 성공 판정은?

    1. flush가 True이므로 최종 저장까지 성공으로 본다
    2. 수신기가 거절했으므로 성공으로 판정하지 않는다
    3. 본문이 도착했으므로 accepted_spans를 1로 해석한다
    4. 서비스 이름이 같으면 다른 요청의 성공 기록을 대신 쓴다