Get shard information
Generally available
All methods and paths for this operation:
Get information about the shards in a cluster. For data streams, the API returns information about the backing indices. IMPORTANT: cat APIs are only intended for human consumption using the command line or Kibana console. They are not intended for use by applications.
Required authorization
- Index privileges:
monitor - Cluster privileges:
monitor
Path parameters
-
A comma-separated list of data streams, indices, and aliases used to limit the request. Supports wildcards (
*). To target all data streams and indices, omit this parameter or use*or_all.
Query parameters
-
List of columns to appear in the response. Supports simple wildcards.
Supported values include:
completion.size(orcs,completionSize): Size of completion. For example:0b.dataset.size: Disk space used by the shard’s dataset, which may or may not be the size on disk, but includes space used by the shard on object storage. Reported as a size value for example:5kb.dense_vector.value_count(ordvc,denseVectorCount): Number of indexed dense vectors.docs(ord,dc): Number of documents in shard, for example:25.fielddata.evictions(orfe,fielddataEvictions): Fielddata cache evictions, for example:0.fielddata.memory_size(orfm,fielddataMemory): Used fielddata cache memory, for example:0b.flush.total(orft,flushTotal): Number of flushes, for example:1.flush.total_time(orftt,flushTotalTime): Time spent in flush, for example:1.get.current(orgc,getCurrent): Number of current get operations, for example:0.get.exists_time(orgeti,getExistsTime): Time spent in successful gets, for example:14ms.get.exists_total(orgeto,getExistsTotal): Number of successful get operations, for example:2.get.missing_time(orgmti,getMissingTime): Time spent in failed gets, for example:0s.get.missing_total(orgmto,getMissingTotal): Number of failed get operations, for example:1.get.time(orgti,getTime): Time spent in get, for example:14ms.get.total(orgto,getTotal): Number of get operations, for example:2.id: ID of the node, for example:k0zy.index(ori,idx): Name of the index.indexing.delete_current(oridc,indexingDeleteCurrent): Number of current deletion operations, for example:0.indexing.delete_time(oridti,indexingDeleteTime): Time spent in deletions, for example:2ms.indexing.delete_total(oridto,indexingDeleteTotal): Number of deletion operations, for example:2.indexing.index_current(oriic,indexingIndexCurrent): Number of current indexing operations, for example:0.indexing.index_failed_due_to_version_conflict(oriifvc,indexingIndexFailedDueToVersionConflict): Number of failed indexing operations due to version conflict, for example:0.indexing.index_failed(oriif,indexingIndexFailed): Number of failed indexing operations, for example:0.indexing.index_time(oriiti,indexingIndexTime): Time spent in indexing, such as for example:134ms.indexing.index_total(oriito,indexingIndexTotal): Number of indexing operations, for example:1.ip: IP address of the node, for example:127.0.1.1.merges.current(ormc,mergesCurrent): Number of current merge operations, for example:0.merges.current_docs(ormcd,mergesCurrentDocs): Number of current merging documents, for example:0.merges.current_size(ormcs,mergesCurrentSize): Size of current merges, for example:0b.merges.total(ormt,mergesTotal): Number of completed merge operations, for example:0.merges.total_docs(ormtd,mergesTotalDocs): Number of merged documents, for example:0.merges.total_size(ormts,mergesTotalSize): Size of current merges, for example:0b.merges.total_time(ormtt,mergesTotalTime): Time spent merging documents, for example:0s.node(orn): Node name, for example:I8hydUG.prirep(orp,pr,primaryOrReplica): Shard type. Returned values areprimaryorreplica.query_cache.evictions(orqce,queryCacheEvictions): Query cache evictions, for example:0.query_cache.memory_size(orqcm,queryCacheMemory): Used query cache memory, for example:0b.recoverysource.type(orrs): Type of recovery source.refresh.time(orrti,refreshTime): Time spent in refreshes, for example:91ms.refresh.total(orrto,refreshTotal): Number of refreshes, for example:16.search.fetch_current(orsfc,searchFetchCurrent): Current fetch phase operations, for example:0.search.fetch_time(orsfti,searchFetchTime): Time spent in fetch phase, for example:37ms.search.fetch_total(orsfto,searchFetchTotal): Number of fetch operations, for example:7.search.open_contexts(orso,searchOpenContexts): Open search contexts, for example:0.search.query_current(orsqc,searchQueryCurrent): Current query phase operations, for example:0.search.query_time(orsqti,searchQueryTime): Time spent in query phase, for example:43ms.search.query_total(orsqto,searchQueryTotal): Number of query operations, for example:9.search.scroll_current(orscc,searchScrollCurrent): Open scroll contexts, for example:2.search.scroll_time(orscti,searchScrollTime): Time scroll contexts held open, for example:2m.search.scroll_total(orscto,searchScrollTotal): Completed scroll contexts, for example:1.segments.count(orsc,segmentsCount): Number of segments, for example:4.segments.fixed_bitset_memory(orsfbm,fixedBitsetMemory): Memory used by fixed bit sets for nested object field types and type filters for types referred in join fields, for example:1.0kb.segments.index_writer_memory(orsiwm,segmentsIndexWriterMemory): Memory used by index writer, for example:18mb.segments.memory(orsm,segmentsMemory): Memory used by segments, for example:1.4kb.segments.version_map_memory(orsvmm,segmentsVersionMapMemory): Memory used by version map, for example:1.0kb.seq_no.global_checkpoint(orsqg,globalCheckpoint): Global checkpoint.seq_no.local_checkpoint(orsql,localCheckpoint): Local checkpoint.seq_no.max(orsqm,maxSeqNo): Maximum sequence number.shard(ors,sh): Name of the shard.dsparse_vector.value_count(orsvc,sparseVectorCount): Number of indexed sparse vectors.state(orst): State of the shard. Returned values are:INITIALIZING: The shard is recovering from a peer shard or gateway.RELOCATING: The shard is relocating.STARTED: The shard has started.UNASSIGNED: The shard is not assigned to any node.
store(orsto): Disk space used by the shard, for example:5kb.suggest.current(orsuc,suggestCurrent): Number of current suggest operations, for example:0.suggest.time(orsuti,suggestTime): Time spent in suggest, for example:0.suggest.total(orsuto,suggestTotal): Number of suggest operations, for example:0.sync_id: Sync ID of the shard.unassigned.at(orua): Time at which the shard became unassigned in Coordinated Universal Time (UTC).unassigned.details(orud): Details about why the shard became unassigned. This does not explain why the shard is currently unassigned. To understand why a shard is not assigned, use the Cluster allocation explain API.unassigned.for(oruf): Time at which the shard was requested to be unassigned in Coordinated Universal Time (UTC).unassigned.reason(orur): Indicates the reason for the last change to the state of this unassigned shard. This does not explain why the shard is currently unassigned. To understand why a shard is not assigned, use the Cluster allocation explain API. Returned values include:ALLOCATION_FAILED: Unassigned as a result of a failed allocation of the shard.CLUSTER_RECOVERED: Unassigned as a result of a full cluster recovery.DANGLING_INDEX_IMPORTED: Unassigned as a result of importing a dangling index.EXISTING_INDEX_RESTORED: Unassigned as a result of restoring into a closed index.FORCED_EMPTY_PRIMARY: The shard’s allocation was last modified by forcing an empty primary using the Cluster reroute API.INDEX_CLOSED: Unassigned because the index was closed.INDEX_CREATED: Unassigned as a result of an API creation of an index.INDEX_REOPENED: Unassigned as a result of opening a closed index.MANUAL_ALLOCATION: The shard’s allocation was last modified by the Cluster reroute API.NEW_INDEX_RESTORED: Unassigned as a result of restoring into a new index.NODE_LEFT: Unassigned as a result of the node hosting it leaving the cluster.NODE_RESTARTING: Similar toNODE_LEFT, except that the node was registered as restarting using the Node shutdown API.PRIMARY_FAILED: The shard was initializing as a replica, but the primary shard failed before the initialization completed.REALLOCATED_REPLICA: A better replica location is identified and causes the existing replica allocation to be cancelled.REINITIALIZED: When a shard moves from started back to initializing.REPLICA_ADDED: Unassigned as a result of explicit addition of a replica.REROUTE_CANCELLED: Unassigned as a result of explicit cancel reroute command.
Values are
completion.size,cs,completionSize,dataset.size,dense_vector.value_count,dvc,denseVectorCount,docs,d,dc,fielddata.evictions,fe,fielddataEvictions,fielddata.memory_size,fm,fielddataMemory,flush.total,ft,flushTotal,flush.total_time,ftt,flushTotalTime,get.current,gc,getCurrent,get.exists_time,geti,getExistsTime,get.exists_total,geto,getExistsTotal,get.missing_time,gmti,getMissingTime,get.missing_total,gmto,getMissingTotal,get.time,gti,getTime,get.total,gto,getTotal,id,index,i,idx,indexing.delete_current,idc,indexingDeleteCurrent,indexing.delete_time,idti,indexingDeleteTime,indexing.delete_total,idto,indexingDeleteTotal,indexing.index_current,iic,indexingIndexCurrent,indexing.index_failed_due_to_version_conflict,iifvc,indexingIndexFailedDueToVersionConflict,indexing.index_failed,iif,indexingIndexFailed,indexing.index_time,iiti,indexingIndexTime,indexing.index_total,iito,indexingIndexTotal,ip,merges.current,mc,mergesCurrent,merges.current_docs,mcd,mergesCurrentDocs,merges.current_size,mcs,mergesCurrentSize,merges.total,mt,mergesTotal,merges.total_docs,mtd,mergesTotalDocs,merges.total_size,mts,mergesTotalSize,merges.total_time,mtt,mergesTotalTime,node,n,prirep,p,pr,primaryOrReplica,query_cache.evictions,qce,queryCacheEvictions,query_cache.memory_size,qcm,queryCacheMemory,recoverysource.type,rs,refresh.time,rti,refreshTime,refresh.total,rto,refreshTotal,search.fetch_current,sfc,searchFetchCurrent,search.fetch_time,sfti,searchFetchTime,search.fetch_total,sfto,searchFetchTotal,search.open_contexts,so,searchOpenContexts,search.query_current,sqc,searchQueryCurrent,search.query_time,sqti,searchQueryTime,search.query_total,sqto,searchQueryTotal,search.scroll_current,scc,searchScrollCurrent,search.scroll_time,scti,searchScrollTime,search.scroll_total,scto,searchScrollTotal,segments.count,sc,segmentsCount,segments.fixed_bitset_memory,sfbm,fixedBitsetMemory,segments.index_writer_memory,siwm,segmentsIndexWriterMemory,segments.memory,sm,segmentsMemory,segments.version_map_memory,svmm,segmentsVersionMapMemory,seq_no.global_checkpoint,sqg,globalCheckpoint,seq_no.local_checkpoint,sql,localCheckpoint,seq_no.max,sqm,maxSeqNo,shard,s,sh,dsparse_vector.value_count,svc,sparseVectorCount,state,st,store,sto,suggest.current,suc,suggestCurrent,suggest.time,suti,suggestTime,suggest.total,suto,suggestTotal,sync_id,unassigned.at,ua,unassigned.details,ud,unassigned.for,uf,unassigned.reason, orur. -
A comma-separated list of column names or aliases that determines the sort order. Sorting defaults to ascending and can be changed by setting
:ascor:descas a suffix to the column name. -
The period to wait for a connection to the master node.
External documentation
GET _cat/shards?format=json
resp = client.cat.shards(
format="json",
)
const response = await client.cat.shards({
format: "json",
});
response = client.cat.shards(
format: "json"
)
$resp = $client->cat()->shards([
"format" => "json",
]);
curl -X GET -H "Authorization: ApiKey $ELASTIC_API_KEY" "$ELASTICSEARCH_URL/_cat/shards?format=json"
client.cat().shards();
[
{
"index": "my-index-000001",
"shard": "0",
"prirep": "p",
"state": "STARTED",
"docs": "3014",
"store": "31.1mb",
"dataset": "249b",
"ip": "192.168.56.10",
"node": "H5dfFeA"
}
]
[
{
"index": "my-index-000001",
"shard": "0",
"prirep": "p",
"state": "STARTED",
"docs": "3014",
"store": "31.1mb",
"dataset": "249b",
"ip": "192.168.56.10",
"node": "H5dfFeA"
}
]
[
{
"index": "my-index-000001",
"shard": "0",
"prirep": "p",
"state": "RELOCATING",
"docs": "3014",
"store": "31.1mb",
"dataset": "249b",
"ip": "192.168.56.10",
"node": "H5dfFeA -> -> 192.168.56.30 bGG90GE"
}
]
[
{
"index": "my-index-000001",
"shard": "0",
"prirep": "p",
"state": "STARTED",
"docs": "3014",
"store": "31.1mb",
"dataset": "249b",
"ip": "192.168.56.10",
"node": "H5dfFeA"
},
{
"index": "my-index-000001",
"shard": "0",
"prirep": "r",
"state": "INITIALIZING",
"docs": "0",
"store": "14.3mb",
"dataset": "249b",
"ip": "192.168.56.30",
"node": "bGG90GE"
}
]
[
{
"index": "my-index-000001",
"shard": "0",
"prirep": "p",
"state": "STARTED",
"unassigned.reason": "3014 31.1mb 192.168.56.10 H5dfFeA"
},
{
"index": "my-index-000001",
"shard": "0",
"prirep": "r",
"state": "STARTED",
"unassigned.reason": "3014 31.1mb 192.168.56.30 bGG90GE"
},
{
"index": "my-index-000001",
"shard": "0",
"prirep": "r",
"state": "STARTED",
"unassigned.reason": "3014 31.1mb 192.168.56.20 I8hydUG"
},
{
"index": "my-index-000001",
"shard": "0",
"prirep": "r",
"state": "UNASSIGNED",
"unassigned.reason": "ALLOCATION_FAILED"
}
]