데이터 스트림 통계 API

데이터 스트림 통계 API (Data Stream Stats API)

데이터 스트림들이 얼마나 많은 공간을 쓰고 있는지, 마지막으로 쌓인 데이터가 언제인지 궁금하시죠? 데이터 스트림 통계 API가 하나 이상의 데이터 스트림에 대한 통계를 제공해요. 백킹 인덱스 수, 저장소 크기, 최대 타임스탬프가 포함돼요. 데이터 스트림 전반의 저장소와 인덱싱 활동을 모니터링할 때 유용해요.

출처: 문서

본문

1.0에서 도입

데이터 스트림 통계 API는 백킹 인덱스 수, 저장소 크기, 최대 타임스탬프를 포함해 하나 이상의 데이터 스트림에 대한 통계를 제공해요. 이 API를 사용해 데이터 스트림 전반의 저장소와 인덱싱 활동을 모니터링할 수 있어요.

엔드포인트

GET /_data_stream/_stats
GET /_data_stream/{name}/_stats

경로 파라미터

다음 표는 사용 가능한 경로 파라미터예요. 모든 경로 파라미터는 선택적이에요.

Parameter Data type Description
name List or String 요청을 제한하는 데 사용되는 데이터 스트림의 쉼표로 구분된 목록이에요. 와일드카드 표현식(*)을 지원해요. 클러스터의 모든 데이터 스트림을 대상으로 하려면 이 파라미터를 생략하거나 *를 사용해요.

쿼리 파라미터

다음 표는 사용 가능한 쿼리 파라미터예요. 모든 쿼리 파라미터는 선택적이에요.

Parameter Data type Description Default
error_trace Boolean 반환된 오류의 스택 트레이스를 포함할지 여부예요. false
filter_path List or String 응답을 줄이는 데 사용돼요. 이 파라미터는 쉼표로 구분된 필터 목록을 받아요. 와일드카드로 필드나 필드 이름의 일부를 매칭할 수 있어요. -로 필드를 제외할 수도 있어요. N/A
human Boolean 통계에 대해 사람이 읽을 수 있는 값을 반환할지 여부예요. false
pretty Boolean 반환된 JSON 응답을 pretty 형식으로 할지 여부예요. false
source String URL 인코딩된 요청 정의예요. POST가 아닌 요청에 요청 본문을 받아들이지 않는 라이브러리에 유용해요. N/A

예시 요청

일치하는 패턴과 데이터 스트림이 활성화된 인덱스 템플릿을 만들어요.

PUT /_index_template/template-logs-app
{
  "index_patterns": [
    "logs-app*"
  ],
  "data_stream": {}
}

데이터 스트림을 만들어요.

PUT /_data_stream/logs-app
{}

백킹 인덱스를 생성하기 위해 문서를 인덱싱해요.

POST /logs-app/_doc
{
  "@timestamp": "2025-06-23T10:00:00Z",
  "message": "app started"
}

데이터 스트림에 대한 통계를 검색해요.

GET /_data_stream/logs-app/_stats?human=true

예시 응답

{
  "_shards": {
    "total": 2,
    "successful": 2,
    "failed": 0
  },
  "data_stream_count": 1,
  "backing_indices": 1,
  "total_store_size": "16.8kb",
  "total_store_size_bytes": 17304,
  "data_streams": [
    {
      "data_stream": "logs-app",
      "backing_indices": 1,
      "store_size": "16.8kb",
      "store_size_bytes": 17304,
      "maximum_timestamp": 1750673100000
    }
  ]
}

응답 본문 필드

Field Data type Description
_shards.total Integer 요청에 포함된 총 샤드 수예요.
_shards.successful Integer 성공한 샤드 fetch 수예요.
_shards.failed Integer 실패한 샤드 fetch 수예요.
data_stream_count Integer 응답에 반환된 총 데이터 스트림 수예요.
backing_indices Integer 모든 데이터 스트림의 총 백킹 인덱스 수예요.
total_store_size String 모든 데이터 스트림 저장소의 사람이 읽을 수 있는 총 크기예요. human=true일 때만 존재해요.
total_store_size_bytes Integer 모든 데이터 스트림이 사용하는 총 저장소(바이트)예요.
data_streams Array 각 데이터 스트림에 대해 하나씩인 객체 목록이에요. 객체 필드는 The data stream objects를 참고하세요.

데이터 스트림 객체 (The data stream objects)

각 데이터 스트림 객체는 다음 필드를 포함해요.

Field Data type Description
data_stream String 데이터 스트림의 이름이에요.
backing_indices Integer 데이터 스트림의 백킹 인덱스 수예요.
store_size String 데이터 스트림이 사용하는 사람이 읽을 수 있는 저장소예요. human=true일 때만 존재해요.
store_size_bytes Integer 데이터 스트림이 사용하는 총 저장소(바이트)예요.
maximum_timestamp Long 데이터 스트림의 모든 문서에서 가장 큰 타임스탬프예요.

보안

Security 플러그인을 사용한다면 적절한 권한이 있는지 확인해야 해요: indices:monitor/data_stream/stats.

관련 문서

  • Data streams
  • Get data streams

더 알아보기 (Learn more)

  • human=true를 쓰면 저장소 크기를 읽기 쉬운 단위로 볼 수 있어요.
  • 데이터 스트림의 개념은 Data streams 문서에서 다뤄요.