Nodes stats

Introduced 1.0

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 are included in the response. For example, jvm,fs. See the following list of all index metrics. Defaults to all metrics.
index_metricStringA comma-separated list of index metric groups that are included in the response. For example, docs,store. See the following list of all index metrics. 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.
thread_poolStatistics about each thread pool for the node.
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.
breakersStatistics 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.
search_backpressureStatistics related to search backpressure.
cluster_manager_throttlingStatistics related to throttled tasks on the cluster manager node.
weighted_routingStatistics relevant to weighted round robin requests.
resource_usage_statsNode-level resource usage statistics, such as CPU and JVM memory.
admission_controlStatistics about admission control.
cachesStatistics about caches.

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

copy

You can also use specific index_metric values in the caches metric to specify which caches will return statistics. The following index metrics are supported:

  • request_cache

For example, the following query requests statistics for the request_cache:

  1. GET _nodes/stats/caches/request_cache

copy

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 for the indices metric are aggregated at the cluster, index, or shard level. Valid values are indices, node, and shard. When used for the caches metric, indices, shard, and tier are valid. The tier value is ignored if the tiered spillover cache is not in use.
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.

Example request

  1. GET _nodes/stats/

copy

Example response

Select the arrow to view the example response.

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. "request" : {
  72. "dfs_pre_query" : {
  73. "time_in_millis" : 0,
  74. "current" : 0,
  75. "total" : 0
  76. },
  77. "query" : {
  78. "time_in_millis" : 200,
  79. "current" : 2,
  80. "total" : 12
  81. },
  82. "fetch" : {
  83. "time_in_millis" : 37,
  84. "current" : 3,
  85. "total" : 4
  86. },
  87. "dfs_query" : {
  88. "time_in_millis" : 0,
  89. "current" : 0,
  90. "total" : 0
  91. },
  92. "expand" : {
  93. "time_in_millis" : 9,
  94. "current" : 1,
  95. "total" : 0
  96. },
  97. "can_match" : {
  98. "time_in_millis" : 0,
  99. "current" : 0,
  100. "total" : 0
  101. }
  102. }
  103. },
  104. "merges" : {
  105. "current" : 0,
  106. "current_docs" : 0,
  107. "current_size_in_bytes" : 0,
  108. "total" : 1,
  109. "total_time_in_millis" : 5,
  110. "total_docs" : 12,
  111. "total_size_in_bytes" : 3967,
  112. "total_stopped_time_in_millis" : 0,
  113. "total_throttled_time_in_millis" : 0,
  114. "total_auto_throttle_in_bytes" : 251658240
  115. },
  116. "refresh" : {
  117. "total" : 74,
  118. "total_time_in_millis" : 201,
  119. "external_total" : 57,
  120. "external_total_time_in_millis" : 314,
  121. "listeners" : 0
  122. },
  123. "flush" : {
  124. "total" : 28,
  125. "periodic" : 28,
  126. "total_time_in_millis" : 1261
  127. },
  128. "warmer" : {
  129. "current" : 0,
  130. "total" : 45,
  131. "total_time_in_millis" : 99
  132. },
  133. "query_cache" : {
  134. "memory_size_in_bytes" : 0,
  135. "total_count" : 0,
  136. "hit_count" : 0,
  137. "miss_count" : 0,
  138. "cache_size" : 0,
  139. "cache_count" : 0,
  140. "evictions" : 0
  141. },
  142. "fielddata" : {
  143. "memory_size_in_bytes" : 356,
  144. "evictions" : 0
  145. },
  146. "completion" : {
  147. "size_in_bytes" : 0,
  148. "fields" : { }
  149. },
  150. "segments" : {
  151. "count" : 17,
  152. "memory_in_bytes" : 0,
  153. "terms_memory_in_bytes" : 0,
  154. "stored_fields_memory_in_bytes" : 0,
  155. "term_vectors_memory_in_bytes" : 0,
  156. "norms_memory_in_bytes" : 0,
  157. "points_memory_in_bytes" : 0,
  158. "doc_values_memory_in_bytes" : 0,
  159. "index_writer_memory_in_bytes" : 0,
  160. "version_map_memory_in_bytes" : 0,
  161. "fixed_bit_set_memory_in_bytes" : 288,
  162. "max_unsafe_auto_id_timestamp" : -1,
  163. "remote_store" : {
  164. "upload" : {
  165. "total_upload_size" : {
  166. "started_bytes" : 152419,
  167. "succeeded_bytes" : 152419,
  168. "failed_bytes" : 0
  169. },
  170. "refresh_size_lag" : {
  171. "total_bytes" : 0,
  172. "max_bytes" : 0
  173. },
  174. "max_refresh_time_lag_in_millis" : 0,
  175. "total_time_spent_in_millis" : 516,
  176. "pressure" : {
  177. "total_rejections" : 0
  178. }
  179. },
  180. "download" : {
  181. "total_download_size" : {
  182. "started_bytes" : 0,
  183. "succeeded_bytes" : 0,
  184. "failed_bytes" : 0
  185. },
  186. "total_time_spent_in_millis" : 0
  187. }
  188. },
  189. "file_sizes" : { }
  190. },
  191. "translog" : {
  192. "operations" : 12,
  193. "size_in_bytes" : 1452,
  194. "uncommitted_operations" : 12,
  195. "uncommitted_size_in_bytes" : 1452,
  196. "earliest_last_modified_age" : 164160,
  197. "remote_store" : {
  198. "upload" : {
  199. "total_uploads" : {
  200. "started" : 57,
  201. "failed" : 0,
  202. "succeeded" : 57
  203. },
  204. "total_upload_size" : {
  205. "started_bytes" : 16830,
  206. "failed_bytes" : 0,
  207. "succeeded_bytes" : 16830
  208. }
  209. }
  210. }
  211. },
  212. "request_cache" : {
  213. "memory_size_in_bytes" : 1649,
  214. "evictions" : 0,
  215. "hit_count" : 0,
  216. "miss_count" : 18
  217. },
  218. "recovery" : {
  219. "current_as_source" : 0,
  220. "current_as_target" : 0,
  221. "throttle_time_in_millis" : 0
  222. }
  223. },
  224. "os" : {
  225. "timestamp" : 1664484195263,
  226. "cpu" : {
  227. "percent" : 0,
  228. "load_average" : {
  229. "1m" : 0.0,
  230. "5m" : 0.0,
  231. "15m" : 0.0
  232. }
  233. },
  234. "mem" : {
  235. "total_in_bytes" : 13137076224,
  236. "free_in_bytes" : 9265442816,
  237. "used_in_bytes" : 3871633408,
  238. "free_percent" : 71,
  239. "used_percent" : 29
  240. },
  241. "swap" : {
  242. "total_in_bytes" : 4294967296,
  243. "free_in_bytes" : 4294967296,
  244. "used_in_bytes" : 0
  245. },
  246. "cgroup" : {
  247. "cpuacct" : {
  248. "control_group" : "/",
  249. "usage_nanos" : 338710071600
  250. },
  251. "cpu" : {
  252. "control_group" : "/",
  253. "cfs_period_micros" : 100000,
  254. "cfs_quota_micros" : -1,
  255. "stat" : {
  256. "number_of_elapsed_periods" : 0,
  257. "number_of_times_throttled" : 0,
  258. "time_throttled_nanos" : 0
  259. }
  260. },
  261. "memory" : {
  262. "control_group" : "/",
  263. "limit_in_bytes" : "9223372036854771712",
  264. "usage_in_bytes" : "1432346624"
  265. }
  266. }
  267. },
  268. "process" : {
  269. "timestamp" : 1664484195263,
  270. "open_file_descriptors" : 556,
  271. "max_file_descriptors" : 65536,
  272. "cpu" : {
  273. "percent" : 0,
  274. "total_in_millis" : 170870
  275. },
  276. "mem" : {
  277. "total_virtual_in_bytes" : 6563344384
  278. }
  279. },
  280. "jvm" : {
  281. "timestamp" : 1664484195264,
  282. "uptime_in_millis" : 21232111,
  283. "mem" : {
  284. "heap_used_in_bytes" : 308650480,
  285. "heap_used_percent" : 57,
  286. "heap_committed_in_bytes" : 536870912,
  287. "heap_max_in_bytes" : 536870912,
  288. "non_heap_used_in_bytes" : 147657128,
  289. "non_heap_committed_in_bytes" : 152502272,
  290. "pools" : {
  291. "young" : {
  292. "used_in_bytes" : 223346688,
  293. "max_in_bytes" : 0,
  294. "peak_used_in_bytes" : 318767104,
  295. "peak_max_in_bytes" : 0,
  296. "last_gc_stats" : {
  297. "used_in_bytes" : 0,
  298. "max_in_bytes" : 0,
  299. "usage_percent" : -1
  300. }
  301. },
  302. "old" : {
  303. "used_in_bytes" : 67068928,
  304. "max_in_bytes" : 536870912,
  305. "peak_used_in_bytes" : 67068928,
  306. "peak_max_in_bytes" : 536870912,
  307. "last_gc_stats" : {
  308. "used_in_bytes" : 34655744,
  309. "max_in_bytes" : 536870912,
  310. "usage_percent" : 6
  311. }
  312. },
  313. "survivor" : {
  314. "used_in_bytes" : 18234864,
  315. "max_in_bytes" : 0,
  316. "peak_used_in_bytes" : 32721280,
  317. "peak_max_in_bytes" : 0,
  318. "last_gc_stats" : {
  319. "used_in_bytes" : 18234864,
  320. "max_in_bytes" : 0,
  321. "usage_percent" : -1
  322. }
  323. }
  324. }
  325. },
  326. "threads" : {
  327. "count" : 80,
  328. "peak_count" : 80
  329. },
  330. "gc" : {
  331. "collectors" : {
  332. "young" : {
  333. "collection_count" : 18,
  334. "collection_time_in_millis" : 199
  335. },
  336. "old" : {
  337. "collection_count" : 0,
  338. "collection_time_in_millis" : 0
  339. }
  340. }
  341. },
  342. "buffer_pools" : {
  343. "mapped" : {
  344. "count" : 23,
  345. "used_in_bytes" : 6232113,
  346. "total_capacity_in_bytes" : 6232113
  347. },
  348. "direct" : {
  349. "count" : 63,
  350. "used_in_bytes" : 9050069,
  351. "total_capacity_in_bytes" : 9050068
  352. },
  353. "mapped - 'non-volatile memory'" : {
  354. "count" : 0,
  355. "used_in_bytes" : 0,
  356. "total_capacity_in_bytes" : 0
  357. }
  358. },
  359. "classes" : {
  360. "current_loaded_count" : 20693,
  361. "total_loaded_count" : 20693,
  362. "total_unloaded_count" : 0
  363. }
  364. },
  365. "thread_pool" : {
  366. "OPENSEARCH_ML_TASK_THREAD_POOL" : {
  367. "threads" : 0,
  368. "queue" : 0,
  369. "active" : 0,
  370. "rejected" : 0,
  371. "largest" : 0,
  372. "completed" : 0
  373. },
  374. "ad-batch-task-threadpool" : {
  375. "threads" : 0,
  376. "queue" : 0,
  377. "active" : 0,
  378. "rejected" : 0,
  379. "largest" : 0,
  380. "completed" : 0
  381. },
  382. ...
  383. },
  384. "fs" : {
  385. "timestamp" : 1664484195264,
  386. "total" : {
  387. "total_in_bytes" : 269490393088,
  388. "free_in_bytes" : 261251477504,
  389. "available_in_bytes" : 247490805760
  390. },
  391. "data" : [
  392. {
  393. "path" : "/usr/share/opensearch/data/nodes/0",
  394. "mount" : "/ (overlay)",
  395. "type" : "overlay",
  396. "total_in_bytes" : 269490393088,
  397. "free_in_bytes" : 261251477504,
  398. "available_in_bytes" : 247490805760
  399. }
  400. ],
  401. "io_stats" : { }
  402. },
  403. "transport" : {
  404. "server_open" : 0,
  405. "total_outbound_connections" : 0,
  406. "rx_count" : 0,
  407. "rx_size_in_bytes" : 0,
  408. "tx_count" : 0,
  409. "tx_size_in_bytes" : 0
  410. },
  411. "http" : {
  412. "current_open" : 5,
  413. "total_opened" : 1108
  414. },
  415. "breakers" : {
  416. "request" : {
  417. "limit_size_in_bytes" : 322122547,
  418. "limit_size" : "307.1mb",
  419. "estimated_size_in_bytes" : 0,
  420. "estimated_size" : "0b",
  421. "overhead" : 1.0,
  422. "tripped" : 0
  423. },
  424. "fielddata" : {
  425. "limit_size_in_bytes" : 214748364,
  426. "limit_size" : "204.7mb",
  427. "estimated_size_in_bytes" : 356,
  428. "estimated_size" : "356b",
  429. "overhead" : 1.03,
  430. "tripped" : 0
  431. },
  432. "in_flight_requests" : {
  433. "limit_size_in_bytes" : 536870912,
  434. "limit_size" : "512mb",
  435. "estimated_size_in_bytes" : 0,
  436. "estimated_size" : "0b",
  437. "overhead" : 2.0,
  438. "tripped" : 0
  439. },
  440. "parent" : {
  441. "limit_size_in_bytes" : 510027366,
  442. "limit_size" : "486.3mb",
  443. "estimated_size_in_bytes" : 308650480,
  444. "estimated_size" : "294.3mb",
  445. "overhead" : 1.0,
  446. "tripped" : 0
  447. }
  448. },
  449. "script" : {
  450. "compilations" : 0,
  451. "cache_evictions" : 0,
  452. "compilation_limit_triggered" : 0
  453. },
  454. "discovery" : {
  455. "cluster_state_queue" : {
  456. "total" : 0,
  457. "pending" : 0,
  458. "committed" : 0
  459. },
  460. "published_cluster_states" : {
  461. "full_states" : 2,
  462. "incompatible_diffs" : 0,
  463. "compatible_diffs" : 10
  464. },
  465. "cluster_state_stats" : {
  466. "overall" : {
  467. "update_count" : 9,
  468. "total_time_in_millis" : 807,
  469. "failed_count" : 0
  470. },
  471. "remote_upload" : {
  472. "success_count" : 9,
  473. "failed_count" : 0,
  474. "total_time_in_millis" : 116,
  475. "cleanup_attempt_failed_count" : 0
  476. }
  477. }
  478. },
  479. "ingest" : {
  480. "total" : {
  481. "count" : 0,
  482. "time_in_millis" : 0,
  483. "current" : 0,
  484. "failed" : 0
  485. },
  486. "pipelines" : { }
  487. },
  488. "search_pipeline" : {
  489. "total_request" : {
  490. "count" : 5,
  491. "time_in_millis" : 158,
  492. "current" : 0,
  493. "failed" : 0
  494. },
  495. "total_response" : {
  496. "count" : 2,
  497. "time_in_millis" : 1,
  498. "current" : 0,
  499. "failed" : 0
  500. },
  501. "pipelines" : {
  502. "public_info" : {
  503. "request" : {
  504. "count" : 3,
  505. "time_in_millis" : 71,
  506. "current" : 0,
  507. "failed" : 0
  508. },
  509. "response" : {
  510. "count" : 0,
  511. "time_in_millis" : 0,
  512. "current" : 0,
  513. "failed" : 0
  514. },
  515. "request_processors" : [
  516. {
  517. "filter_query:abc" : {
  518. "type" : "filter_query",
  519. "stats" : {
  520. "count" : 1,
  521. "time_in_millis" : 0,
  522. "current" : 0,
  523. "failed" : 0
  524. }
  525. }
  526. },
  527. ]
  528. ...
  529. "response_processors" : [
  530. {
  531. "rename_field" : {
  532. "type" : "rename_field",
  533. "stats" : {
  534. "count" : 2,
  535. "time_in_millis" : 1,
  536. "current" : 0,
  537. "failed" : 0
  538. }
  539. }
  540. }
  541. ]
  542. },
  543. ...
  544. }
  545. },
  546. "adaptive_selection" : {
  547. "F-ByTQzVQ3GQeYzQJArJGQ" : {
  548. "outgoing_searches" : 0,
  549. "avg_queue_size" : 0,
  550. "avg_service_time_ns" : 501024,
  551. "avg_response_time_ns" : 794105,
  552. "rank" : "0.8"
  553. }
  554. },
  555. "script_cache" : {
  556. "sum" : {
  557. "compilations" : 0,
  558. "cache_evictions" : 0,
  559. "compilation_limit_triggered" : 0
  560. },
  561. "contexts" : [
  562. {
  563. "context" : "aggregation_selector",
  564. "compilations" : 0,
  565. "cache_evictions" : 0,
  566. "compilation_limit_triggered" : 0
  567. },
  568. {
  569. "context" : "aggs",
  570. "compilations" : 0,
  571. "cache_evictions" : 0,
  572. "compilation_limit_triggered" : 0
  573. },
  574. ...
  575. ]
  576. },
  577. "indexing_pressure" : {
  578. "memory" : {
  579. "current" : {
  580. "combined_coordinating_and_primary_in_bytes" : 0,
  581. "coordinating_in_bytes" : 0,
  582. "primary_in_bytes" : 0,
  583. "replica_in_bytes" : 0,
  584. "all_in_bytes" : 0
  585. },
  586. "total" : {
  587. "combined_coordinating_and_primary_in_bytes" : 40256,
  588. "coordinating_in_bytes" : 40256,
  589. "primary_in_bytes" : 45016,
  590. "replica_in_bytes" : 0,
  591. "all_in_bytes" : 40256,
  592. "coordinating_rejections" : 0,
  593. "primary_rejections" : 0,
  594. "replica_rejections" : 0
  595. },
  596. "limit_in_bytes" : 53687091
  597. }
  598. },
  599. "shard_indexing_pressure" : {
  600. "stats" : { },
  601. "total_rejections_breakup_shadow_mode" : {
  602. "node_limits" : 0,
  603. "no_successful_request_limits" : 0,
  604. "throughput_degradation_limits" : 0
  605. },
  606. "enabled" : false,
  607. "enforced" : false
  608. },
  609. "resource_usage_stats": {
  610. "nxLWtMdXQmWA-ZBVWU8nwA": {
  611. "timestamp": 1698401391000,
  612. "cpu_utilization_percent": "0.1",
  613. "memory_utilization_percent": "3.9",
  614. "io_usage_stats": {
  615. "max_io_utilization_percent": "99.6"
  616. }
  617. }
  618. },
  619. "admission_control": {
  620. "global_cpu_usage": {
  621. "transport": {
  622. "rejection_count": {
  623. "search": 3,
  624. "indexing": 1
  625. }
  626. }
  627. },
  628. "global_io_usage": {
  629. "transport": {
  630. "rejection_count": {
  631. "search": 3,
  632. "indexing": 1
  633. }
  634. }
  635. }
  636. },
  637. "caches" : {
  638. "request_cache" : {
  639. "size_in_bytes" : 1649,
  640. "evictions" : 0,
  641. "hit_count" : 0,
  642. "miss_count" : 18,
  643. "item_count" : 18,
  644. "store_name" : "opensearch_onheap"
  645. }
  646. }
  647. }
  648. }
  649. }

Response body 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.
search_pipelineObjectStatistics related to search pipelines.
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.
cluster_manager_throttlingObjectStatistics related to throttled tasks on the cluster manager node.
weighted_routingObjectStatistics relevant to weighted round robin requests.
resource_usage_statsObjectStatistics related to resource usage for the node.
admission_controlObjectStatistics related to admission control for the node.
cachesObjectStatistics related to caches on the node.

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.concurrent_avg_slice_countIntegerThe average slice count of all search requests. This is computed as the total slice count divided by the total number of concurrent search requests.
search.concurrent_query_totalIntegerThe total number of query operations that use concurrent segment search.
search.concurrent_query_time_in_millisIntegerThe total amount of time taken by all query operations that use concurrent segment search, in milliseconds.
search.concurrent_query_currentIntegerThe number of currently running query operations that use concurrent segment search.
search.open_contextsIntegerThe number of open search contexts.
search.query_totalIntegerThe total number of shard query operations.
search.query_time_in_millisIntegerThe total amount of time for all shard query operations, in milliseconds.
search.query_currentIntegerThe number of shard query operations that are currently running.
search.fetch_totalIntegerThe total number of shard fetch operations.
search.fetch_time_in_millisIntegerThe total amount of time for all shard fetch operations, in milliseconds.
search.fetch_currentIntegerThe number of shard fetch operations that are currently running.
search.scroll_totalIntegerThe total number of shard scroll operations.
search.scroll_time_in_millisIntegerThe total amount of time for all shard scroll operations, in milliseconds.
search.scroll_currentIntegerThe number of shard scroll operations that are currently running.
search.point_in_time_totalIntegerThe total number of shard Point in Time (PIT) contexts that have been created (completed and active) since the node last restarted.
search.point_in_time_time_in_millisIntegerThe amount of time that shard PIT contexts have been held open since the node last restarted, in milliseconds.
search.point_in_time_currentIntegerThe number of shard PIT contexts currently open.
search.suggest_totalIntegerThe total number of shard suggest operations.
search.suggest_time_in_millisIntegerThe total amount of time for all shard suggest operations, in milliseconds.
search.suggest_currentIntegerThe number of shard suggest operations that are currently running.
search.requestObjectStatistics about coordinator search operations for the node.
search.request.took.time_in_millisIntegerThe total amount of time taken for all search requests, in milliseconds.
search.request.took.currentIntegerThe number of search requests that are currently running.
search.request.took.totalIntegerThe total number of search requests completed.
search.request.dfs_pre_query.time_in_millisIntegerThe total amount of time for all coordinator depth-first search (DFS) prequery operations, in milliseconds.
search.request.dfs_pre_query.currentIntegerThe number of coordinator DFS prequery operations that are currently running.
search.request.dfs_pre_query.totalIntegerThe total number of coordinator DFS prequery operations completed.
search.request.query.time_in_millisIntegerThe total amount of time for all coordinator query operations, in milliseconds.
search.request.query.currentIntegerThe number of coordinator query operations that are currently running.
search.request.query.totalIntegerThe total number of coordinator query operations completed.
search.request.fetch.time_in_millisIntegerThe total amount of time for all coordinator fetch operations, in milliseconds.
search.request.fetch.currentIntegerThe number of coordinator fetch operations that are currently running.
search.request.fetch.totalIntegerThe total number of coordinator fetch operations completed.
search.request.dfs_query.time_in_millisIntegerThe total amount of time for all coordinator DFS prequery operations, in milliseconds.
search.request.dfs_query.currentIntegerThe number of coordinator DFS prequery operations that are currently running.
search.request.dfs_query.totalIntegerThe total number of coordinator DFS prequery operations completed.
search.request.expand.time_in_millisIntegerThe total amount of time for all coordinator expand operations, in milliseconds.
search.request.expand.currentIntegerThe number of coordinator expand operations that are currently running.
search.request.expand.totalIntegerThe total number of coordinator expand operations completed.
search.request.can_match.time_in_millisIntegerThe total amount of time for all coordinator match operations, in milliseconds.
search.request.can_match.currentIntegerThe number of coordinator match operations that are currently running.
search.request.can_match.totalIntegerThe total number of coordinator match operations completed.
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.segment_replicationObjectSegment replication statistics for all primary shards when segment replication is enabled on the node.
segments.segment_replication.max_bytes_behindlongThe maximum number of bytes behind the primary replica.
segments.segment_replication.total_bytes_behindlongThe total number of bytes behind the primary replicas.
segments.segment_replication.max_replication_laglongThe maximum amount of time, in milliseconds, taken by a replica to catch up to its primary.
segments.remote_storeObjectStatistics about remote segment store operations.
segments.remote_store.uploadObjectStatistics related to uploads to the remote segment store.
segments.remote_store.upload.total_upload_sizeObjectThe amount of data, in bytes, uploaded to the remote segment store.
segments.remote_store.upload.total_upload_size.started_bytesIntegerThe number of bytes to upload to the remote segment store after the upload has started.
segments.remote_store.upload.total_upload_size.succeeded_bytesIntegerThe number of bytes successfully uploaded to the remote segment store.
segments.remote_store.upload.total_upload_size.failed_bytesIntegerThe number of bytes that failed to upload to the remote segment store.
segments.remote_store.upload.refresh_size_lagObjectThe amount of lag during upload between the remote segment store and the local store.
segments.remote_store.upload.refresh_size_lag.total_bytesIntegerThe total number of bytes that lagged during the upload refresh between the remote segment store and the local store.
segments.remote_store.upload.refresh_size_lag.max_bytesIntegerThe maximum amount of lag, in bytes, during the upload refresh between the remote segment store and the local store.
segments.remote_store.upload.max_refresh_time_lag_in_millisIntegerThe maximum duration, in milliseconds, that the remote refresh is behind the local refresh.
segments.remote_store.upload.total_time_spent_in_millisIntegerThe total amount of time, in milliseconds, spent on uploads to the remote segment store.
segments.remote_store.upload.pressureObjectStatistics related to segment store upload backpressure.
segments.remote_store.upload.pressure.total_rejectionsIntegerThe total number of requests rejected due to segment store upload backpressure.
segments.remote_store.downloadObjectStatistics related to downloads to the remote segment store.
segments.remote_store.download.total_download_sizeObjectThe total amount of data download from the remote segment store.
segments.remote_store.download.total_download_size.started_bytesIntegerThe number of bytes downloaded from the remote segment store after the download starts.
segments.remote_store.download.total_download_size.succeeded_bytesIntegerThe number of bytes successfully downloaded from the remote segment store.
segments.remote_store.download.total_download_size.failed_bytesIntegerThe number of bytes that failed to download from the remote segment store.
segments.remote_store.download.total_time_spent_in_millisIntegerThe total duration, in milliseconds, spent on downloads from the remote segment store.
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.
translog.remote_storeObjectStatistics related to operations from the remote translog store.
translog.remote_store.uploadObjectStatistics related to uploads to the remote translog store.
translog.remote_store.upload.total_uploadsObjectThe number of syncs to the remote translog store.
translog.remote_store.upload.total_uploads.startedIntegerThe number of upload syncs to the remote translog store that have started.
translog.remote_store.upload.total_uploads.failedIntegerThe number of failed upload syncs to the remote translog store.
translog.remote_store.upload.total_uploads.succeededIntegerThe number of successful upload syncs to the remote translog store.
translog.remote_store.upload.total_upload_sizeObjectThe total amount of data uploaded to the remote translog store.
translog.remote_store.upload.total_upload_size.started_bytesIntegerThe number of bytes actively uploading to the remote translog store after the upload has started.
translog.remote_store.upload.total_upload_size.failed_bytesIntegerThe number of bytes that failed to upload to the remote translog store.
translog.remote_store.upload.total_upload_size.succeeded_bytesIntegerThe number of bytes successfully uploaded to the remote translog store.
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.
memObjectStatistics about memory usage for the node.
mem.total_in_bytesIntegerThe total amount of physical memory, in bytes.
mem.free_in_bytesIntegerThe total amount of free physical memory, in bytes.
mem.used_in_bytesIntegerThe total amount of used physical memory, in bytes.
mem.free_percentIntegerThe percentage of memory that is free.
mem.used_percentIntegerThe percentage of memory that is used.
swapObjectStatistics about swap space for the node.
swap.total_in_bytesIntegerThe total amount of swap space, in bytes.
swap.free_in_bytesIntegerThe total amount of free swap space, in bytes.
swap.used_in_bytesIntegerThe total amount of used swap space, in bytes.
cgroupObjectContains cgroup statistics for the node. Returned for Linux only.
cgroup.cpuacctObjectStatistics about the cpuacct control group for the node.
cgroup.cpuObjectStatistics about the CPU control group for the node.
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 that is specified by its ID and contains the following properties.

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.
total_wait_time_in_nanosIntegerThe total amount of time that tasks spend waiting in the thread pool queue. Currently, only search, search_throttled, and index_searcher thread pools support this metric.

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 following properties.
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.
cluster_state_statsObjectCluster state update statistics published by the active leader.
cluster_state_stats.overallObjectOverall cluster state update statistics.
cluster_state_stats.overall.update_countIntegerThe total number of successful cluster state updates.
cluster_state_stats.overall.total_time_in_millisIntegerThe total amount of time taken for all cluster state updates, in milliseconds.
cluster_state_stats.overall.failed_countIntegerThe total number of failed cluster state updates.
cluster_state_stats.remote_uploadObjectCluster state update statistics related to remote uploads.
cluster_state_stats.remote_upload.success_countIntegerThe total number of successful cluster state updates uploaded to the remote store.
cluster_state_stats.remote_upload.failed_countIntegerThe total number of cluster state updates that failed to upload to the remote store.
cluster_state_stats.remote_upload.total_time_in_millisIntegerThe total amount of time taken for all cluster state updates uploaded to the remote store, in milliseconds.
cluster_state_stats.remote_upload.cleanup_attempt_failed_countIntegerThe total number of failures encountered while trying to clean up older cluster states from the remote store.

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 that is specified by its ID and has the following properties.
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.

search_pipeline

The search_pipeline object contains the statistics related to search pipelines and has the following properties.

FieldField typeDescription
total_requestObjectCumulative statistics related to all search request processors.
total_request.countIntegerThe total number of search request processor executions.
total_request.time_in_millisIntegerThe total amount of time for all search request processor executions, in milliseconds.
total_request.currentIntegerThe total number of search request processor executions currently in progress.
total_request.failedIntegerThe total number of failed search request processor executions.
total_responseObjectCumulative statistics related to all search response processors.
total_response.countIntegerThe total number of search response processor executions.
total_response.time_in_millisIntegerThe total amount of time for all search response processor executions, in milliseconds.
total_response.currentIntegerThe total number of search response processor executions currently in progress.
total_response.failedIntegerThe total number of failed search response processor executions.
pipelinesObjectSearch pipeline statistics. Each pipeline is a nested object specified by its ID, with the properties listed in the following rows. If a processor has a tag, statistics for the processor are provided in the object with the name <processor_type>:<tag> (for example, filter_query:abc). Statistics for all processors of the same type that do not have a tag are aggregated and provided in the object with the name <processor-type> (for example, filter_query).
pipelines.id.request.countIntegerThe number of search request processor executions performed by the search pipeline.
pipelines.id.request.time_in_millisIntegerThe total amount of time for search request processor executions in the search pipeline, in milliseconds.
pipelines.id.request.currentIntegerThe number of search request processor executions currently in progress for the search pipeline.
pipelines.id.request.failedIntegerThe number of failed search request processor executions for the search pipeline.
pipelines.id.request_processorsArray of objectsStatistics for the search request processors. Includes the total number of executions, the total amount of time of executions, the total number of executions currently in progress, and the number of failed executions.
pipelines.id.response.countIntegerThe number of search response processor executions performed by the search pipeline.
pipelines.id.response.time_in_millisIntegerThe total amount of time for search response processor executions in the search pipeline, in milliseconds.
pipelines.id.response.currentIntegerThe number of search response processor executions currently in progress for the search pipeline.
pipelines.id.response.failedIntegerThe number of failed search response processor executions for the search pipeline.
pipelines.id.response_processorsArray of objectsStatistics for the search response processors. Includes the total number of executions, the total amount of time of executions, the total number of executions currently in progress, and the number of failed executions.

adaptive_selection

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

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.

cluster_manager_throttling

The cluster_manager_throttling object contains statistics about throttled tasks on the cluster manager node. It is populated only for the node that is currently elected as the cluster manager.

FieldField typeDescription
statsObjectStatistics about throttled tasks on the cluster manager node.
stats.total_throttled_tasksLongThe total number of throttled tasks.
stats.throttled_tasks_per_task_typeObjectA breakdown of statistics by individual task type, specified as key-value pairs. The keys are individual task types, and their values represent the number of requests that were throttled.

weighted_routing

The weighted_routing object contains statistics about weighted round robin requests. Specifically, it contains a counter of times this node has server a request while it was “zoned out”.

FieldField typeDescription
statsObjectStatistics about weighted routing.
fail_open_countIntegerNumber of times a shard on this node has served a request while the routing weight for the node was set to zero.

resource_usage_stats

The resource_usage_stats object contains the resource usage statistics. Each entry is specified by the node ID and has the following properties.

FieldField typeDescription
timestampIntegerThe last refresh time for the resource usage statistics, in milliseconds since the epoch.
cpu_utilization_percentFloatStatistics for the average CPU usage of any OpenSearch processes within the time period configured in the node.resource.tracker.global_cpu_usage.window_duration setting.
memory_utilization_percentFloatThe node JVM memory usage statistics within the time period configured in the node.resource.tracker.global_jvmmp.window_duration setting.
max_io_utilization_percentFloat(Linux only) Statistics for the average IO usage of any OpenSearch processes within the time period configured in the node.resource.tracker.global_io_usage.window_duration setting.

admission_control

The admission_control object contains the rejection count of search and indexing requests based on resource consumption and has the following properties.

FieldField typeDescription
admission_control.global_cpu_usage.transport.rejection_count.searchIntegerThe total number of search rejections in the transport layer when the node CPU usage limit was met. In this case, additional search requests are rejected until the system recovers. The CPU usage limit is configured in the admission_control.search.cpu_usage.limit setting.
admission_control.global_cpu_usage.transport.rejection_count.indexingIntegerThe total number of indexing rejections in the transport layer when the node CPU usage limit was met. Any additional indexing requests are rejected until the system recovers. The CPU usage limit is configured in the admission_control.indexing.cpu_usage.limit setting.
admission_control.global_io_usage.transport.rejection_count.searchIntegerThe total number of search rejections in the transport layer when the node IO usage limit was met. Any additional search requests are rejected until the system recovers. The CPU usage limit is configured in the admission_control.search.io_usage.limit setting (Linux only).
admission_control.global_io_usage.transport.rejection_count.indexingIntegerThe total number of indexing rejections in the transport layer when the node IO usage limit was met. Any additional indexing requests are rejected until the system recovers. The IO usage limit is configured in the admission_control.indexing.io_usage.limit setting (Linux only).

caches

Because this API supports the experimental tiered caching feature, the responses found in this section may change. If the tiered caching feature flag is not enabled, the API will return 0 for all values.

The caches object contains cache statistics, such as the request_cache statistics. The total values within each sub-metric are always returned, regardless of the value of the query parameter level.

FieldField typeDescription
request_cacheObjectStatistics for the request cache.
request_cache.size_in_bytesIntegerThe total size, in bytes, of the request cache.
request_cache.evictionsIntegerThe total number of evictions from the request cache.
request_cache.hit_countIntegerThe total hit count for the request cache.
request_cache.miss_countIntegerThe total miss count for the request cache.
request_cache.item_countIntegerThe total number of items in the request cache.
request_cache.store_nameStringThe name of the store type used by the request cache. See tiered cache for more information.

If the level query parameter is set to one of its valid values, indices, shard, or tier, additional fields will be present in caches.request_cache that categorize the values by these levels. For example, if level=indices,tier, the tiered cache is in use, and the node has indexes named index0 and index1, then the caches object will contain the same five metrics for each combination of level values, as shown in the following table.

FieldField typeDescription
request_cache.indices.index0.tier.on_heapObjectContains the five metrics for index0 on the heap tier.
request_cache.indices.index0.tier.diskObjectContains the five metrics for index0 on the disk tier.
request_cache.indices.index1.tier.on_heapObjectContains the five metrics for index1 on the heap tier.
request_cache.indices.index1.tier.diskObjectContains the five metrics for index1 on the disk tier.

Required permissions

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