태스크 조회 API
태스크 조회 API (Get Task API)
Get Task API는 검색, 재인덱싱, 벌크 작업 같은 단일 일반 OpenSearch 태스크에 대한 자세한 정보를 반환해요.
도입 버전 1.0
이 API는 머신러닝 태스크를 추적하고 응답 형식이 다른 Get ML Task API와 다르다는 점에 주의하세요.
엔드포인트
GET /_tasks/{task_id}
경로 파라미터
다음 표는 사용 가능한 경로 파라미터를 보여줘요.
| 파라미터 | 필수 여부 | 데이터 타입 | 설명 |
|---|---|---|---|
| task_id | 필수 | String | 태스크 ID예요. |
쿼리 파라미터
다음 표는 사용 가능한 쿼리 파라미터를 보여줘요. 모든 쿼리 파라미터는 선택 사항이에요.
| 파라미터 | 데이터 타입 | 설명 | 기본값 |
|---|---|---|---|
| timeout | String | 응답을 기다리는 시간이에요. | 30s |
| wait_for_completion | Boolean | 일치하는 태스크가 완료될 때까지 기다려요. true 면 태스크가 완료될 때까지 요청이 차단돼요. | false |
예제 요청
다음 요청은 활성 검색 태스크에 대한 자세한 정보를 반환해요:
curl -XGET "localhost:9200/_tasks?actions=*search&detailed
예제 응답
다음 응답은 transport 태스크에 대한 자세한 정보를 반환해요:
{
"nodes": {
"JzrCxdtFTCO_RaINw8ckNA": {
"name": "node-1",
"transport_address": "127.0.0.1:9300",
"host": "127.0.0.1",
"ip": "127.0.0.1:9300",
"roles": [
"data",
"ingest",
"cluster_manager",
"remote_cluster_client"
],
"tasks": {
"JzrCxdtFTCO_RaINw8ckNA:54321": {
"node": "JzrCxdtFTCO_RaINw8ckNA",
"id": 54321,
"type": "transport",
"action": "indices:data/read/search",
"status": {
"total": 1000,
"created": 0,
"updated": 0,
"deleted": 0,
"batches": 1,
"version_conflicts": 0,
"noops": 0,
"retries": {
"bulk": 0,
"search": 0
},
"throttled_millis": 0,
"requests_per_second": -1.0,
"throttled_until_millis": 0
},
"description": "indices[test_index], types[_doc], search_type[QUERY_THEN_FETCH], source[{\"query\":{\"match_all\":{}}}]",
"start_time_in_millis": 1625145678901,
"running_time_in_nanos": 2345678,
"cancellable": true
}
}
}
}
}
resource_stats 객체
resource_stats 객체는 리소스 추적을 지원하는 태스크에 대해서만 업데이트돼요. 이 통계는 예약된 스레드 실행을 기준으로 계산되며, 태스크 작업을 마친 스레드와 현재 작업 중인 스레드를 모두 포함해요. 같은 스레드가 같은 태스크에서 여러 번 작업하도록 예약될 수 있으므로, 특정 태스크에서 작업하도록 예약된 각 스레드의 각 인스턴스는 단일 스레드 실행으로 간주돼요.
다음 표는 resource_stats 객체의 모든 응답 필드를 보여줘요.
| 응답 필드 | 설명 |
|---|---|
| average | 예약된 모든 스레드 실행에서의 평균 리소스 사용량이에요. |
| total | 예약된 모든 스레드 실행에서의 총 리소스 사용량이에요. |
| min | 예약된 모든 스레드 실행에서의 최소 리소스 사용량이에요. |
| max | 예약된 모든 스레드 실행에서의 최대 리소스 사용량이에요. |
| thread_info | 스레드 수와 관련된 통계예요. |
| thread_info.active_threads | 현재 태스크에서 작업 중인 스레드 수예요. |
| thread_info.thread_executions | 태스크에서 작업하도록 예약된 스레드 수예요. |
필요한 권한
Security 플러그인을 사용한다면 적절한 권한이 있는지 확인하세요: cluster:monitor/tasks/get.
출처: 문서