콘텐츠로 건너뛰기
Telemetry
백그라운드 작업 SQL 레시피

백그라운드 작업 재시도 폭풍 감지

반복되는 작업 시도로 인해 불균형한 대기열 작업과 실패가 발생하는 시간 버킷을 찾으세요.

중급job_attempts검토됨 2026-07-28테스트됨 아파치 DataFusion 45.2.0

검토자 Telemetry 제품 팀 . SQL 호환성, 이벤트 계약, 합성 출력 및 운영상의 주의사항. 표준 및 소유권 검토

질문에 답변됨

현재 재시도에 가장 많은 노력을 기울이고 있는 작업 유형은 무엇입니까?

재시도 폭풍은 처리량을 증가시키는 반면 유용한 완료 횟수는 감소할 수 있습니다. 시도 횟수, 고유 작업, 재시도 비율, 실패 비율을 함께 측정하여 반복 작업에서 유효한 부하를 분리합니다.

이벤트 계약

쿼리가 예상하는 필드

필드유형그것이 존재하는 이유
timestamp_utcTimestamp시도 완료 시간.
job_idUtf8안정적인 논리적 작업 식별자입니다.
job_nameUtf8안정적인 직업 유형.
attemptInt641회 시도 횟수입니다.
statusUtf8완료, 재시도 또는 실패했습니다.
DataFusion SQL

쿼리 복사

sql
SELECT
  date_trunc('hour', timestamp_utc) AS hour,
  job_name,
  COUNT(*) AS attempts,
  COUNT(DISTINCT job_id) AS logical_jobs,
  SUM(CASE WHEN attempt > 1 THEN 1 ELSE 0 END) AS retry_attempts,
  100.0 * SUM(CASE WHEN attempt > 1 THEN 1 ELSE 0 END)
    / NULLIF(COUNT(*), 0) AS retry_attempt_rate_pct,
  100.0 * SUM(CASE WHEN status = 'failed' THEN 1 ELSE 0 END)
    / NULLIF(COUNT(*), 0) AS failed_attempt_rate_pct
FROM job_attempts
WHERE timestamp_utc >= now() - INTERVAL '24 hours'
GROUP BY date_trunc('hour', timestamp_utc), job_name
HAVING COUNT(*) >= 20
ORDER BY retry_attempt_rate_pct DESC, attempts DESC;

이 읽기 전용 쿼리는 빈 유형의 테이블에 대해 계획되고 실행됩니다. 아파치 DataFusion 45.2.0. 결정론적 샘플 출력은 합성되어 별도로 검토됩니다. 자신의 데이터에 대해 필드 유형, 임계값 및 비즈니스 정의를 검증합니다. 테스트 방법론을 읽어보세요.

쿼리 결과

작업별 재시도 비율

CRM 동기화는 논리적 작업보다 훨씬 더 많은 시도를 생성하며 반복 작업으로 인해 작업자 용량을 소모합니다.

hourjob_nameattemptslogical_jobsretry_attemptsretry_attempt_rate_pctfailed_attempt_rate_pct
2026-07-27 14:00sync_crm_accounts1,8404921,11860.7622.34
2026-07-27 14:00send_receipt_email3,1803,0611193.740.44

합성 예제 출력. 운영 결정에 사용하기 전에 자체 이벤트 스키마 및 임계값에 대해 쿼리를 실행하세요.

Retry-attempt rate by job: Detect Background-Job Retry Storms 예제 결과의 합성 retry_attempt_rate_pct 값에 대한 정적 차트
결정론적 예제 출력의 색인 생성 가능한 SVG입니다. 기사, 런북 또는 저작자가 포함된 디자인 검토를 위해 다운로드하세요.

예제 재현

공공 픽스처 다운로드

JSON 번들은 타입이 지정된 이벤트 계약을 포함합니다. illustrative 입력 행, 정확한 SQL, 예상 출력, 검토 참고 사항 및 엔진 버전. CSV에는 표시된 결과가 포함됩니다.

SQL 작동 방식

  1. 1고유한 작업 ID는 유용한 논리적 작업을 추정하는 반면 원시 개수는 작업자 시도를 측정합니다.
  2. 21보다 큰 시도 횟수는 최종 성공을 첫 번째 시도로 간주하지 않고 반복 작업을 격리합니다.
  3. 3실패율은 재시도 공유 옆에 유지되므로 의도적으로 재시도된 일시적 종속성을 터미널 오류와 구별할 수 있습니다.

결정해야 할 극단적인 경우

  • 팬아웃 작업은 합법적으로 여러 하위 ID를 생성할 수 있습니다. 개수를 비교하기 전에 논리적 작업 식별자를 정의하세요.
  • 즉시 재시도와 예약된 백오프는 용량에 서로 다른 영향을 미치며 별도의 필드가 필요할 수 있습니다.
  • 재시도 폭풍은 시간별 버킷 간에 이동할 수 있습니다. 응답 시간이 중요한 경우 더 짧은 운영 쿼리를 추가하세요.

추천 대시보드

  • 바: 직업별 retry_attempt_rate_pct
  • 추세: 시도 및 logical_jobs
  • 표: 시도 횟수가 가장 많고 최신 오류 유형이 있는 작업

알림 안내

연속적인 완료 버킷에 대해 재시도 공유, 시도량 및 대기열 사용 기간이 함께 높아지면 알림합니다.

알림 설정 읽기

레시피를 활용해 보세요

관련 계측 및 가이드

분석 계속하기

실제 이벤트에서 실행

테이블을 만들고, 필드를 조정하고, 결과를 저장하세요.

무료로 시작하고, 구조화된 이벤트를 보내고, 쿼리 결과를 차트, 공유 대시보드 위젯 또는 알림 입력으로 사용하세요.

API 키 받기