cat 节点 API
编辑cat 节点 API
编辑cat API 仅供使用命令行或 Kibana 控制台的人员使用。它们不适用于应用程序使用。对于应用程序使用,请使用节点信息 API。
返回有关集群节点的信息。
请求
编辑GET /_cat/nodes
查询参数
编辑-
bytes
- (可选,字节大小单位)用于显示字节值的单位。
-
format
- (可选,字符串)HTTP accept 标头的简短版本。有效值包括 JSON、YAML 等。
-
full_id
- (可选,布尔值)如果为
true
,则返回完整节点 ID。如果为false
,则返回缩短的节点 ID。默认为false
。 -
h
-
(可选,字符串)要显示的列名的逗号分隔列表。
如果您没有指定要包含哪些列,则 API 将按以下顺序返回默认列。如果您明确指定了一个或多个列,则仅返回指定的列。
有效列为
-
ip
,i
- (默认)IP 地址,例如
127.0.1.1
。 -
heap.percent
,hp
,heapPercent
- (默认)已用总分配 Elasticsearch JVM 堆的百分比,例如
7
。这仅反映在操作系统中运行的 Elasticsearch 进程,并且是其 JVM/堆/内存资源性能的最直接指标。 -
heap.max
,hm
,heapMax
- 总堆,例如
4gb
。 -
ram.percent
,rp
,ramPercent
- (默认)已用操作系统总内存的百分比,例如
47
。这反映了操作系统上运行的所有进程,而不仅仅是 Elasticsearch,并且不能保证与其性能相关。 -
file_desc.percent
,fdp
,fileDescriptorPercent
- 已用文件描述符百分比,例如
1
。 -
node.role
,r
,role
,nodeRole
-
(默认)节点的角色。返回的值包括
c
(冷节点)、d
(数据节点)、f
(冻结节点)、h
(热节点)、i
(摄取节点)、l
(机器学习节点)、m
(有资格成为主节点的节点)、r
(远程集群客户端节点)、s
(内容节点)、t
(转换节点)、v
(仅投票节点)、w
(暖节点) 和-
(仅协调节点)。例如,
dim
表示有资格成为主节点的数据和摄取节点。请参阅节点。 -
master
,m
- (默认)指示节点是否为选定的主节点。返回的值包括
*
(选定的主节点)和-
(未选定的主节点)。 -
name
,n
- (默认)节点名称,例如
I8hydUG
。 -
id
,nodeId
- 节点 ID,例如
k0zy
。 -
pid
,p
- 进程 ID,例如
13061
。 -
port
,po
- 绑定的传输端口,例如
9300
。 -
http_address
,http
- 绑定的 http 地址,例如
127.0.0.1:9200
。 -
version
,v
- Elasticsearch 版本,例如 8.17.0。
-
build
,b
- Elasticsearch 构建哈希值,例如
5c03844
。 -
jdk
,j
- Java 版本,例如
1.8.0
。 -
disk.total
,dt
,diskTotal
- 总磁盘空间,例如
458.3gb
。 -
disk.used
,du
,diskUsed
- 已用磁盘空间,例如
259.8gb
。 -
disk.avail
,d
,disk
,diskAvail
- 可用磁盘空间,例如
198.4gb
。 -
disk.used_percent
,dup
,diskUsedPercent
- 已用磁盘空间百分比,例如
47
。 -
heap.current
,hc
,heapCurrent
- 已用堆,例如
311.2mb
。 -
ram.current
,rc
,ramCurrent
- 已用总内存,例如
513.4mb
。 -
ram.max
,rm
,ramMax
- 总内存,例如
2.9gb
。 -
file_desc.current
,fdc
,fileDescriptorCurrent
- 已用文件描述符,例如
123
。 -
file_desc.max
,fdm
,fileDescriptorMax
- 最大文件描述符数,例如
1024
。 -
cpu
- (默认)最近的系统 CPU 使用率(以百分比表示),例如
12
。 -
load_1m
,l
- (默认)最近的平均负载,例如
0.22
。 -
load_5m
,l
- (默认)过去五分钟的平均负载,例如
0.78
。 -
load_15m
,l
- (默认)过去十五分钟的平均负载,例如
1.24
。 -
uptime
,u
- 节点正常运行时间,例如
17.3m
。 -
completion.size
,cs
,completionSize
- 补全大小,例如
0b
。 -
fielddata.memory_size
,fm
,fielddataMemory
- 已用 fielddata 缓存内存,例如
0b
。 -
fielddata.evictions
,fe
,fielddataEvictions
- Fielddata 缓存逐出,例如
0
。 -
query_cache.memory_size
,qcm
,queryCacheMemory
- 已用查询缓存内存,例如
0b
。 -
query_cache.evictions
,qce
,queryCacheEvictions
- 查询缓存逐出,例如
0
。 -
query_cache.hit_count
,qchc
,queryCacheHitCount
- 查询缓存命中数,例如
0
。 -
query_cache.miss_count
,qcmc
,queryCacheMissCount
- 查询缓存未命中数,例如
0
。 -
request_cache.memory_size
,rcm
,requestCacheMemory
- 已用请求缓存内存,例如
0b
。 -
request_cache.evictions
,rce
,requestCacheEvictions
- 请求缓存逐出,例如
0
。 -
request_cache.hit_count
,rchc
,requestCacheHitCount
- 请求缓存命中数,例如
0
。 -
request_cache.miss_count
,rcmc
,requestCacheMissCount
- 请求缓存未命中数,例如
0
。 -
flush.total
,ft
,flushTotal
- 刷新次数,例如
1
。 -
flush.total_time
,ftt
,flushTotalTime
- 刷新所花费的时间,例如
1
。 -
get.current
,gc
,getCurrent
- 当前 get 操作数,例如
0
。 -
get.time
,gti
,getTime
- get 操作所花费的时间,例如
14ms
。 -
get.total
,gto
,getTotal
- get 操作数,例如
2
。 -
get.exists_time
,geti
,getExistsTime
- 成功 get 操作所花费的时间,例如
14ms
。 -
get.exists_total
,geto
,getExistsTotal
- 成功 get 操作数,例如
2
。 -
get.missing_time
,gmti
,getMissingTime
- 失败 get 操作所花费的时间,例如
0s
。 -
get.missing_total
,gmto
,getMissingTotal
- 失败 get 操作数,例如
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
。 -
refresh.total
,rto
,refreshTotal
- 刷新次数,例如
16
。 -
refresh.time
,rti
,refreshTime
- 刷新所花费的时间,例如
91ms
。 -
script.compilations
,scrcc
,scriptCompilations
- 脚本编译的总数,例如
17
。 -
script.cache_evictions
,scrce
,scriptCacheEvictions
- 从缓存中逐出的已编译脚本总数,例如
6
。 -
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
。 -
suggest.current
,suc
,suggestCurrent
- 当前建议操作的数量,例如
0
。 -
suggest.time
,suti
,suggestTime
- 在建议中花费的时间,例如
0
。 -
suggest.total
,suto
,suggestTotal
- 建议操作的数量,例如
0
。 -
shard_stats.total_count
,sstc
,shards
,shardStatsTotalCount
- 分配的分片数量。
-
mappings.total_count
,mtc
,mappingsTotalCount
- 映射的数量,包括运行时和对象字段。
-
mappings.total_estimated_overhead_in_bytes
,mteo
,mappingsTotalEstimatedOverheadInBytes
- 此节点上映射的估计堆开销(以字节为单位),每个映射字段允许 1KiB 的堆。
-
-
help
- (可选,布尔值)如果为
true
,则响应包含帮助信息。默认为false
。 -
master_timeout
- (可选,时间单位)等待主节点的时间。如果主节点在超时过期之前不可用,则请求失败并返回错误。默认为
30s
。也可以设置为-1
表示请求永远不应超时。 -
s
- (可选,字符串)用逗号分隔的列名称或列别名列表,用于对响应进行排序。
-
time
- (可选,时间单位)用于显示时间值的单位。
-
v
- (可选,布尔值)如果为
true
,则响应包括列标题。默认为false
。 -
include_unloaded_segments
- (可选,布尔值)如果为
true
,则响应包括来自未加载到内存中的段的信息。默认为false
。
示例
编辑带有默认列的示例
编辑resp = client.cat.nodes( v=True, ) print(resp)
response = client.cat.nodes( v: true ) puts response
const response = await client.cat.nodes({ v: "true", }); console.log(response);
GET /_cat/nodes?v=true
API 返回以下响应
ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name 127.0.0.1 65 99 42 3.07 dim * mJw06l1
ip
、heap.percent
、ram.percent
、cpu
和 load_*
列提供了每个节点的 IP 地址和性能信息。
node.role
、master
和 name
列提供了对监控整个集群(尤其是大型集群)有用的信息。
带有显式列的示例
编辑以下 API 请求返回 id
、ip
、port
、v
(版本)和 m
(主节点)列。
resp = client.cat.nodes( v=True, h="id,ip,port,v,m", ) print(resp)
response = client.cat.nodes( v: true, h: 'id,ip,port,v,m' ) puts response
const response = await client.cat.nodes({ v: "true", h: "id,ip,port,v,m", }); console.log(response);
GET /_cat/nodes?v=true&h=id,ip,port,v,m
API 返回以下响应
id ip port v m veJR 127.0.0.1 59938 8.17.0 *