--- title: "获取集群统计信息" date: 2026-01-28 lastmod: 2026-01-28 description: "获取集群级别的统计信息,提供集群的高级别概览" tags: ["集群管理", "统计信息", "监控"] summary: "获取集群级别的统计信息,提供集群的高级别概览,包括节点信息、索引信息和集群健康状态。 API # GET /_cluster/stats GET /_cluster/stats/nodes/{nodeId} API 的作用 # 该 API 用于获取集群级别的统计信息,提供集群的高级别概览。返回的信息包括: 统计类别 描述 节点统计 节点数量、节点角色、节点版本信息等 索引统计 分片统计、映射统计、分析器统计等 集群健康 集群状态、分片分配情况等 时间戳 统计信息收集的时间 集群 UUID 集群的唯一标识符 API 的参数 # 路由参数 # 参数 类型 是否必填 默认值 描述 {nodeId} 字符串 否 所有节点 节点 ID 或名称列表(逗号分隔)。特殊值:_local 表示当前连接的节点 Query String 参数 # 参数 类型 是否必填 默认值 描述 nodeId 字符串 否 所有节点 限制返回的节点信息,可以指定特定的节点或节点列表(逗号分隔) timeout 时间值 否 无限制 操作超时时间 flat_settings 布尔值 否 false 是否以扁平格式返回设置 示例 # 获取整个集群的统计信息 # GET /_cluster/stats 响应示例:" --- 获取集群级别的统计信息,提供集群的高级别概览,包括节点信息、索引信息和集群健康状态。 ## API ``` GET /_cluster/stats GET /_cluster/stats/nodes/{nodeId} ``` ## API 的作用 该 API 用于获取集群级别的统计信息,提供集群的高级别概览。返回的信息包括: | 统计类别 | 描述 | |----------|------| | 节点统计 | 节点数量、节点角色、节点版本信息等 | | 索引统计 | 分片统计、映射统计、分析器统计等 | | 集群健康 | 集群状态、分片分配情况等 | | 时间戳 | 统计信息收集的时间 | | 集群 UUID | 集群的唯一标识符 | ## API 的参数 ### 路由参数 | 参数 | 类型 | 是否必填 | 默认值 | 描述 | |------|------|----------|--------|------| | `{nodeId}` | 字符串 | 否 | 所有节点 | 节点 ID 或名称列表(逗号分隔)。特殊值:`_local` 表示当前连接的节点 | ### Query String 参数 | 参数 | 类型 | 是否必填 | 默认值 | 描述 | |------|------|----------|--------|------| | `nodeId` | 字符串 | 否 | 所有节点 | 限制返回的节点信息,可以指定特定的节点或节点列表(逗号分隔) | | `timeout` | 时间值 | 否 | 无限制 | 操作超时时间 | | `flat_settings` | 布尔值 | 否 | false | 是否以扁平格式返回设置 | ## 示例 ### 获取整个集群的统计信息 ```bash GET /_cluster/stats ``` **响应示例:** ```json { "cluster_name": "easysearch-cluster", "cluster_uuid": "xxx-xxx-xxx", "timestamp": 1641234567890, "status": "green", "indices": { "count": 10, "shards": { "total": 50, "primaries": 25, "replication": 1.0 }, "docs": { "count": 100000, "deleted": 1000 }, "store": { "size_in_bytes": 1073741824 } }, "nodes": { "count": { "total": 3, "master": 3, "data": 3, "ingest": 3, "coordinating_only": 0 }, "versions": [ "1.0.0" ], "os": { "available_processors": 24, "allocated_processors": 24, "names": [ { "name": "Linux", "count": 3 } ] }, "process": { "cpu_percent": 10, "open_file_descriptors": 1000 }, "jvm": { "max_uptime_in_millis": 3600000, "versions": [ { "version": "17.0.1", "vm_name": "OpenJDK", "vm_version": "17.0.1+12", "vm_vendor": "Eclipse Adoptium", "count": 3 } ], "mem": { "heap_used_in_bytes": 1073741824, "heap_max_in_bytes": 2147483648 } } } } ``` ### 获取指定节点的统计信息 ```bash GET /_cluster/stats/nodes/node1,node2 ``` ### 获取本地节点的统计信息 ```bash GET /_cluster/stats/nodes/_local ``` ### 设置超时时间 ```bash GET /_cluster/stats?timeout=30s ``` ### 以扁平格式返回设置 ```bash GET /_cluster/stats?flat_settings=true ``` ## 返回数据结构说明 ### indices(索引统计) | 字段 | 描述 | |------|------| | `count` | 索引总数 | | `shards.total` | 分片总数 | | `shards.primaries` | 主分片数量 | | `shards.replication` | 副本因子 | | `docs.count` | 文档总数 | | `docs.deleted` | 已删除文档数 | | `store.size_in_bytes` | 存储大小(字节) | ### nodes(节点统计) | 字段 | 描述 | |------|------| | `count.total` | 节点总数 | | `count.master` | 有主节点资格的节点数 | | `count.data` | 数据节点数 | | `count.ingest` | 摄入节点数 | | `versions` | 节点版本列表 | | `os.available_processors` | 可用处理器总数 | | `jvm.mem.heap_used_in_bytes` | JVM 堆内存使用量 |