이벤트 계약
쿼리가 예상하는 필드
| 필드 | 유형 | 그것이 존재하는 이유 |
|---|---|---|
| timestamp_utc | Timestamp | 이벤트가 발생한 시간입니다. |
| job_id | Utf8 | 하나의 작업에 대한 모든 이벤트에서 공유되는 식별자입니다. |
| job_name | Utf8 | 안정적인 논리적 작업 이름입니다. |
| event_name | Utf8 | job_started, job_completed 또는 job_failed. |
| queue_name | Utf8 | 작업을 소유하는 대기열입니다. |
DataFusion SQL
쿼리 복사
sql
WITH started AS (
SELECT
job_id,
job_name,
queue_name,
MIN(timestamp_utc) AS started_at
FROM job_events
WHERE event_name = 'job_started'
AND timestamp_utc >= now() - INTERVAL '24 hours'
GROUP BY job_id, job_name, queue_name
),
finished AS (
SELECT
job_id,
MAX(timestamp_utc) AS finished_at
FROM job_events
WHERE event_name IN ('job_completed', 'job_failed')
AND timestamp_utc >= now() - INTERVAL '24 hours'
GROUP BY job_id
)
SELECT
s.job_id,
s.job_name,
s.queue_name,
s.started_at
FROM started s
LEFT JOIN finished f ON s.job_id = f.job_id
WHERE f.job_id IS NULL
AND s.started_at < now() - INTERVAL '15 minutes'
ORDER BY s.started_at ASC;이 읽기 전용 쿼리는 빈 유형의 테이블에 대해 계획되고 실행됩니다. 아파치 DataFusion 45.2.0. 결정론적 샘플 출력은 합성되어 별도로 검토됩니다. 자신의 데이터에 대해 필드 유형, 임계값 및 비즈니스 정의를 검증합니다. 테스트 방법론을 읽어보세요.
쿼리 결과
종료 이벤트가 없는 가장 오래된 작업
테이블은 운영자가 작업을 검사하거나 재생하는 데 필요한 식별자를 유지합니다.
| job_id | job_name | queue_name | started_at |
|---|---|---|---|
| job_7f31 | import_catalog | imports | 2026-07-27 15:02:11Z |
| job_801c | sync_subscription | billing | 2026-07-27 15:19:43Z |
합성 예제 출력. 운영 결정에 사용하기 전에 자체 이벤트 스키마 및 임계값에 대해 쿼리를 실행하세요.
예제 재현
공공 픽스처 다운로드
JSON 번들은 타입이 지정된 이벤트 계약을 포함합니다. illustrative 입력 행, 정확한 SQL, 예상 출력, 검토 참고 사항 및 엔진 버전. CSV에는 표시된 결과가 포함됩니다.
SQL 작동 방식
- 1첫 번째 CTE는 각 논리적 작업의 가장 빠른 시작을 유지합니다. 두 번째는 최신 터미널 이벤트를 유지합니다.
- 2LEFT JOIN은 일치하는 완료 또는 실패가 없는 경우에도 시작된 작업을 보존합니다.
- 315분 임계값은 작동 중단의 정의입니다. 맹목적으로 복사하는 것이 아니라 예상되는 작업 기간에서 설정하십시오.
결정해야 할 극단적인 경우
- 장기 실행 작업에는 작업별 임계값이나 하트비트 이벤트가 필요합니다.
- 늦은 이벤트는 일시적으로 오탐지를 생성할 수 있습니다. 수집이 지연될 수 있는 경우 최신 버킷을 지연합니다.
- 재사용된 job_id는 관련되지 않은 실행에 참여하므로 ID는 논리적 실행마다 고유해야 합니다.
추천 대시보드
- 통계: 현재 중단된 작업 수
- 표: job_id 및 queue_name에서 가장 오래 중단된 작업
- 꺾은선형 차트: 일별 중단된 작업 감지
레시피를 활용해 보세요
관련 계측 및 가이드
분석 계속하기
실제 이벤트에서 실행
테이블을 만들고, 필드를 조정하고, 결과를 저장하세요.
무료로 시작하고, 구조화된 이벤트를 보내고, 쿼리 결과를 차트, 공유 대시보드 위젯 또는 알림 입력으로 사용하세요.