Nodes Stats

edit

Nodes statistics

edit

The cluster nodes stats API allows to retrieve one or more (or all) of the cluster nodes statistics.

curl -XGET 'http://localhost:9200/_nodes/stats'
curl -XGET 'http://localhost:9200/_nodes/nodeId1,nodeId2/stats'

The first command retrieves stats of all the nodes in the cluster. The second command selectively retrieves nodes stats of only nodeId1 and nodeId2. All the nodes selective options are explained here.

By default, all stats are returned. You can limit this by combining any of indices, os, process, jvm, network, transport, http, fs, breaker and thread_pool. For example:

indices

Indices stats about size, document count, indexing and deletion times, search times, field cache size , merges and flushes

fs

File system information, data path, free disk space, read/write stats

http

HTTP connection information

jvm

JVM stats, memory pool information, garbage collection, buffer pools

network

TCP information

os

Operating system stats, load average, cpu, mem, swap

process

Process statistics, memory consumption, cpu usage, open file descriptors

thread_pool

Statistics about each thread pool, including current size, queue and rejected tasks

transport

Transport statistics about sent and received bytes in cluster communication

breaker

Statistics about the field data circuit breaker

# return indices and os
curl -XGET 'http://localhost:9200/_nodes/stats/os'
# return just os and process
curl -XGET 'http://localhost:9200/_nodes/stats/os,process'
# specific type endpoint
curl -XGET 'http://localhost:9200/_nodes/stats/process'
curl -XGET 'http://localhost:9200/_nodes/10.0.0.1/stats/process'

All stats can be explicitly requested via /_nodes/stats/_all or /_nodes/stats?metric=_all.

Field data statistics

edit

You can get information about field data memory usage on node level or on index level.

# Node Stats
curl -XGET 'http://localhost:9200/_nodes/stats/indices/?fields=field1,field2&pretty'

# Indices Stat
curl -XGET 'http://localhost:9200/_stats/fielddata/?fields=field1,field2&pretty'

# You can use wildcards for field names
curl -XGET 'http://localhost:9200/_stats/fielddata/?fields=field*&pretty'
curl -XGET 'http://localhost:9200/_nodes/stats/indices/?fields=field*&pretty'

Search groups

edit

You can get statistics about search groups for searches executed on this node.

# All groups with all stats
curl -XGET 'http://localhost:9200/_nodes/stats?pretty&groups=_all'

# Some groups from just the indices stats
curl -XGET 'http://localhost:9200/_nodes/stats/indices?pretty&groups=foo,bar'