API cat shards
API cat предназначены только для использования человеком с помощью командной строки или консоли Kibana. Они не предназначены для использования приложениями.
Команда shards отображает подробную информацию о том, какие узлы содержат какие фрагменты. Она покажет, является ли фрагмент первичным или репликой, количество документов, занимаемый ими объем на диске и узел, на котором он расположен.
Для потоков данных API возвращает информацию об индексах, на которых основаны потоки данных.
Запрос
GET /_cat/shards/<target>
GET /_cat/shards
Предварительные условия
- Если включены функции безопасности Elasticsearch, необходимо иметь право
monitorилиmanageдоступ к кластеру для использования этого API. Также необходимо иметь правоmonitorилиmanageдоступ к индексам для любого потока данных, индекса или псевдонима, который вы получаете.
Параметры пути
-
<target> - (Необязательно, строка) Список потоков данных, индексов и псевдонимов, разделенных запятыми, используемых для ограничения запроса. Поддерживаются подстановочные знаки (
*). Для обработки всех потоков данных и индексов опустите этот параметр или используйте*или_all.
Параметры запроса
-
bytes - (Необязательно, единицы измерения размера байтов) Единица измерения для отображения значений байтов.
-
format - (Необязательно, строка) Короткое обозначение заголовка HTTP Accept. Допустимые значения включают JSON, YAML и т. д.
-
h -
(Необязательно, строка) Список имен столбцов, разделенных запятыми, для отображения.
Если вы не указываете, какие столбцы включить, API возвращает стандартные столбцы в указанном ниже порядке. Если вы явно указываете один или несколько столбцов, он вернёт только эти столбцы.
Допустимые столбцы:
-
index,i,idx - (Default) Название индекса.
-
shard,s,sh - (Default) Название фрагмента.
-
prirep,p,pr,primaryOrReplica - (Default) Тип фрагмента. Возвращаемые значения —
primaryилиreplica. -
state,st -
(Default) Состояние фрагмента. Возвращаемые значения:
-
INITIALIZING: Фрагмент восстанавливается из фрагмента-пира или шлюза. -
RELOCATING: Фрагмент перемещается. -
STARTED: Фрагмент запущен. -
UNASSIGNED: Фрагмент не назначен ни одному узлу.
-
-
docs,d,dc - (Default) Количество документов во фрагменте, например
25. -
store,sto - (Default) Объем дискового пространства, используемого фрагментом, например
5kb. -
ip - (Default) IP-адрес узла, например
127.0.1.1. -
id - (Default) ID узла, например
k0zy. -
node,n - (Default) Имя узла, например
I8hydUG. -
completion.size,cs,completionSize - Размер завершения, например
0b. -
fielddata.memory_size,fm,fielddataMemory - Используемая память кэша полевых данных, например
0b. -
fielddata.evictions,fe,fielddataEvictions - Сбросы кэша полевых данных, например
0. -
flush.total,ft,flushTotal - Количество сбросов, например
1. -
flush.total_time,ftt,flushTotalTime - Время, затраченное на сброс, например
1. -
get.current,gc,getCurrent - Количество текущих операций получения, например
0. -
get.time,gti,getTime - Время, затраченное на получение, например
14ms. -
get.total,gto,getTotal - Количество операций получения, например
2. -
get.exists_time,geti,getExistsTime - Время, затраченное на успешные получения, например
14ms. -
get.exists_total,geto,getExistsTotal - Количество успешных операций получения, например
2. -
get.missing_time,gmti,getMissingTime - Время, затраченное на неудачные получения, например
0s. -
get.missing_total,gmto,getMissingTotal - Количество неудачных операций получения, например
1. -
indexing.delete_current,idc,indexingDeleteCurrent - Количество текущих операций удаления, например
0. -
indexing.delete_time,idti,indexingDeleteTime - Время, затраченное на удаления, например
2ms. -
indexing.delete_total,idto,indexingDeleteTotal - Количество операций удаления, например
2. -
indexing.index_current,iic,indexingIndexCurrent - Количество текущих операций индексирования, например
0. -
indexing.index_time,iiti,indexingIndexTime - Время, затраченное на индексирование, например
134ms. -
indexing.index_total,iito,indexingIndexTotal - Количество операций индексирования, например
1. -
indexing.index_failed,iif,indexingIndexFailed - Количество неудачных операций индексирования, например
0. -
merges.current,mc,mergesCurrent - Количество текущих операций слияния, например
0. -
merges.current_docs,mcd,mergesCurrentDocs - Количество текущих документов, подлежащих слиянию, например
0. -
merges.current_size,mcs,mergesCurrentSize - Размер текущих слияний, например
0b. -
merges.total,mt,mergesTotal - Количество завершенных операций слияния, например
0. -
merges.total_docs,mtd,mergesTotalDocs - Количество слитых документов, например
0. -
merges.total_size,mts,mergesTotalSize - Размер текущих слияний, например
0b. -
merges.total_time,mtt,mergesTotalTime - Время, затраченное на слияние документов, например
0s. -
query_cache.memory_size,qcm,queryCacheMemory - Используемая память кэша запросов, например
0b. -
query_cache.evictions,qce,queryCacheEvictions - Сбросы кэша запросов, например
0. -
recoverysource.type,rs - Тип источника восстановления.
-
refresh.total,rto,refreshTotal - Количество обновлений, например
16. -
refresh.time,rti,refreshTime - Время, затраченное на обновления, например
91ms. -
search.fetch_current,sfc,searchFetchCurrent - Текущие операции фазы извлечения, например
0. -
search.fetch_time,sfti,searchFetchTime - Время, затраченное на фазу извлечения, например
37ms. -
search.fetch_total,sfto,searchFetchTotal - Количество операций извлечения, например
7. -
search.open_contexts,so,searchOpenContexts - Открытые контексты поиска, например
0. -
search.query_current,sqc,searchQueryCurrent - Текущие операции фазы запроса, например
0. -
search.query_time,sqti,searchQueryTime - Время, затраченное на фазу запроса, например
43ms. -
search.query_total,sqto,searchQueryTotal - Количество операций запроса, например
9. -
search.scroll_current,scc,searchScrollCurrent - Открытые контексты прокрутки, например
2. -
search.scroll_time,scti,searchScrollTime - Время удержания открытых контекстов прокрутки, например
2m. -
search.scroll_total,scto,searchScrollTotal - Завершенные контексты прокрутки, например
1. -
segments.count,sc,segmentsCount - Количество сегментов, например
4. -
segments.memory,sm,segmentsMemory - Память, используемая сегментами, например
1.4kb. -
segments.index_writer_memory,siwm,segmentsIndexWriterMemory - Память, используемая индексором, например
18mb. -
segments.version_map_memory,svmm,segmentsVersionMapMemory - Память, используемая картой версий, например
1.0kb. -
segments.fixed_bitset_memory,sfbm,fixedBitsetMemory - Память, используемая фиксированными наборами битов для вложенных типов полей объектов и фильтрами типов, ссылающимися на поля
join, например1.0kb. -
seq_no.global_checkpoint,sqg,globalCheckpoint - Глобальная контрольная точка.
-
seq_no.local_checkpoint,sql,localCheckpoint - Местная контрольная точка.
-
seq_no.max,sqm,maxSeqNo - Максимальное значение порядкового номера.
-
suggest.current,suc,suggestCurrent
-
- Количество текущих операций подбора, таких как
0. -
suggest.time,suti,suggestTime - Время, затраченное на подбор, например,
0. -
suggest.total,suto,suggestTotal - Количество операций подбора, таких как
0. -
sync_id - Идентификатор синхронизации фрагмента.
-
unassigned.at,ua - Время, когда фрагмент перестал быть назначенным в координированном всемирном времени (UTC).
-
unassigned.details,ud - Сведения о причинах, по которым фрагмент перестал быть назначенным. Это не объясняет, почему фрагмент в настоящее время не назначен. Чтобы понять, почему фрагмент не назначен, используйте API объяснения распределения кластера.
-
unassigned.for,uf - Время, когда было запрошено разназначание фрагмента в координированном всемирном времени (UTC).
-
unassigned.reason,ur -
Указывает причину последнего изменения состояния этого неназначенного фрагмента. Это не объясняет, почему фрагмент в настоящее время не назначен. Чтобы понять, почему фрагмент не назначен, используйте API объяснения распределения кластера. Возвращаемые значения включают:
-
ALLOCATION_FAILED: Не назначено в результате неудачного распределения фрагмента. -
CLUSTER_RECOVERED: Не назначено в результате полного восстановления кластера. -
DANGLING_INDEX_IMPORTED: Не назначено в результате импорта висящего индекса. -
EXISTING_INDEX_RESTORED: Не назначено в результате восстановления в закрытый индекс. -
FORCED_EMPTY_PRIMARY: Распределение фрагмента в последний раз было изменено путем принудительного создания пустой первичной копии с использованием API перенаправления кластера. -
INDEX_CLOSED: Не назначено, поскольку индекс был закрыт. -
INDEX_CREATED: Не назначено в результате создания индекса с помощью API. -
INDEX_REOPENED: Не назначено в результате открытия закрытого индекса. -
MANUAL_ALLOCATION: Распределение фрагмента в последний раз было изменено API перенаправления кластера. -
NEW_INDEX_RESTORED: Не назначено в результате восстановления в новый индекс. -
NODE_LEFT: Не назначено в результате выхода узла, на котором он размещался, из кластера. -
NODE_RESTARTING: АналогичноNODE_LEFT, за исключением того, что узел был зарегистрирован как перезапускающийся с использованием API завершения работы узла. -
PRIMARY_FAILED: Фрагмент инициализировался как реплика, но первичный фрагмент потерпел неудачу до завершения инициализации. -
REALLOCATED_REPLICA: Определяется более подходящее расположение реплики, что приводит к отмене существующего распределения реплики. -
REINITIALIZED: При перемещении фрагмента из состояния «запущен» обратно в «инициализация». -
REPLICA_ADDED: Не назначено в результате явного добавления реплики. -
REROUTE_CANCELLED: Не назначено в результате явного отмены команды перенаправления.
-
- Количество текущих операций подбора, таких как
-
help - (Необязательно, Булево) Если
true, ответ включает справочную информацию. По умолчаниюfalse. -
local -
(Необязательно, boolean)
Устарело в 7.11.0.
Этот параметр не влияет на запрос. Он будет удален в будущей версии.
-
master_timeout - (Необязательно, единицы времени) Время ожидания подключения к мастер-узлу. Если ответ не получен до истечения времени ожидания, запрос завершается ошибкой. По умолчанию
30s. -
s - (Необязательно, строка) Список столбцов или псевдонимов столбцов, разделенных запятыми, используемых для сортировки ответа.
-
time - (Необязательно, единицы времени) Единица измерения для отображения значений времени.
-
v - (Необязательно, Булево) Если
true, ответ включает заголовки столбцов. По умолчаниюfalse.
Примеры
Пример с одним потоком данных или индексом
GET _cat/shards
API возвращает следующий ответ:
my-index-000001 0 p STARTED 3014 31.1mb 192.168.56.10 H5dfFeA
Пример с шаблоном подстановки
Если в вашем кластере много фрагментов, вы можете использовать шаблон подстановки в параметре пути <target>, чтобы ограничить запрос API.
Следующий запрос возвращает информацию для всех потоков данных или индексов, начинающихся с my-index-.
GET _cat/shards/my-index-*
API возвращает следующий ответ:
my-index-000001 0 p STARTED 3014 31.1mb 192.168.56.10 H5dfFeA
Пример с перемещающимся фрагментом
GET _cat/shards
API возвращает следующий ответ:
my-index-000001 0 p RELOCATING 3014 31.1mb 192.168.56.10 H5dfFeA -> -> 192.168.56.30 bGG90GE
Значение RELOCATING в столбце state указывает, что фрагмент индекса переносится.
Пример со состояниями фрагментов
Перед тем, как фрагмент будет доступен для использования, он проходит через состояние INITIALIZING. Вы можете использовать API cat shards, чтобы увидеть, какие фрагменты инициализируются.
GET _cat/shards
API возвращает следующий ответ:
my-index-000001 0 p STARTED 3014 31.1mb 192.168.56.10 H5dfFeA my-index-000001 0 r INITIALIZING 0 14.3mb 192.168.56.30 bGG90GE
Пример с причинами неназначенных фрагментов
Следующий запрос возвращает столбец unassigned.reason, который указывает причину неназначения фрагмента.
GET _cat/shards?h=index,shard,prirep,state,unassigned.reason
API возвращает следующий ответ:
my-index-000001 0 p STARTED 3014 31.1mb 192.168.56.10 H5dfFeA my-index-000001 0 r STARTED 3014 31.1mb 192.168.56.30 bGG90GE my-index-000001 0 r STARTED 3014 31.1mb 192.168.56.20 I8hydUG my-index-000001 0 r UNASSIGNED ALLOCATION_FAILED
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/cat-shards.html