1. 程式人生 > >Elasticsearch之cat API

Elasticsearch之cat API

一、Cat通用引數

Verbose

GET /_cat/XXX/?v

開啟詳細輸出

Help

GET /_cat/XXX/?help

輸出可用的列

Headers

GET /_cat/XXX/?h=column1,column2

指定輸出的列

Sort

GET /_cat/XXX/?v&s=column1,column2:desc,column3

指定輸出的列進行排序,預設按照升序排序

Format

GET /_cat/XXX?format=json

指定響應返回的資料格式:text(預設),json,yaml,smile,cbor

(通過設定 Accept的HTTP頭部的多媒體格式的優先順序更高)

二、cat命令

aliases

GET  /_cat/XXX/aliases?v

GET  /_cat/aliases/alias1,aliase2,aliase3

查詢當前配置索引,過濾器,路由的別名

如果需要指定一至多個別名,則以逗號隔開

allocation

GET /_cat/allocation?v

查詢每個節點上分配的分片(shard)的數量和每個分片(shard)所使用的硬碟容量

count

GET  /_cat/count?v

快速查詢當前整個叢集或者指定索引的document的數量(不包括刪除的但是還沒有清理掉的document)

fielddata

GET /_cat/fielddata?v

GET /_cat/fielddata?v&fields=XXX

GET /_cat/fielddata/field1,field2,field3?v

查詢叢集中每個節點中的fileddata所使用的堆記憶體

指定fields

指定多個field

health

GET /_cat/health?v

GET /_cat/health?v&ts=false

查詢當前叢集的健康資訊(同/_cluster/health)

ts用於控制是否顯示時間戳(timestamp)

1、常見的用途是用於監測節點之間的健康值

2、通過迴圈使用該命令,用於追蹤大叢集恢復的時間

  /_cat/health; sleep 120; done green:

     每個索引的primary shard和replica shard都是active狀態的

yellow:

     每個索引的primary shard都是active狀態的,但是部分replica shard不是active狀態,處於不可用的狀態

red:

      不是所有索引的primary shard都是active狀態的,部分索引有資料丟失了

indices

GET  /_cat/indices/index1?v

查詢指定索引index1的相關資訊(組成一個索引(index)的shard數量,document的數量,刪除的doc數量,主存大小和所有索引的總儲存大小(包括replicas)

       其中document的數量和刪除document的數量是lucense層級的,包括所有隱藏的document數量

      要獲取Elasticsearch層級的精確的document數量可以使用 cat count或者Count API

 

master

GET /_cat/master?v

僅用於顯示master的節點ID,繫結IP地址,節點名稱

nodeattrs

GET /_cat/nodeattrs?v

輸出顯示自定義節點屬性

nodes

GET /_cat/nodes?v

GET /_cat/nodes?v&full_id=false

輸出當前叢集的拓撲結構(包括當前節點所在的地方和整個叢集的相關資訊等)
full_id(true/false)用於是否格式化ID欄位以顯示ID的全長或者簡寫

pending tasks

GET /_cat/pending_tasks?v

輸出叢集中正在執行的任務(叢集層級的變化,比如:建立索引,更新mapping,分配或者fail shard)同 /_cluster/pending_tasks

plugins

GET /_cat/plugins?v

輸出每個節點正在執行的外掛資訊

recovery

GET /_cat/recovery?v

提供一個檢視關於索引分片 正在恢復或者已經完成恢復的相關資訊

恢復事件操作可以發生在叢集中一個索引分片從一個節點移動到另外一個節點上。可以發生在快照恢復期間,一個replication層級的變化,節點失敗,或者節點啟動的時候。節點啟動的恢復操作也叫本地儲存恢復(當一個節點啟動的時候分片從硬碟上被載入到)

repositories

GET /_cat/repositories?v

輸出叢集中註冊快照儲存庫

thread pool

GET /_cat/thread_pool

輸出每個節點叢集範圍的執行緒池統計資訊,預設情況下返回正在活動,佇列和被拒絕的統計資訊

shards

GET /_cat/shards

 

GET /_cat/shards/twitt*

 

輸出節點包含分片的詳細資訊(當前分片是primary shard還是 replica shard,doc的數量,硬碟上佔用的位元組已經該節點被分配在哪裡等)

指定索引(模糊匹配)

這個命令可以用於檢視分片的遷移情況和分片的狀態

segments

GET /_cat/segments?v

 

GET /_cat/segments/index1,index1

輸出索引分片中關於segment的低層級的資訊(包括索引名稱,分片數量,doc數量等),提供的資訊類似於_segments端點

查詢指定索引(index1,index2)的segments資訊

 

snapshots

GET /_cat/snapshots/repo1?v

輸出屬於指定倉庫的快照資訊(snapshots)
每個快照資訊包括了它被啟動和被停止的資訊。

templates

GET /_cat/templates?v

GET /_cat/templates/templateName1

GET /_cat/templates/template*

輸出當前正在存在的模板資訊

輸出指定模板的資訊

 

官方API文件:https://www.elastic.co/guide/en/elasticsearch/reference/current/cat.html#intro