Nodes stats

The nodes stats API returns statistics about your cluster.

Path and HTTP methods

  1. GET /_nodes/stats
  2. GET /_nodes/<node_id>/stats
  3. GET /_nodes/stats/<metric>
  4. GET /_nodes/<node_id>/stats/<metric>
  5. GET /_nodes/stats/<metric>/<index_metric>
  6. GET /_nodes/<node_id>/stats/<metric>/<index_metric>

Path parameters

The following table lists the available path parameters. All path parameters are optional.

ParameterTypeDescription
nodeIdStringA comma-separated list of nodeIds used to filter results. Supports node filters. Defaults to _all.
metricStringA comma-separated list of metric groups that will be included in the response. For example, jvm,fs. See the list of all metrics below. Defaults to all metrics.
index_metricStringA comma-separated list of index metric groups that will be included in the response. For example, docs,store. See the list of all index metrics below. Defaults to all index metrics.

The following table lists all available metric groups.

MetricDescription
indicesIndex statistics, such as size, document count, and search, index, and delete times for documents.
osStatistics about the host OS, including load, memory, and swapping.
processStatistics about processes, including their memory consumption, open file descriptors, and CPU usage.
jvmStatistics about the JVM, including memory pool, buffer pool, and garbage collection, and the number of loaded classes.
fsFile system statistics, such as read/write statistics, data path, and free disk space.
transportTransport layer statistics about send/receive in cluster communication.
httpStatistics about the HTTP layer.
breakerStatistics about the field data circuit breakers.
scriptStatistics about scripts, such as compilations and cache evictions.
discoveryStatistics about cluster states.
ingestStatistics about ingest pipelines.
adaptive_selectionStatistics about adaptive replica selection, which selects an eligible node using shard allocation awareness.
script_cacheStatistics about script cache.
indexing_pressureStatistics about the node’s indexing pressure.
shard_indexing_pressureStatistics about shard indexing pressure.

To filter the information returned for the indices metric, you can use specific index_metric values. You can use these only when you use the following query types:

  1. GET _nodes/stats/
  2. GET _nodes/stats/_all
  3. GET _nodes/stats/indices

The following index metrics are supported:

  • docs
  • store
  • indexing
  • get
  • search
  • merge
  • refresh
  • flush
  • warmer
  • query_cache
  • fielddata
  • completion
  • segments
  • translog
  • request_cache

For example, the following query requests statistics for docs and search:

  1. GET _nodes/stats/indices/docs,search

Query parameters

The following table lists the available query parameters. All query parameters are optional.

ParameterTypeDescription
completion_fieldsStringThe fields to include in completion statistics. Supports comma-separated lists and wildcard expressions.
fielddata_fieldsStringThe fields to include in fielddata statistics. Supports comma-separated lists and wildcard expressions.
fieldsStringThe fields to include. Supports comma-separated lists and wildcard expressions.
groupsStringA comma-separated list of search groups to include in the search statistics.
levelStringSpecifies whether statistics are aggregated at the cluster, index, or shard level. Valid values are indices, node, and shard.
timeoutTimeSets the time limit for node response. Default is 30s.
include_segment_file_sizesBooleanIf segment statistics are requested, this field specifies to return the aggregated disk usage of every Lucene index file. Default is false.

Sample request

  1. GET _nodes/stats/

Sample response

  1. {
  2. "_nodes" : {
  3. "total" : 1,
  4. "successful" : 1,
  5. "failed" : 0
  6. },
  7. "cluster_name" : "docker-cluster",
  8. "nodes" : {
  9. "F-ByTQzVQ3GQeYzQJArJGQ" : {
  10. "timestamp" : 1664484195257,
  11. "name" : "opensearch",
  12. "transport_address" : "127.0.0.1:9300",
  13. "host" : "127.0.0.1",
  14. "ip" : "127.0.0.1:9300",
  15. "roles" : [
  16. "cluster_manager",
  17. "data",
  18. "ingest",
  19. "remote_cluster_client"
  20. ],
  21. "attributes" : {
  22. "shard_indexing_pressure_enabled" : "true"
  23. },
  24. "indices" : {
  25. "docs" : {
  26. "count" : 13160,
  27. "deleted" : 12
  28. },
  29. "store" : {
  30. "size_in_bytes" : 6263461,
  31. "reserved_in_bytes" : 0
  32. },
  33. "indexing" : {
  34. "index_total" : 0,
  35. "index_time_in_millis" : 0,
  36. "index_current" : 0,
  37. "index_failed" : 0,
  38. "delete_total" : 204,
  39. "delete_time_in_millis" : 427,
  40. "delete_current" : 0,
  41. "noop_update_total" : 0,
  42. "is_throttled" : false,
  43. "throttle_time_in_millis" : 0
  44. },
  45. "get" : {
  46. "total" : 4,
  47. "time_in_millis" : 18,
  48. "exists_total" : 4,
  49. "exists_time_in_millis" : 18,
  50. "missing_total" : 0,
  51. "missing_time_in_millis" : 0,
  52. "current" : 0
  53. },
  54. "search" : {
  55. "open_contexts": 4,
  56. "query_total": 194,
  57. "query_time_in_millis": 467,
  58. "query_current": 0,
  59. "fetch_total": 194,
  60. "fetch_time_in_millis": 143,
  61. "fetch_current": 0,
  62. "scroll_total": 0,
  63. "scroll_time_in_millis": 0,
  64. "scroll_current": 0,
  65. "point_in_time_total": 0,
  66. "point_in_time_time_in_millis": 0,
  67. "point_in_time_current": 0,
  68. "suggest_total": 0,
  69. "suggest_time_in_millis": 0,
  70. "suggest_current": 0
  71. },
  72. "merges" : {
  73. "current" : 0,
  74. "current_docs" : 0,
  75. "current_size_in_bytes" : 0,
  76. "total" : 1,
  77. "total_time_in_millis" : 5,
  78. "total_docs" : 12,
  79. "total_size_in_bytes" : 3967,
  80. "total_stopped_time_in_millis" : 0,
  81. "total_throttled_time_in_millis" : 0,
  82. "total_auto_throttle_in_bytes" : 251658240
  83. },
  84. "refresh" : {
  85. "total" : 74,
  86. "total_time_in_millis" : 201,
  87. "external_total" : 57,
  88. "external_total_time_in_millis" : 314,
  89. "listeners" : 0
  90. },
  91. "flush" : {
  92. "total" : 28,
  93. "periodic" : 28,
  94. "total_time_in_millis" : 1261
  95. },
  96. "warmer" : {
  97. "current" : 0,
  98. "total" : 45,
  99. "total_time_in_millis" : 99
  100. },
  101. "query_cache" : {
  102. "memory_size_in_bytes" : 0,
  103. "total_count" : 0,
  104. "hit_count" : 0,
  105. "miss_count" : 0,
  106. "cache_size" : 0,
  107. "cache_count" : 0,
  108. "evictions" : 0
  109. },
  110. "fielddata" : {
  111. "memory_size_in_bytes" : 356,
  112. "evictions" : 0
  113. },
  114. "completion" : {
  115. "size_in_bytes" : 0,
  116. "fields" : { }
  117. },
  118. "segments" : {
  119. "count" : 17,
  120. "memory_in_bytes" : 0,
  121. "terms_memory_in_bytes" : 0,
  122. "stored_fields_memory_in_bytes" : 0,
  123. "term_vectors_memory_in_bytes" : 0,
  124. "norms_memory_in_bytes" : 0,
  125. "points_memory_in_bytes" : 0,
  126. "doc_values_memory_in_bytes" : 0,
  127. "index_writer_memory_in_bytes" : 0,
  128. "version_map_memory_in_bytes" : 0,
  129. "fixed_bit_set_memory_in_bytes" : 288,
  130. "max_unsafe_auto_id_timestamp" : -1,
  131. "file_sizes" : { }
  132. },
  133. "translog" : {
  134. "operations" : 12,
  135. "size_in_bytes" : 1452,
  136. "uncommitted_operations" : 12,
  137. "uncommitted_size_in_bytes" : 1452,
  138. "earliest_last_modified_age" : 164160
  139. },
  140. "request_cache" : {
  141. "memory_size_in_bytes" : 1649,
  142. "evictions" : 0,
  143. "hit_count" : 0,
  144. "miss_count" : 18
  145. },
  146. "recovery" : {
  147. "current_as_source" : 0,
  148. "current_as_target" : 0,
  149. "throttle_time_in_millis" : 0
  150. }
  151. },
  152. "os" : {
  153. "timestamp" : 1664484195263,
  154. "cpu" : {
  155. "percent" : 0,
  156. "load_average" : {
  157. "1m" : 0.0,
  158. "5m" : 0.0,
  159. "15m" : 0.0
  160. }
  161. },
  162. "mem" : {
  163. "total_in_bytes" : 13137076224,
  164. "free_in_bytes" : 9265442816,
  165. "used_in_bytes" : 3871633408,
  166. "free_percent" : 71,
  167. "used_percent" : 29
  168. },
  169. "swap" : {
  170. "total_in_bytes" : 4294967296,
  171. "free_in_bytes" : 4294967296,
  172. "used_in_bytes" : 0
  173. },
  174. "cgroup" : {
  175. "cpuacct" : {
  176. "control_group" : "/",
  177. "usage_nanos" : 338710071600
  178. },
  179. "cpu" : {
  180. "control_group" : "/",
  181. "cfs_period_micros" : 100000,
  182. "cfs_quota_micros" : -1,
  183. "stat" : {
  184. "number_of_elapsed_periods" : 0,
  185. "number_of_times_throttled" : 0,
  186. "time_throttled_nanos" : 0
  187. }
  188. },
  189. "memory" : {
  190. "control_group" : "/",
  191. "limit_in_bytes" : "9223372036854771712",
  192. "usage_in_bytes" : "1432346624"
  193. }
  194. }
  195. },
  196. "process" : {
  197. "timestamp" : 1664484195263,
  198. "open_file_descriptors" : 556,
  199. "max_file_descriptors" : 65536,
  200. "cpu" : {
  201. "percent" : 0,
  202. "total_in_millis" : 170870
  203. },
  204. "mem" : {
  205. "total_virtual_in_bytes" : 6563344384
  206. }
  207. },
  208. "jvm" : {
  209. "timestamp" : 1664484195264,
  210. "uptime_in_millis" : 21232111,
  211. "mem" : {
  212. "heap_used_in_bytes" : 308650480,
  213. "heap_used_percent" : 57,
  214. "heap_committed_in_bytes" : 536870912,
  215. "heap_max_in_bytes" : 536870912,
  216. "non_heap_used_in_bytes" : 147657128,
  217. "non_heap_committed_in_bytes" : 152502272,
  218. "pools" : {
  219. "young" : {
  220. "used_in_bytes" : 223346688,
  221. "max_in_bytes" : 0,
  222. "peak_used_in_bytes" : 318767104,
  223. "peak_max_in_bytes" : 0,
  224. "last_gc_stats" : {
  225. "used_in_bytes" : 0,
  226. "max_in_bytes" : 0,
  227. "usage_percent" : -1
  228. }
  229. },
  230. "old" : {
  231. "used_in_bytes" : 67068928,
  232. "max_in_bytes" : 536870912,
  233. "peak_used_in_bytes" : 67068928,
  234. "peak_max_in_bytes" : 536870912,
  235. "last_gc_stats" : {
  236. "used_in_bytes" : 34655744,
  237. "max_in_bytes" : 536870912,
  238. "usage_percent" : 6
  239. }
  240. },
  241. "survivor" : {
  242. "used_in_bytes" : 18234864,
  243. "max_in_bytes" : 0,
  244. "peak_used_in_bytes" : 32721280,
  245. "peak_max_in_bytes" : 0,
  246. "last_gc_stats" : {
  247. "used_in_bytes" : 18234864,
  248. "max_in_bytes" : 0,
  249. "usage_percent" : -1
  250. }
  251. }
  252. }
  253. },
  254. "threads" : {
  255. "count" : 80,
  256. "peak_count" : 80
  257. },
  258. "gc" : {
  259. "collectors" : {
  260. "young" : {
  261. "collection_count" : 18,
  262. "collection_time_in_millis" : 199
  263. },
  264. "old" : {
  265. "collection_count" : 0,
  266. "collection_time_in_millis" : 0
  267. }
  268. }
  269. },
  270. "buffer_pools" : {
  271. "mapped" : {
  272. "count" : 23,
  273. "used_in_bytes" : 6232113,
  274. "total_capacity_in_bytes" : 6232113
  275. },
  276. "direct" : {
  277. "count" : 63,
  278. "used_in_bytes" : 9050069,
  279. "total_capacity_in_bytes" : 9050068
  280. },
  281. "mapped - 'non-volatile memory'" : {
  282. "count" : 0,
  283. "used_in_bytes" : 0,
  284. "total_capacity_in_bytes" : 0
  285. }
  286. },
  287. "classes" : {
  288. "current_loaded_count" : 20693,
  289. "total_loaded_count" : 20693,
  290. "total_unloaded_count" : 0
  291. }
  292. },
  293. "thread_pool" : {
  294. "OPENSEARCH_ML_TASK_THREAD_POOL" : {
  295. "threads" : 0,
  296. "queue" : 0,
  297. "active" : 0,
  298. "rejected" : 0,
  299. "largest" : 0,
  300. "completed" : 0
  301. },
  302. "ad-batch-task-threadpool" : {
  303. "threads" : 0,
  304. "queue" : 0,
  305. "active" : 0,
  306. "rejected" : 0,
  307. "largest" : 0,
  308. "completed" : 0
  309. },
  310. ...
  311. },
  312. "fs" : {
  313. "timestamp" : 1664484195264,
  314. "total" : {
  315. "total_in_bytes" : 269490393088,
  316. "free_in_bytes" : 261251477504,
  317. "available_in_bytes" : 247490805760
  318. },
  319. "data" : [
  320. {
  321. "path" : "/usr/share/opensearch/data/nodes/0",
  322. "mount" : "/ (overlay)",
  323. "type" : "overlay",
  324. "total_in_bytes" : 269490393088,
  325. "free_in_bytes" : 261251477504,
  326. "available_in_bytes" : 247490805760
  327. }
  328. ],
  329. "io_stats" : { }
  330. },
  331. "transport" : {
  332. "server_open" : 0,
  333. "total_outbound_connections" : 0,
  334. "rx_count" : 0,
  335. "rx_size_in_bytes" : 0,
  336. "tx_count" : 0,
  337. "tx_size_in_bytes" : 0
  338. },
  339. "http" : {
  340. "current_open" : 5,
  341. "total_opened" : 1108
  342. },
  343. "breakers" : {
  344. "request" : {
  345. "limit_size_in_bytes" : 322122547,
  346. "limit_size" : "307.1mb",
  347. "estimated_size_in_bytes" : 0,
  348. "estimated_size" : "0b",
  349. "overhead" : 1.0,
  350. "tripped" : 0
  351. },
  352. "fielddata" : {
  353. "limit_size_in_bytes" : 214748364,
  354. "limit_size" : "204.7mb",
  355. "estimated_size_in_bytes" : 356,
  356. "estimated_size" : "356b",
  357. "overhead" : 1.03,
  358. "tripped" : 0
  359. },
  360. "in_flight_requests" : {
  361. "limit_size_in_bytes" : 536870912,
  362. "limit_size" : "512mb",
  363. "estimated_size_in_bytes" : 0,
  364. "estimated_size" : "0b",
  365. "overhead" : 2.0,
  366. "tripped" : 0
  367. },
  368. "parent" : {
  369. "limit_size_in_bytes" : 510027366,
  370. "limit_size" : "486.3mb",
  371. "estimated_size_in_bytes" : 308650480,
  372. "estimated_size" : "294.3mb",
  373. "overhead" : 1.0,
  374. "tripped" : 0
  375. }
  376. },
  377. "script" : {
  378. "compilations" : 0,
  379. "cache_evictions" : 0,
  380. "compilation_limit_triggered" : 0
  381. },
  382. "discovery" : {
  383. "cluster_state_queue" : {
  384. "total" : 0,
  385. "pending" : 0,
  386. "committed" : 0
  387. },
  388. "published_cluster_states" : {
  389. "full_states" : 2,
  390. "incompatible_diffs" : 0,
  391. "compatible_diffs" : 10
  392. }
  393. },
  394. "ingest" : {
  395. "total" : {
  396. "count" : 0,
  397. "time_in_millis" : 0,
  398. "current" : 0,
  399. "failed" : 0
  400. },
  401. "pipelines" : { }
  402. },
  403. "adaptive_selection" : {
  404. "F-ByTQzVQ3GQeYzQJArJGQ" : {
  405. "outgoing_searches" : 0,
  406. "avg_queue_size" : 0,
  407. "avg_service_time_ns" : 501024,
  408. "avg_response_time_ns" : 794105,
  409. "rank" : "0.8"
  410. }
  411. },
  412. "script_cache" : {
  413. "sum" : {
  414. "compilations" : 0,
  415. "cache_evictions" : 0,
  416. "compilation_limit_triggered" : 0
  417. },
  418. "contexts" : [
  419. {
  420. "context" : "aggregation_selector",
  421. "compilations" : 0,
  422. "cache_evictions" : 0,
  423. "compilation_limit_triggered" : 0
  424. },
  425. {
  426. "context" : "aggs",
  427. "compilations" : 0,
  428. "cache_evictions" : 0,
  429. "compilation_limit_triggered" : 0
  430. },
  431. ...
  432. ]
  433. },
  434. "indexing_pressure" : {
  435. "memory" : {
  436. "current" : {
  437. "combined_coordinating_and_primary_in_bytes" : 0,
  438. "coordinating_in_bytes" : 0,
  439. "primary_in_bytes" : 0,
  440. "replica_in_bytes" : 0,
  441. "all_in_bytes" : 0
  442. },
  443. "total" : {
  444. "combined_coordinating_and_primary_in_bytes" : 40256,
  445. "coordinating_in_bytes" : 40256,
  446. "primary_in_bytes" : 45016,
  447. "replica_in_bytes" : 0,
  448. "all_in_bytes" : 40256,
  449. "coordinating_rejections" : 0,
  450. "primary_rejections" : 0,
  451. "replica_rejections" : 0
  452. },
  453. "limit_in_bytes" : 53687091
  454. }
  455. },
  456. "shard_indexing_pressure" : {
  457. "stats" : { },
  458. "total_rejections_breakup_shadow_mode" : {
  459. "node_limits" : 0,
  460. "no_successful_request_limits" : 0,
  461. "throughput_degradation_limits" : 0
  462. },
  463. "enabled" : false,
  464. "enforced" : false
  465. }
  466. }
  467. }
  468. }

Response fields

The following table lists all response fields.

FieldData typeDescription
_nodesObjectStatistics about the nodes that are returned.
_nodes.totalIntegerThe total number of nodes for this request.
_nodes.successfulIntegerThe number of nodes for which the request was successful.
_nodes.failedIntegerThe number of nodes for which the request failed. If there are nodes for which the request failed, the failure message is included.
cluster_nameStringThe name of the cluster.
nodesObjectStatistics for the nodes included in this request.

nodes

The nodes object contains all nodes that are returned by the request, along with their IDs. Each node has the following properties.

FieldData typeDescription
timestampIntegerThe time the nodes statistics were collected, in milliseconds since the epoch.
nameStringThe name of the node.
transport_addressIP addressThe host and port of the transport layer that is used by nodes in a cluster to communicate internally.
hostIP addressThe network host of the node.
ipIP addressThe IP address and port of the node.
rolesArrayThe roles of the node (for example, cluster_manager, data, or ingest).
attributesObjectThe attributes of the node (for example, shard_indexing_pressure_enabled).
indicesObjectIndex statistics for each index that has shards on the node.
osObjectStatistics about the OS for the node.
processObjectProcess statistics for the node.
jvmObjectStatistics about the JVM for the node.
thread_poolObjectStatistics about each thread pool for the node.
fsObjectStatistics about the file stores for the node.
transportObjectTransport statistics for the node.
httpObjectHTTP statistics for the node.
http.current_openIntegerThe number of currently open HTTP connections for the node.
http.total_openedIntegerThe total number of HTTP connections the node has opened since it started.
breakersObjectStatistics about the circuit breakers for the node.
scriptObjectScript statistics for the node.
script_cacheObjectScript cache statistics for the node.
discoveryObjectNode discovery statistics for the node.
ingestObjectIngest statistics for the node.
adaptive_selectionObjectStatistics about adaptive selections for the node.
indexing_pressureObjectStatistics related to the node’s indexing pressure.
shard_indexing_pressureObjectStatistics related to indexing pressure at the shard level.
search_backpressureObjectStatistics related to search backpressure.

indices

The indices object contains the index statistics for each index with shards on this node. Each index has the following properties.

FieldField typeDescription
docsObjectDocument statistics for all primary shards that exist on the node.
docs.countIntegerThe number of documents reported by Lucene. Excludes deleted documents and recently indexed documents that are not yet assigned to a segment. Nested documents are counted separately.
docs.deletedIntegerThe number of deleted documents reported by Lucene. Excludes recent deletion operations that have not yet affect the segment.
storeObjectStatistics about the shard sizes of the shards on the node.
store.size_in_bytesIntegerTotal size of all shards on the node.
store.reserved_in_bytesIntegerThe predicted number of bytes the shard store will grow to be because of activities such as restoring snapshots and peer recoveries.
indexingObjectStatistics about indexing operations for the node.
indexing.index_totalIntegerThe total number of indexing operations on the node.
indexing.index_time_in_millisIntegerThe total time for all indexing operations, in milliseconds.
indexing.index_currentIntegerThe number of indexing operations that are currently running.
indexing.index_failedIntegerThe number of indexing operations that have failed.
indexing.delete_totalIntegerThe total number of deletions.
indexing.delete_time_in_millisIntegerThe total time for all deletion operations, in milliseconds.
indexing.delete_currentIntegerThe number of deletion operations that are currently running.
indexing.noop_update_totalIntegerThe total number of noop operations.
indexing.is_throttledBooleanSpecifies whether any operations were throttled.
indexing.throttle_time_in_millisIntegerThe total time for throttling operations, in milliseconds.
getObjectStatistics about the get operations for the node.
get.totalIntegerThe total number of get operations.
get.time_in_millisIntegerThe total time for all get operations, in milliseconds.
get.exists_totalIntegerThe total number of successful get operations.
get.exists_time_in_millisIntegerThe total time for all successful get operations, in milliseconds.
get.missing_totalIntegerThe number of failed get operations.
get.missing_time_in_millisIntegerThe total time for all failed get operations, in milliseconds.
get.currentIntegerThe number of get operations that are currently running.
searchObjectStatistics about the search operations for the node.
search.point_in_time_totalIntegerThe total number of Point in Time contexts that have been created (completed and active) since the node last restarted.
search.point_in_time_time_in_millisIntegerThe amount of time that Point in Time contexts have been held open since the node last restarted, in milliseconds.
search.point_in_time_currentIntegerThe number of Point in Time contexts currently open.
search.open_contextsIntegerThe number of open search contexts.
search.query_totalIntegerThe total number of query operations.
search.query_time_in_millisIntegerThe total time for all query operations, in milliseconds.
search.query_currentIntegerThe number of query operations that are currently running.
search.fetch_totalIntegerThe total number of fetch operations.
search.fetch_time_in_millisIntegerThe total time for all fetch operations, in milliseconds.
search.fetch_currentIntegerThe number of fetch operations that are currently running.
search.scroll_totalIntegerThe total number of scroll operations.
search.scroll_time_in_millisIntegerThe total time for all scroll operations, in milliseconds.
search.scroll_currentIntegerThe number of scroll operations that are currently running.
search.suggest_totalIntegerThe total number of suggest operations.
search.suggest_time_in_millisIntegerThe total time for all suggest operations, in milliseconds.
search.suggest_currentIntegerThe number of suggest operations that are currently running.
mergesObjectStatistics about merge operations for the node.
merges.currentIntegerThe number of merge operations that are currently running.
merges.current_docsIntegerThe number of document merges that are currently running.
merges.current_size_in_bytesIntegerThe memory size, in bytes, that is used to perform current merge operations.
merges.totalIntegerThe total number of merge operations.
merges.total_time_in_millisIntegerThe total time for merges, in milliseconds.
merges.total_docsIntegerThe total number of documents that have been merged.
merges.total_size_in_bytesIntegerThe total size of all merged documents, in bytes.
merges.total_stopped_time_in_millisIntegerThe total time spent on stopping merge operations, in milliseconds.
merges.total_throttled_time_in_millisIntegerThe total time spent on throttling merge operations, in milliseconds.
merges.total_auto_throttle_in_bytesIntegerThe total size of automatically throttled merge operations, in bytes.
refreshObjectStatistics about refresh operations for the node.
refresh.totalIntegerThe total number of refresh operations.
refresh.total_time_in_millisIntegerThe total time for all refresh operations, in milliseconds.
refresh.external_totalIntegerThe total number of external refresh operations.
refresh.external_total_time_in_millisIntegerThe total time for all external refresh operations, in milliseconds.
refresh.listenersIntegerThe number of refresh listeners.
flushObjectStatistics about flush operations for the node.
flush.totalIntegerThe total number of flush operations.
flush.periodicIntegerThe total number of periodic flush operations.
flush.total_time_in_millisIntegerThe total time for all flush operations, in milliseconds.
warmerObjectStatistics about the index warming operations for the node.
warmer.currentIntegerThe number of current index warming operations.
warmer.totalIntegerThe total number of index warming operations.
warmer.total_time_in_millisIntegerThe total time for all index warming operations, in milliseconds.
query_cacheStatistics about query cache operations for the node. 
query_cache.memory_size_in_bytesIntegerThe amount of memory used for the query cache for all shards in the node.
query_cache.total_countIntegerThe total number of hits, misses, and cached queries in the query cache.
query_cache.hit_countIntegerThe total number of hits in the query cache.
query_cache.miss_countIntegerThe total number of misses in the query cache.
query_cache.cache_sizeIntegerThe size of the query cache, in bytes.
query_cache.cache_countIntegerThe number of queries in the query cache.
query_cache.evictionsIntegerThe number of evictions in the query cache.
fielddataObjectStatistics about the field data cache for all shards in the node.
fielddata.memory_size_in_bytesIntegerThe total amount of memory used for the field data cache for all shards in the node.
fielddata.evictionsIntegerThe number of evictions in the field data cache.
fielddata.fieldsObjectContains all field data fields.
completionObjectStatistics about completions for all shards in the node.
completion.size_in_bytesIntegerThe total amount of memory used for completion for all shards in the node, in bytes.
completion.fieldsObjectContains completion fields.
segmentsObjectStatistics about segments for all shards in the node.
segments.countIntegerThe total number of segments.
segments.memory_in_bytesIntegerThe total amount of memory, in bytes.
segments.terms_memory_in_bytesIntegerThe total amount of memory used for terms, in bytes.
segments.stored_fields_memory_in_bytesIntegerThe total amount of memory used for stored fields, in bytes.
segments.term_vectors_memory_in_bytesIntegerThe total amount of memory used for term vectors, in bytes.
segments.norms_memory_in_bytesIntegerThe total amount of memory used for normalization factors, in bytes.
segments.points_memory_in_bytesIntegerThe total amount of memory used for points, in bytes.
segments.doc_values_memory_in_bytesIntegerThe total amount of memory used for doc values, in bytes.
segments.index_writer_memory_in_bytesIntegerThe total amount of memory used by all index writers, in bytes.
segments.version_map_memory_in_bytesIntegerThe total amount of memory used by all version maps, in bytes.
segments.fixed_bit_set_memory_in_bytesIntegerThe total amount of memory used by fixed bit sets, in bytes. Fixed bit sets are used for nested objects and join fields.
segments.max_unsafe_auto_id_timestampIntegerThe timestamp for the most recently retired indexing request, in milliseconds since the epoch.
segments.file_sizesIntegerStatistics about the size of the segment files.
translogObjectStatistics about transaction log operations for the node.
translog.operationsIntegerThe number of translog operations.
translog.size_in_bytesIntegerThe size of the translog, in bytes.
translog.uncommitted_operationsIntegerThe number of uncommitted translog operations.
translog.uncommitted_size_in_bytesIntegerThe size of uncommitted translog operations, in bytes.
translog.earliest_last_modified_ageIntegerThe earliest last modified age for the translog.
request_cacheObjectStatistics about the request cache for the node.
request_cache.memory_size_in_bytesIntegerThe memory size used by the request cache, in bytes.
request_cache.evictionsIntegerThe number of request cache evictions.
request_cache.hit_countIntegerThe number of request cache hits.
request_cache.miss_countIntegerThe number of request cache misses.
recoveryObjectStatistics about recovery operations for the node.
recovery.current_as_sourceIntegerThe number of recovery operations that have used an index shard as a source.
recovery.current_as_targetIntegerThe number of recovery operations that have used an index shard as a target.
recovery.throttle_time_in_millisIntegerThe delay of recovery operations due to throttling, in milliseconds.

os

The os object has the OS statistics for the node and has the following properties.

FieldField typeDescription
timestampIntegerThe last refresh time for the OS statistics, in milliseconds since the epoch.
cpuObjectStatistics about the node’s CPU usage.
cpu.percentIntegerRecent CPU usage for the system.
cpu.load_averageObjectStatistics about load averages for the system.
cpu.load_average.1mFloatThe load average for the system for the time period of one minute.
cpu.load_average.5mFloatThe load average for the system for the time period of five minutes.
cpu.load_average.15mFloatThe load average for the system for the time period of 15 minutes.
cpu.memObjectStatistics about memory usage for the node.
cpu.mem.total_in_bytesIntegerThe total amount of physical memory, in bytes.
cpu.mem.free_in_bytesIntegerThe total amount of free physical memory, in bytes.
cpu.mem.used_in_bytesIntegerThe total amount of used physical memory, in bytes.
cpu.mem.free_percentIntegerThe percentage of memory that is free.
cpu.mem.used_percentIntegerThe percentage of memory that is used.
cpu.swapObjectStatistics about swap space for the node.
cpu.swap.total_in_bytesIntegerThe total amount of swap space, in bytes.
cpu.swap.free_in_bytesIntegerThe total amount of free swap space, in bytes.
cpu.swap.used_in_bytesIntegerThe total amount of used swap space, in bytes.
cpu.cgroupObjectContains cgroup statistics for the node. Returned for Linux only.
cpu.cgroup.cpuacctObjectStatistics about the cpuacct control group for the node.
cpu.cgroup.cpuObjectStatistics about the CPU control group for the node.
cpu.cgroup.memoryObjectStatistics about the memory control group for the node.

process

The process object contains process statistics for the node and has the following properties.

FieldField typeDescription
timestampIntegerThe last refresh time for the process statistics, in milliseconds since the epoch.
open_file_descriptorsIntegerThe number of opened file descriptors associated with the current process.
max_file_descriptorsIntegerThe maximum number of file descriptors for the system.
cpuObjectStatistics about the CPU for the node.
cpu.percentIntegerThe percentage of CPU usage for the process.
cpu.total_in_millisIntegerThe total CPU time used by the process on which the JVM is running, in milliseconds.
memObjectStatistics about the memory for the node.
mem.total_virtual_in_bytesIntegerThe total amount of virtual memory that is guaranteed to be available to the process that is currently running, in bytes.

jvm

The jvm object contains statistics about the JVM for the node and has the following properties.

FieldField typeDescription
timestampIntegerThe last refresh time for the JVM statistics, in milliseconds since the epoch.
uptime_in_millisIntegerThe JVM uptime, in milliseconds.
memObjectStatistics for the JVM memory usage on the node.
mem.heap_used_in_bytesIntegerThe amount of memory that is currently being used, in bytes.
mem.heap_used_percentIntegerThe percentage of memory that is currently used by the heap.
mem.heap_committed_in_bytesIntegerThe amount of memory available for use by the heap, in bytes.
mem.heap_max_in_bytesIntegerThe maximum amount of memory available for use by the heap, in bytes.
mem.non_heap_used_in_bytesIntegerThe amount of non-heap memory that is currently used, in bytes.
mem.non_heap_committed_in_bytesIntegerThe maximum amount of non-heap memory available for use, in bytes.
mem.poolsObjectStatistics about heap memory usage for the node.
mem.pools.youngObjectStatistics about the young generation heap memory usage for the node. Contains the amount of memory used, the maximum amount of memory available, and the peak amount of memory used.
mem.pools.oldObjectStatistics about the old generation heap memory usage for the node. Contains the amount of memory used, the maximum amount of memory available, and the peak amount of memory used.
mem.pools.survivorObjectStatistics about the survivor space memory usage for the node. Contains the amount of memory used, the maximum amount of memory available, and the peak amount of memory used.
threadsObjectStatistics about the JVM thread usage for the node.
threads.countIntegerThe number of threads that are currently active in the JVM.
threads.peak_countIntegerThe maximum number of threads in the JVM.
gc.collectorsObjectStatistics about the JVM garbage collectors for the node.
gc.collectors.youngIntegerStatistics about JVM garbage collectors that collect young generation objects.
gc.collectors.young.collection_countIntegerThe number of garbage collectors that collect young generation objects.
gc.collectors.young.collection_time_in_millisIntegerThe total time spent on garbage collection of young generation objects, in milliseconds.
gc.collectors.oldIntegerStatistics about JVM garbage collectors that collect old generation objects.
gc.collectors.old.collection_countIntegerThe number of garbage collectors that collect old generation objects.
gc.collectors.old.collection_time_in_millisIntegerThe total time spent on garbage collection of old generation objects, in milliseconds.
buffer_poolsObjectStatistics about the JVM buffer pools for the node.
buffer_pools.mappedObjectStatistics about the mapped JVM buffer pools for the node.
buffer_pools.mapped.countIntegerThe number of mapped buffer pools.
buffer_pools.mapped.used_in_bytesIntegerThe amount of memory used by mapped buffer pools, in bytes.
buffer_pools.mapped.total_capacity_in_bytesIntegerThe total capacity of the mapped buffer pools, in bytes.
buffer_pools.directObjectStatistics about the direct JVM buffer pools for the node.
buffer_pools.direct.countIntegerThe number of direct buffer pools.
buffer_pools.direct.used_in_bytesIntegerThe amount of memory used by direct buffer pools, in bytes.
buffer_pools.direct.total_capacity_in_bytesIntegerThe total capacity of the direct buffer pools, in bytes.
classesObjectStatistics about the classes loaded by the JVM for the node.
classes.current_loaded_countIntegerThe number of classes currently loaded by the JVM.
classes.total_loaded_countIntegerThe total number of classes loaded by the JVM since it started.
classes.total_unloaded_countIntegerThe total number of classes unloaded by the JVM since it started.

thread_pool

The thread_pool object contains a list of all thread pools. Each thread pool is a nested object specified by its ID with the properties listed below.

FieldField typeDescription
threadsIntegerThe number of threads in the pool.
queueIntegerThe number of threads in queue.
activeIntegerThe number of active threads in the pool.
rejectedIntegerThe number of tasks that have been rejected.
largestIntegerThe peak number of threads in the pool.
completedIntegerThe number of tasks completed.

fs

The fs object represents statistics about the file stores for the node. It has the following properties.

FieldField typeDescription
timestampIntegerThe last refresh time for the file store statistics, in milliseconds since the epoch.
totalObjectStatistics for all file stores of the node.
total.total_in_bytesIntegerThe total memory size of all file stores, in bytes.
total.free_in_bytesIntegerThe total unallocated disk space in all file stores, in bytes.
total.available_in_bytesIntegerThe total disk space available to the JVM on all file stores. Represents the actual amount of memory, in bytes, that OpenSearch can use.
dataArrayThe list of all file stores. Each file store has the properties listed below.
data.pathStringThe path to the file store.
data.mountStringThe mount point of the file store.
data.typeStringThe type of the file store (for example, overlay).
data.total_in_bytesIntegerThe total size of the file store, in bytes.
data.free_in_bytesIntegerThe total unallocated disk space in the file store, in bytes.
data.available_in_bytesIntegerThe total amount of disk space available to the JVM for the file store, in bytes.
io_statsObjectI/O statistics for the node (Linux only). Includes devices, read and write operations, and the I/O operation time.

transport

The transport object has the following properties.

FieldField typeDescription
server_openIntegerThe number of open inbound TCP connections that OpenSearch nodes use for internal communication.
total_outbound_connectionsIntegerThe total number of outbound transport connections that the node has opened since it started.
rx_countIntegerThe total number of RX (receive) packets the node received during internal communication.
rx_size_in_bytesIntegerThe total size of RX packets the node received during internal communication, in bytes.
tx_countIntegerThe total number of TX (transmit) packets the node sent during internal communication.
tx_size_in_bytesIntegerThe total size of TX (transmit) packets the node sent during internal communication, in bytes.

breakers

The breakers object contains statistics about the circuit breakers for the node. Each circuit breaker is a nested object listed by name and contains the following properties.

FieldField typeDescription
limit_size_in_bytesIntegerThe memory limit for the circuit breaker, in bytes.
limit_sizeByte valueThe memory limit for the circuit breaker in human-readable format (for example, 307.1mb).
estimated_size_in_bytesIntegerThe estimated memory used for the operation, in bytes.
estimated_sizeByte valueThe estimated memory used for the operation in human-readable format (for example, 356b).
overheadFloatA factor that all estimates are multiplied by to calculate the final estimate.
trippedIntegerThe total number of times the circuit breaker has been activated to prevent an out-of-memory error.

script and script_cache

The script and script_cache objects have the following properties.

FieldField typeDescription
scriptObjectScript statistics for the node.
script.compilationsIntegerThe total number of script compilations for the node.
script.cache_evictionsIntegerThe total number of times the script cache has purged old data.
script.compilation_limit_triggeredIntegerThe total number of times script compilation was limited by a circuit breaker.
script_cacheObjectScript cache statistics for the node.
script_cache.sum.compilationsIntegerThe total number of script compilations in the cache for the node.
script_cache.sum.cache_evictionsIntegerThe total number of times the script cache has purged old data.
script_cache.sum.compilation_limit_triggeredIntegerThe total number of times script compilation in the cache was limited by a circuit breaker.
script_cache.contextsArray of objectsThe list of contexts for the script cache. Each context contains its name, the number of compilations, the number of cache evictions, and the number of times the script was limited by a circuit breaker.

discovery

The discovery object contains the node discovery statistics and has the following properties.

FieldField typeDescription
cluster_state_queueObjectCluster state queue statistics for the node.
cluster_state_queue.totalIntegerThe total number of cluster states in the queue.
cluster_state_queue.pendingIntegerThe number of pending cluster states in the queue.
cluster_state_queue.committedIntegerThe number of committed cluster states in the queue.
published_cluster_statesObjectStatistics for the published cluster states for the node.
published_cluster_states.full_statesIntegerThe number of published cluster states.
published_cluster_states.incompatible_diffsIntegerThe number of incompatible differences between published cluster states.
published_cluster_states.compatible_diffsIntegerThe number of compatible differences between published cluster states.

ingest

The ingest object contains the ingest statistics and has the following properties.

FieldField typeDescription
totalIntegerIngest statistics for the node’s lifetime.
total.countIntegerThe total number of documents ingested by the node.
total.time_in_millisIntegerThe total amount of time for preprocessing ingest documents, in milliseconds.
total.currentIntegerThe total number of documents that are currently being ingested by the node.
total.failedIntegerThe total number of failed ingestions for the node.
pipelinesObjectIngest pipeline statistics for the node. Each pipeline is a nested object specified by its ID with the properties listed below.
pipelines.id.countIntegerThe number of documents preprocessed by the ingest pipeline.
pipelines.id.time_in_millisIntegerThe total amount of time for preprocessing documents in the ingest pipeline, in milliseconds.
pipelines.id.failedIntegerThe total number of failed ingestions for the ingest pipeline.
pipelines.id.processorsArray of objectsStatistics for the ingest processors. Includes the number of documents that are currently transformed, the total number of transformed documents, the number of failed transformations, and the time spent transforming documents.

adaptive_selection

The adaptive_selection object contains the adaptive selection statistics. Each entry is specified by the node ID and has the properties listed below.

FieldField typeDescription
outgoing_searchesIntegerThe number of outgoing search requests for the node.
avg_queue_sizeIntegerThe rolling average queue size of search requests for the node (exponentially weighted).
avg_service_time_nsIntegerThe rolling average service time for search requests, in nanoseconds (exponentially weighted).
avg_response_time_nsIntegerThe rolling average response time for search requests, in nanoseconds (exponentially weighted).
rankStringThe node’s rank that is used to select shards when routing requests.

indexing_pressure

The indexing_pressure object contains the indexing pressure statistics and has the following properties.

FieldField typeDescription
memoryObjectStatistics related to memory consumption for the indexing load.
memory.currentObjectStatistics related to memory consumption for the current indexing load.
memory.current.combined_coordinating_and_primary_in_bytesIntegerThe total memory used by indexing requests in the coordinating or primary stages, in bytes. A node can reuse the coordinating memory if the primary stage is run locally, so the total memory does not necessarily equal the sum of the coordinating and primary stage memory usage.
memory.current.coordinating_in_bytesThe total memory consumed by indexing requests in the coordinating stage, in bytes. 
memory.current.primary_in_bytesIntegerThe total memory consumed by indexing requests in the primary stage, in bytes.
memory.current.replica_in_bytesIntegerThe total memory consumed by indexing requests in the replica stage, in bytes.
memory.current.all_in_bytesIntegerThe total memory consumed by indexing requests in the coordinating, primary, or replica stages.

shard_indexing_pressure

The shard_indexing_pressure object contains the shard indexing pressure statistics and has the following properties.

FieldField typeDescription
statsObjectStatistics about shard indexing pressure.
total_rejections_breakup_shadow_modeObjectIf running in shadow mode, the total_rejections_breakup_shadow_mode object contains statistics about the request rejection criteria of all shards in the node.
total_rejections_breakup_shadow_mode.node_limitsIntegerThe total number of rejections due to the node memory limit. When all shards reach the memory limit assigned to the node (for example, 10% of heap size), the shard is unable to take in more traffic on the node, and the indexing request is rejected.
total_rejections_breakup_shadow_mode.no_successful_request_limitsIntegerThe total number of rejections when the node occupancy level is breaching its soft limit and the shard has multiple outstanding requests that are waiting to be executed. In this case, additional indexing requests are rejected until the system recovers.
total_rejections_breakup_shadow_mode.throughput_degradation_limitsIntegerThe total number of rejections when the node occupancy level is breaching its soft limit and there is a constant deterioration in the request turnaround at the shard level. In this case, additional indexing requests are rejected until the system recovers.
enabledBooleanSpecifies whether the shard indexing pressure feature is turned on for the node.
enforcedBooleanIf true, the shard indexing pressure runs in enforced mode (there are rejections). If false, the shard indexing pressure runs in shadow mode (there are no rejections, but statistics are recorded and can be retrieved in the total_rejections_breakup_shadow_mode object). Only applicable if shard indexing pressure is enabled.

Required permissions

If you use the security plugin, make sure you have the appropriate permissions: cluster:monitor/nodes/stats.