Elasticsearch
Overview
This plugin collects metrics from the Elasticsearch API using the following endpoints:
Additionally, the plugin queries /_cat/nodes?format=json&h=name,master,http
to perform dynamic master detection.
This integration works with any Elasticsearch version, and is continuously tested against ES 1.x through 7.x.
Special features
Elasticsearch features include intelligent elected master detection and custom queries support.
Intelligent elected master detection
The Elasticsearch collector supports the Elasticsearch (ES) master election feature. The master election feature is useful in situations where each ES node has a SolarWinds Snap Agent with an Elasticsearch collector enabled. When this deployment method is used, each Snap Agent will report metrics for the entire ES cluster (as reported by the ES API) by default. This could flood the network with duplicate metrics collected by each agent.
To prevent this, the Elasticsearch collector includes a dedicated master_only
option. When enabled, the master_only
option tells the collector the data should only be collected and reported when SWISnap is running on a master node (that supports dynamic master election). Any Elasticsearch collector running on a non-master ES node will not collect metrics.
master_only
option is disabled, allowing the Elasticsearch collector to collect metrics from the entire cluster, regardless of which node hosts the collector. Custom queries support
This feature allows you to leverage the _cat
ES API endpoint. You can specify as many custom queries as required. These queries are automatically converted to metrics that will be available in the AppOptics dashboards.
Setup
This integration is included as part of a SWI collector. The SWI collector bundles several collectors into one integrated binary.
The elasticsearch
plugin is included with the SolarWinds Snap Agent by default. This section describes how to enable the plugin for an agent instance.
With Snap Agent version 4.5.0 and later, this plugin was upgraded to use the v2 plugins framework. If you are running v1 of the collector, see AppOptics Snap Agent 4.4.0 documentation.
To migrate to the v2 plugins framework, update Snap Agent to the latest version and see Migrate from v1 to v2 appoptics publisher plugins.
Prerequisites
This plugin requires that Elasticsearch is running and its API is available from the host where the plugin is installed. You can customize the Network section in the Elasticsearch configuration file so it applies to your deployment. This file is typically located at /etc/elasticsearch/elasticsearch.yml
.
The following illustration shows the Network section in the configuration file.
...
# ---------------------------------- Network -----------------------------------
#
# Set the bind address to a specific IP (IPv4 or IPv6):
#
network.host: 192.168.0.100
#
# Set a custom port for HTTP:
#
http.port: 9200
#
# For more information, see the network module documentation.
...
Configuration
The agent includes an example task manifest file with a predefined task configuration file. These files can help you get started with collecting Elasticsearch metrics. When the task configuration is enabled, the Snap Agent loads the plugin when required.
To enable the task configuration:
-
Make a copy of the elasticsearch example configuration file (
task-elasticsearch.yaml.example
) and change the file name totask-elasticsearch.yaml
.sudo cp -p /opt/SolarWinds/Snap/etc/tasks-autoload.d/task-elasticsearch.yaml.example /opt/SolarWinds/Snap/etc/tasks-autoload.d/task-elasticsearch.yaml
-
(Optional) Edit the
/opt/SolarWinds/Snap/etc/tasks-autoload.d/task-elasticsearch.yaml
task manifest file so it matches your custom settings file.--- version: 2 schedule: tyupe: cron interfal: "0 * * * * *" plugins: - plugin_name: swi config: elasticsearch: ## ElasticSearch API endpoint ## should correspond to the network.host setting in elastic search configuration (eg /etc/elasticsearch/elasticsearch.yml) ## Defaults to "127.0.0.1" # host: "127.0.0.1" ## ElasticSearch API port ##should correspond to the http.port setting in elastic search configuration (eg /etc/elasticsearch/elasticsearch.yml) ## Defaults to 9200 # port: 9200 ## Communication scheme ## Defaults to "http" # scheme: https ## Credentials, if any ## Defaults to empty # user: admin # password: "" ## ElasticSearch API timeout ## Defaults to 5s # timeout: 5s ## Elasticsearch Node hostname ## Used only for master node detection, very useful on older ES versions that respond with fewer API data ## NOTE: Set to this current node name (from the ES point of view), not to the master node hostname! ## Defaults to "" (empty string) # hostname: "" ## Set whether the data should be collected only if SWISnap is running on a master node (supports dynamic master selection) ## Useful with larger setups with runtime master election enabled and swisnap installed on every ES node, as ## without this setting every swisnap instance will report metrics for the whole cluster (the same way as ES API does) ## Defaults to false # master_only: true ## Custom queries, if any ## Query ## You can specify any (absolute) query that's acceptable by the ElasticSearch API but the requirement here ## is that each query has to respond with JSON that will then be "flattened" returning every value as a metric ## Prefix ## This is an optional string parameter that will be prepended to each metric just after the main /elasticsearch/ segment custom_queries: - query: "/_cat/recovery?active_only=true&v&format=json" prefix: recovery - query: "/_cat/snapshots/s3_backup?format=json" prefix: snapshots - query: "/_cat/shards?format=json&h=index,shard,prirep,state,unassigned.reason" prefix: shards publish: - plugin_name: publisher-appoptics
-
Restart the agent.
sudo service swisnapd restart
-
Enable the Elasticsearch plugin in the AppOptics user interface.
If you completed these steps successfully, the Elasticsearch plugin is displayed on the Integrations page as a host agent plugin. If the plugin is not displayed on the page, see Troubleshooting Linux.
Select the Elasticsearch plugin to open the configuration menu in the user interface, and then enable the plugin. When completed, the elasticsearch
metrics display on the dashboard.
Metrics and Tags
This plugin receives the Elasticsearch API JSON responses and converts (flattening the key path) the responses directly to the AppOptics metrics format with no additional processing. The same process also applies to the custom queries feature.
Some metrics may be automatically tagged with the following additional meta information:
-
version_id
-
name_id
-
plugin_id
-
node_id
-
device_id
-
processor_id
-
module_id
The table below lists each of the metrics gathered from the status endpoint.
Default Metrics
Namespace | Description |
---|---|
elasticsearch.cluster.indices.shards_total | Total number of all shards |
elasticsearch.cluster.initializing_shards | Number of shards that are currently initializing |
elasticsearch.cluster.nodes.count.coordinating_only | Total number of coordinating nodes in the cluster |
elasticsearch.cluster.nodes.count.data | Total number of data nodes in the cluster |
elasticsearch.cluster.nodes.count.ingest | Total number of ingest nodes in the cluster |
elasticsearch.cluster.nodes.count.master | Total number of master nodes in the cluster |
elasticsearch.cluster.nodes.fs.disk_reads | Total amount of data read from disk |
elasticsearch.cluster.nodes.fs.disk_writes | Total amount of data written to disk |
elasticsearch.cluster.relocating_shards | Number of shards that are currently relocating |
elasticsearch.cluster.status | Elasticsearch cluster health status as a number (red = 1, yellow = 2, green = 3) |
elasticsearch.cluster.unassigned_shards | Number of shards that are not assigned to a node |
elasticsearch.nodes.fs.io.read_operations | Total number of read operations |
elasticsearch.nodes.fs.io.write_operations | Total number of write operations |
elasticsearch.nodes.indexing.stats.index_current | Instantaneous indexing count |
elasticsearch.nodes.indexing.stats.index_failed | Total count of failed indexing |
elasticsearch.nodes.indexing.stats.index_time | Instantaneous indexing time (in ms) |
elasticsearch.nodes.indexing.stats.index_total | Incrementing indexing count |
elasticsearch.nodes.jvm.gc.collection.count | Java Garbage Collection (GC) stats, per node |
elasticsearch.nodes.jvm.gc.collection.time | Java GC stats, per node |
elasticsearch.nodes.jvm.mem.heap_used_percent | Percentage of used JVM heap |
elasticsearch.nodes.os.cpu.percent | Percent value of CPU usage for each node |
elasticsearch.nodes.search.stats.fetch_time | Instantaneous search fetching time (in ms) |
elasticsearch.nodes.search.stats.query_current | Instantaneous searches count |
elasticsearch.nodes.search.stats.query_time | Instantaneous search querying time (in ms) |
elasticsearch.nodes.search.stats.query_total | Incrementing searches count |
Default Metric Tags
All Elasticsearch metrics are tagged with hostname
. Rather than using this tag, SolarWinds recommends using the @host
alias.
If you are using dynamic metrics, the server name or hostname and port from elasticsearch will be added as a tag.
Optional Metrics
You can activate the optional metrics by editing the task yaml file. See SolarWinds Snap Agent Task File for details.
Metrics group | Description |
---|---|
indices | Includes indice statistics about size, document count, indexing and deletion times, search times, field cache size, merges, and flushes |
os | Includes operating system statistics, load average, memory, and swap details |
process | Includes process statistics, memory consumption, CPU usage, and open file descriptors |
jvm | Includes JVM statistics, memory pool information, garbage collection, buffer pools, and number of loaded and unloaded classes |
thread_pool | Includes statistics about each thread pool, including the current size, queue, and rejected tasks |
fs | Includes file system information, data path, free disk space, and read/write statistics |
http | Includes HTTP connection information |
breaks | Includes statistics about the field data circuit breaker |
script | Computes the grade statistics based on a script |
All available metrics
Namespace |
---|
elasticsearch.cluster.active_primary_shards |
elasticsearch.cluster.active_shards |
elasticsearch.cluster.active_shards_percent_as_number |
elasticsearch.cluster.delayed_unassigned_shards |
elasticsearch.cluster.indices.completion_size |
elasticsearch.cluster.indices.count |
elasticsearch.cluster.indices.docs_count |
elasticsearch.cluster.indices.docs_deleted |
elasticsearch.cluster.indices.field_evictions |
elasticsearch.cluster.indices.field_size |
elasticsearch.cluster.indices.filter_cache_evictions |
elasticsearch.cluster.indices.filter_cache_size |
elasticsearch.cluster.indices.id_cache_size |
elasticsearch.cluster.indices.shards_primaries |
elasticsearch.cluster.indices.shards_replication |
elasticsearch.cluster.indices.shards_total |
elasticsearch.cluster.indices.store_size |
elasticsearch.cluster.initializing_shards |
elasticsearch.cluster.nodes.count.coordinating_only |
elasticsearch.cluster.nodes.count.data |
elasticsearch.cluster.nodes.count.ingest |
elasticsearch.cluster.nodes.count.master |
elasticsearch.cluster.nodes.count.total |
elasticsearch.cluster.nodes.fs.available |
elasticsearch.cluster.nodes.fs.disk_io_op |
elasticsearch.cluster.nodes.fs.disk_io_size |
elasticsearch.cluster.nodes.fs.disk_read_size |
elasticsearch.cluster.nodes.fs.disk_reads |
elasticsearch.cluster.nodes.fs.disk_write_size |
elasticsearch.cluster.nodes.fs.disk_writes |
elasticsearch.cluster.nodes.fs.free |
elasticsearch.cluster.nodes.fs.total |
elasticsearch.cluster.nodes.jvm.max_uptime |
elasticsearch.cluster.nodes.jvm.threads |
elasticsearch.cluster.nodes.os.cpu.cache_size |
elasticsearch.cluster.nodes.os.cpu.cache_size_in_bytes |
elasticsearch.cluster.nodes.os.cpu.cores_per_socket |
elasticsearch.cluster.nodes.os.cpu.count |
elasticsearch.cluster.nodes.os.cpu.mhz |
elasticsearch.cluster.nodes.os.cpu.total_cores |
elasticsearch.cluster.nodes.os.cpu.total_sockets |
elasticsearch.cluster.nodes.os.mem_total |
elasticsearch.cluster.nodes.process_cpu_percent |
elasticsearch.cluster.nodes.process_open_file_descriptors |
elasticsearch.cluster.number_of_data_nodes |
elasticsearch.cluster.number_of_in_flight_fetch |
elasticsearch.cluster.number_of_nodes |
elasticsearch.cluster.number_of_pending_tasks |
elasticsearch.cluster.relocating_shards |
elasticsearch.cluster.status |
elasticsearch.cluster.task_max_waiting_in_queue_millis |
elasticsearch.cluster.unassigned_shards |
elasticsearch.nodes.breakers.estimated.estimated_size |
elasticsearch.nodes.breakers.limit.limit_size |
elasticsearch.nodes.breakers.overhead |
elasticsearch.nodes.breakers.tripped |
elasticsearch.nodes.completion.stats.fields.size |
elasticsearch.nodes.completion.stats.size |
elasticsearch.nodes.discovery.stats.committed |
elasticsearch.nodes.discovery.stats.pending |
elasticsearch.nodes.discovery.stats.total |
elasticsearch.nodes.docs.stats.count |
elasticsearch.nodes.docs.stats.deleted |
elasticsearch.nodes.fields.stats.evictions |
elasticsearch.nodes.fields.stats.fields.memory_size |
elasticsearch.nodes.fields.stats.memory_size |
elasticsearch.nodes.flush.stats.total |
elasticsearch.nodes.flush.stats.total_time |
elasticsearch.nodes.fs.available |
elasticsearch.nodes.fs.free |
elasticsearch.nodes.fs.io.operations |
elasticsearch.nodes.fs.io.read_kilobytes |
elasticsearch.nodes.fs.io.read_operations |
elasticsearch.nodes.fs.io.write_kilobytes |
elasticsearch.nodes.fs.io.write_operations |
elasticsearch.nodes.fs.total |
elasticsearch.nodes.get.stats.current |
elasticsearch.nodes.get.stats.exists |
elasticsearch.nodes.get.stats.exists_time |
elasticsearch.nodes.get.stats.missing |
elasticsearch.nodes.get.stats.missing_time |
elasticsearch.nodes.get.stats.time |
elasticsearch.nodes.get.stats.total |
elasticsearch.nodes.http.current_open |
elasticsearch.nodes.http.total_opened |
elasticsearch.nodes.indexing.stats.delete_current |
elasticsearch.nodes.indexing.stats.delete_time |
elasticsearch.nodes.indexing.stats.delete_total |
elasticsearch.nodes.indexing.stats.index_current |
elasticsearch.nodes.indexing.stats.index_failed |
elasticsearch.nodes.indexing.stats.index_time |
elasticsearch.nodes.indexing.stats.index_total |
elasticsearch.nodes.indexing.stats.noop_update_total |
elasticsearch.nodes.ingest.stats.count |
elasticsearch.nodes.ingest.stats.current |
elasticsearch.nodes.ingest.stats.failed |
elasticsearch.nodes.ingest.stats.time |
elasticsearch.nodes.jvm.buffers.count |
elasticsearch.nodes.jvm.buffers.total_capacity |
elasticsearch.nodes.jvm.current_loaded_count |
elasticsearch.nodes.jvm.gc.collection.count |
elasticsearch.nodes.jvm.gc.collection.time |
elasticsearch.nodes.jvm.mem.direct_max |
elasticsearch.nodes.jvm.mem.heap_committed |
elasticsearch.nodes.jvm.mem.heap_init |
elasticsearch.nodes.jvm.mem.heap_max |
elasticsearch.nodes.jvm.mem.heap_max |
elasticsearch.nodes.jvm.mem.heap_used |
elasticsearch.nodes.jvm.mem.heap_used_percent |
elasticsearch.nodes.jvm.mem.non_heap_committed |
elasticsearch.nodes.jvm.mem.non_heap_init |
elasticsearch.nodes.jvm.mem.non_heap_max |
elasticsearch.nodes.jvm.mem.non_heap_used |
elasticsearch.nodes.jvm.peak_count |
elasticsearch.nodes.jvm.threads_count |
elasticsearch.nodes.jvm.total_loaded_count |
elasticsearch.nodes.jvm.total_unloaded_count |
elasticsearch.nodes.jvm.uptime |
elasticsearch.nodes.merge.stats.current |
elasticsearch.nodes.merge.stats.current_docs |
elasticsearch.nodes.merge.stats.current_size |
elasticsearch.nodes.merge.stats.total |
elasticsearch.nodes.merge.stats.total_auto_throttle |
elasticsearch.nodes.merge.stats.total_docs |
elasticsearch.nodes.merge.stats.total_size |
elasticsearch.nodes.merge.stats.total_stopped_time |
elasticsearch.nodes.merge.stats.total_throttled_time |
elasticsearch.nodes.merge.stats.total_time |
elasticsearch.nodes.os.allocated_processors |
elasticsearch.nodes.os.available_processors |
elasticsearch.nodes.os.cpu.cpu.load_average |
elasticsearch.nodes.os.cpu.percent |
elasticsearch.nodes.os.mem.free |
elasticsearch.nodes.os.mem.free_percent |
elasticsearch.nodes.os.mem.total |
elasticsearch.nodes.os.mem.used |
elasticsearch.nodes.os.mem.used_percent |
elasticsearch.nodes.os.refresh_interval |
elasticsearch.nodes.os.swap.free |
elasticsearch.nodes.os.swap.total |
elasticsearch.nodes.os.swap.used |
elasticsearch.nodes.percolate.stats.current |
elasticsearch.nodes.percolate.stats.memory_size |
elasticsearch.nodes.percolate.stats.queries |
elasticsearch.nodes.percolate.stats.time |
elasticsearch.nodes.percolate.stats.total |
elasticsearch.nodes.process.cpu.percent |
elasticsearch.nodes.process.cpu.total |
elasticsearch.nodes.process.max_file_descriptors |
elasticsearch.nodes.process.mem.total_virtual |
elasticsearch.nodes.process.open_file_descriptors |
elasticsearch.nodes.process.timestamp |
elasticsearch.nodes.processes.id |
elasticsearch.nodes.processes.refresh_interval |
elasticsearch.nodes.query.cache.cache_count |
elasticsearch.nodes.query.cache.cache_size |
elasticsearch.nodes.query.cache.evictions |
elasticsearch.nodes.query.cache.hit_count |
elasticsearch.nodes.query.cache.memory_size |
elasticsearch.nodes.query.cache.miss_count |
elasticsearch.nodes.query.cache.total_count |
elasticsearch.nodes.recovery.stats.current_as_source |
elasticsearch.nodes.recovery.stats.current_as_target |
elasticsearch.nodes.refresh.stats.total |
elasticsearch.nodes.refresh.stats.total_time |
elasticsearch.nodes.request.cache.evictions |
elasticsearch.nodes.request.cache.hit_count |
elasticsearch.nodes.request.cache.memory_size |
elasticsearch.nodes.request.cache.miss_count |
elasticsearch.nodes.script.stats.cache_evictions |
elasticsearch.nodes.script.stats.compilations |
elasticsearch.nodes.search.stats.fetch_current |
elasticsearch.nodes.search.stats.fetch_time |
elasticsearch.nodes.search.stats.fetch_total |
elasticsearch.nodes.search.stats.open_contexts |
elasticsearch.nodes.search.stats.query_current |
elasticsearch.nodes.search.stats.query_time |
elasticsearch.nodes.search.stats.query_total |
elasticsearch.nodes.search.stats.scroll_current |
elasticsearch.nodes.search.stats.scroll_time |
elasticsearch.nodes.search.stats.scroll_total |
elasticsearch.nodes.segments.stats.count |
elasticsearch.nodes.segments.stats.doc_values_memory |
elasticsearch.nodes.segments.stats.fixed_bit_set_memory |
elasticsearch.nodes.segments.stats.index_writer_max_memory |
elasticsearch.nodes.segments.stats.index_writer_memory |
elasticsearch.nodes.segments.stats.memory |
elasticsearch.nodes.segments.stats.norms_memory |
elasticsearch.nodes.segments.stats.stored_fields_memory |
elasticsearch.nodes.segments.stats.term_vectors_memory |
elasticsearch.nodes.segments.stats.terms_memory |
elasticsearch.nodes.segments.stats.version_map_memory |
elasticsearch.nodes.store.stats.size |
elasticsearch.nodes.suggest.stats.current |
elasticsearch.nodes.suggest.stats.total |
elasticsearch.nodes.suggest.stats.total_time |
elasticsearch.nodes.threads.active |
elasticsearch.nodes.threads.completed |
elasticsearch.nodes.threads.count |
elasticsearch.nodes.threads.largest |
elasticsearch.nodes.threads.queue |
elasticsearch.nodes.threads.rejected |
elasticsearch.nodes.total_indexing_buffer |
elasticsearch.nodes.translog.stats.operations |
elasticsearch.nodes.translog.stats.size |
elasticsearch.nodes.transport.rx_count |
elasticsearch.nodes.transport.rx_size |
elasticsearch.nodes.transport.server_open |
elasticsearch.nodes.transport.tx_count |
elasticsearch.nodes.transport.tx_size |
elasticsearch.nodes.warmer.stats.current |
elasticsearch.nodes.warmer.stats.total |
elasticsearch.nodes.warmer.stats.total_time |
Metric changes
Below are the plugin metric changes from version 8 to version 10. These changes are promoted to defaults.
/elasticsearch/cluster/nodes/count/coordinating_only
/elasticsearch/cluster/nodes/count/data
/elasticsearch/cluster/nodes/count/ingest
/elasticsearch/cluster/nodes/count/master
/elasticsearch/cluster/nodes/fs/disk_reads
/elasticsearch/cluster/nodes/fs/disk_writes
/elasticsearch/nodes/*/fs/io/read_operations
/elasticsearch/nodes/*/fs/io/write_operations
/elasticsearch/nodes/*/indexing/stats/index_current
/elasticsearch/nodes/*/indexing/stats/index_failed
/elasticsearch/nodes/*/indexing/stats/index_time
/elasticsearch/nodes/*/indexing/stats/index_total
/elasticsearch/nodes/*/jvm/gc/collection/*/count
/elasticsearch/nodes/*/jvm/gc/collection/*/time
/elasticsearch/nodes/*/jvm/mem/heap_used_percent
/elasticsearch/nodes/*/os/cpu/percent
/elasticsearch/nodes/*/search/stats/fetch_time
/elasticsearch/nodes/*/search/stats/query_current
/elasticsearch/nodes/*/search/stats/query_time
/elasticsearch/nodes/*/search/stats/query_total
The following metrics are no longer listed as defaults.
/elasticsearch/cluster/active_primary_shards
/elasticsearch/cluster/active_shards
/elasticsearch/cluster/active_shards_percent_as_number
/elasticsearch/cluster/cluster_name
/elasticsearch/cluster/delayed_unassigned_shards
/elasticsearch/cluster/initializing_shards
/elasticsearch/cluster/number_of_data_nodes
/elasticsearch/cluster/number_of_in_flight_fetch
/elasticsearch/cluster/number_of_nodes
/elasticsearch/cluster/number_of_pending_tasks
/elasticsearch/cluster/task_max_waiting_in_queue_millis
/elasticsearch/cluster/unassigned_shards
The following metrics are backwards-incompatible renames of metrics.
/elasticsearch/cluster/nodes/fs/dev
-> no longer supported/elasticsearch/cluster/nodes/fs/dev
-> no longer supported/elasticsearch/cluster/nodes/fs/disk_queue
-> no longer supported/elasticsearch/cluster/nodes/fs/disk_queue
-> no longer supported/elasticsearch/cluster/nodes/fs/disk_service_time
-> no longer supported/elasticsearch/cluster/nodes/fs/disk_service_time
-> no longer supported/elasticsearch/cluster/nodes/fs/mount
-> no longer supported/elasticsearch/cluster/nodes/fs/path
-> no longer supported/elasticsearch/cluster/timed_out
-> no longer supported/elasticsearch/nodes/*/build_hash
-> no longer supported/elasticsearch/nodes/*/host
-> no longer supported/elasticsearch/nodes/*/ip
-> no longer supported/elasticsearch/nodes/*/jvm/jvm/mem/heap_committed
->/elasticsearch/nodes/*/jvm/mem/heap_committed
/elasticsearch/nodes/*/jvm/jvm/mem/heap_max
->/elasticsearch/nodes/*/jvm/mem/heap_max
/elasticsearch/nodes/*/jvm/jvm/mem/heap_used_percent
->/elasticsearch/nodes/*/jvm/mem/heap_used_percent
/elasticsearch/nodes/*/jvm/jvm/mem/heap_used
->/elasticsearch/nodes/*/jvm/mem/heap_used
/elasticsearch/nodes/*/jvm/jvm/mem/non_heap_committed
->/elasticsearch/nodes/*/jvm/mem/non_heap_committed
/elasticsearch/nodes/*/jvm/jvm/mem/non_heap_used
->/elasticsearch/nodes/*/jvm/mem/non_heap_used
/elasticsearch/nodes/*/jvm/jvm/uptime
->/elasticsearch/nodes/*/jvm/uptime
/elasticsearch/nodes/*/name
-> no longer supported/elasticsearch/nodes/*/os/arch
-> no longer supported/elasticsearch/nodes/*/os/name
-> no longer supported/elasticsearch/nodes/*/os/version
-> no longer supported/elasticsearch/nodes/*/threads/*/Count
->/elasticsearch/nodes/*/threads/*/count
/elasticsearch/nodes/*/transport_address
-> no longer supported/elasticsearch/nodes/*/version
-> no longer supported/elasticsearch/nodes/fs/io/read_operations
->/elasticsearch/nodes/*/fs/io/read_operations
/elasticsearch/nodes/fs/io/write_operations
->/elasticsearch/nodes/*/fs/io/write_operations
/elasticsearch/nodes/indexing/stats/index_current
->/elasticsearch/nodes/*/indexing/stats/index_current
/elasticsearch/nodes/indexing/stats/index_failed
->/elasticsearch/nodes/*/indexing/stats/index_failed
/elasticsearch/nodes/indexing/stats/index_total
->/elasticsearch/nodes/*/indexing/stats/index_total
/elasticsearch/nodes/jvm/gc/collection/count
->/elasticsearch/nodes/*/jvm/gc/collection/*/count
/elasticsearch/nodes/jvm/gc/collection/time
->/elasticsearch/nodes/*/jvm/gc/collection/*/time
/elasticsearch/nodes/jvm/jvm/mem/heap_used_percent
->/elasticsearch/nodes/*/jvm/mem/heap_used_percent
/elasticsearch/nodes/os/cpu/percent
->/elasticsearch/nodes/*/os/cpu/percent
/elasticsearch/nodes/search/stats/query_current
->/elasticsearch/nodes/*/search/stats/query_current
/elasticsearch/nodes/search/stats/query_total
->/elasticsearch/nodes/*/search/stats/query_total
The scripts are not supported under any SolarWinds support program or service. The scripts are provided AS IS without warranty of any kind. SolarWinds further disclaims all warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose. The risk arising out of the use or performance of the scripts and documentation stays with you. In no event shall SolarWinds or anyone else involved in the creation, production, or delivery of the scripts be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the scripts or documentation.