태스크 목록 API
태스크 목록 API (List Tasks API)
List Tasks API는 클러스터에서 실행 중인 태스크 목록을 반환해요.
도입 버전 1.0
엔드포인트
GET /_tasks
쿼리 파라미터
다음 표는 사용 가능한 쿼리 파라미터를 보여줘요. 모든 쿼리 파라미터는 선택 사항이에요.
| 파라미터 | 데이터 타입 | 설명 | 기본값 |
|---|---|---|---|
| actions | List 또는 String | 반환할 작업(action)의 쉼표로 구분된 목록이에요. 비워 두면 모두 반환해요. | N/A |
| detailed | Boolean | true 면 응답에 샤드 복구에 대한 자세한 정보가 포함돼요. | false |
| group_by | String | 태스크를 부모/자식 관계 또는 노드별로 그룹화해요. 유효한 값은 nodes , none , parents 예요. | nodes |
| nodes | List | 반환 정보를 제한하는 데 사용하는 노드 ID 또는 이름의 쉼표로 구분된 목록이에요. 연결 중인 노드의 정보를 반환하려면 _local을, 특정 노드의 정보를 얻으려면 노드 이름을, 모든 노드의 정보를 얻으려면 파라미터를 비워 두면 돼요. |
N/A |
| parent_task_id | String | 지정한 부모 태스크 ID( node_id:task_number )를 가진 태스크를 반환해요. 비워 두거나 -1로 설정하면 모두 반환해요. |
N/A |
| timeout | String | 응답을 기다리는 시간이에요. | N/A |
| wait_for_completion | Boolean | 일치하는 태스크가 완료될 때까지 기다려요. true 면 태스크가 완료될 때까지 요청이 차단돼요. | false |
예제 요청
다음 요청은 opensearch-node1이라는 노드에서 현재 실행 중인 태스크를 반환해요:
GET /_tasks?nodes=opensearch-node1
예제 응답
다음 응답은 실행 중인 태스크에 대한 정보를 제공해요:
{
"nodes": {
"Mgqdm0r9SEGClWxp_RbnaQ": {
"name": "opensearch-node1",
"transport_address": "sample_address",
"host": "sample_host",
"ip": "sample_ip",
"roles": [
"data",
"ingest",
"master",
"remote_cluster_client"
],
"tasks": {
"Mgqdm0r9SEGClWxp_RbnaQ:24578": {
"node": "Mgqdm0r9SEGClWxp_RbnaQ",
"id": 24578,
"type": "transport",
"action": "cluster:monitor/tasks/lists",
"start_time_in_millis": 1611612517044,
"running_time_in_nanos": 638700,
"cancellable": false,
"headers": {}
},
"Mgqdm0r9SEGClWxp_RbnaQ:24579": {
"node": "Mgqdm0r9SEGClWxp_RbnaQ",
"id": 24579,
"type": "direct",
"action": "cluster:monitor/tasks/lists[n]",
"start_time_in_millis": 1611612517044,
"running_time_in_nanos": 222200,
"cancellable": false,
"parent_task_id": "Mgqdm0r9SEGClWxp_RbnaQ:24578",
"headers": {}
}
}
}
}
}
resource_stats 객체
resource_stats 객체는 리소스 추적을 지원하는 태스크에 대해서만 업데이트돼요. 이 통계는 예약된 스레드 실행을 기준으로 계산되며, 태스크 작업을 마친 스레드와 현재 작업 중인 스레드를 모두 포함해요. 같은 스레드가 같은 태스크에서 여러 번 작업하도록 예약될 수 있으므로, 특정 태스크에서 작업하도록 예약된 각 스레드의 각 인스턴스는 단일 스레드 실행으로 간주돼요.
다음 표는 resource_stats 객체의 모든 응답 필드를 보여줘요.
| 응답 필드 | 설명 |
|---|---|
| average | 예약된 모든 스레드 실행에서의 평균 리소스 사용량이에요. |
| total | 예약된 모든 스레드 실행에서의 총 리소스 사용량이에요. |
| min | 예약된 모든 스레드 실행에서의 최소 리소스 사용량이에요. |
| max | 예약된 모든 스레드 실행에서의 최대 리소스 사용량이에요. |
| thread_info | 스레드 수와 관련된 통계예요. |
| thread_info.active_threads | 현재 태스크에서 작업 중인 스레드 수예요. |
| thread_info.thread_executions | 태스크에서 작업하도록 예약된 스레드 수예요. |
필요한 권한
Security 플러그인을 사용한다면 적절한 권한이 있는지 확인하세요: cluster:monitor/tasks/list.
출처: 문서