Skip to content

Latest commit

 

History

History
503 lines (431 loc) · 32.7 KB

elasticsearch.md

File metadata and controls

503 lines (431 loc) · 32.7 KB

elasticsearch

Monitor Type: elasticsearch (Source)

Accepts Endpoints: Yes

Multiple Instances Allowed: Yes

Overview

This monitor collects stats from Elasticsearch. It collects node, cluster and index level stats.

This monitor collects cluster level and index level stats only from the current master in an Elasticsearch cluster by default. It is possible to override this with the clusterHealthStatsMasterOnly and indexStatsMasterOnly config options respectively.

A simple configuration that collects only default (non-custom) metrics looks like the following:

monitors:
- type: elasticsearch
  host: localhost
  port: 9200

Enhanced (custom) metrics

The monitor collects a subset of node stats of JVM, process, HTTP, transport, indices and thread pool stats. It is possible to enable enhanced stats for each stat group separately. Note that these metrics get categorized under the custom group if you are on host-based pricing. Here's an example:

monitors:
- type: elasticsearch
  host: localhost
  port: 9200
  enableEnhancedHTTPStats: true
  enableEnhancedJVMStats: true
  enableEnhancedProcessStats: true
  enableEnhancedThreadPoolStats: true
  enableEnhancedTransportStats: true
  enableEnhancedNodeIndicesStats:
   - indexing
   - warmer
   - get

The enableEnhancedNodeIndicesStats option takes a list of index stats groups for which enhanced stats will be collected. A comprehensive list of all such available groups can be found here.

Note that the enableEnhancedIndexStatsForIndexGroups is similar to enableEnhancedNodeIndicesStats, but for index level stats.

Thread Pools

By default thread pool stats from the "search" and "index" thread pools are collected. To collect stats from other thread pools specify the threadPools config option:

monitors:
- type: elasticsearch
  host: localhost
  port: 9200
  threadPools:
  - bulk
  - warmer
  - listener

Here is a list of valid thread pools by Elasticsearch version:

thread pool name ES 1.x ES 2.0 ES 2.1+
merge
optimize
bulk
flush
generic
get
snapshot
warmer
refresh
fetch_shard_started
fetch_shard_store
listener
management
percolate
suggest
force_merge

Collecting index statistics

By default, the configuration parameter indexes is empty, which means collect stats on all indexes. To collect statistics from a subset of indexes, set the configuration parameter indexes to a list of the index names you want to collect stats for.

The call to collect index statistics can be CPU-intensive. For this reason SignalFx recommends using the indexStatsIntervalSeconds configuration parameter to decrease the reporting interval for nodes that report index statistics.

Primaries vs total

By default the monitor collects a subset of index stats of total aggregation type (see docs for details). It is possible to enable index stats of primaries aggregation type too. Total for an index stat aggregates across all shards. Whereas, Primaries only reflect the stats from primary shards. An example configuration to enable index stats from Primary shards too:

monitors:
- type: elasticsearch
  host: localhost
  port: 9200
  enableIndexStatsPrimaries: true

Configuration

To activate this monitor in the Smart Agent, add the following to your agent config:

monitors:  # All monitor config goes under this key
 - type: elasticsearch
   ...  # Additional config

For a list of monitor options that are common to all monitors, see Common Configuration.

Config option Required Type Description
httpTimeout no int64 HTTP timeout duration for both read and writes. This should be a duration string that is accepted by https://golang.org/pkg/time/#ParseDuration (default: 10s)
username no string Basic Auth username to use on each request, if any.
password no string Basic Auth password to use on each request, if any.
useHTTPS no bool If true, the agent will connect to the server using HTTPS instead of plain HTTP. (default: false)
httpHeaders no map of strings A map of HTTP header names to values. Comma separated multiple values for the same message-header is supported.
skipVerify no bool If useHTTPS is true and this option is also true, the exporter's TLS cert will not be verified. (default: false)
sniServerName no string If useHTTPS is true and skipVerify is true, the sniServerName is used to verify the hostname on the returned certificates. It is also included in the client's handshake to support virtual hosting unless it is an IP address.
caCertPath no string Path to the CA cert that has signed the TLS cert, unnecessary if skipVerify is set to false.
clientCertPath no string Path to the client TLS cert to use for TLS required connections
clientKeyPath no string Path to the client TLS key to use for TLS required connections
host yes string
port yes string
cluster no string Cluster name to which the node belongs. This is an optional config that will override the cluster name fetched from a node and will be used to populate the plugin_instance dimension
enableIndexStats no bool Enable Index stats. If set to true, by default the a subset of index stats will be collected (see docs for list of default index metrics collected). (default: true)
indexes no list of strings Indexes to collect stats from (by default stats from all indexes are collected)
indexStatsIntervalSeconds no integer Interval to report IndexStats on (default: 60)
indexSummaryOnly no bool Collect only aggregated index stats across all indexes (default: false)
indexStatsMasterOnly no bool Collect index stats only from Master node (default: true)
enableClusterHealth no bool EnableClusterHealth enables reporting on the cluster health (default: true)
clusterHealthStatsMasterOnly no bool Whether or not non master nodes should report cluster health (default: true)
enableEnhancedHTTPStats no bool Enable enhanced HTTP stats (default: false)
enableEnhancedJVMStats no bool Enable enhanced JVM stats (default: false)
enableEnhancedProcessStats no bool Enable enhanced Process stats (default: false)
enableEnhancedThreadPoolStats no bool Enable enhanced ThreadPool stats (default: false)
enableEnhancedTransportStats no bool Enable enhanced Transport stats (default: false)
enableEnhancedNodeIndicesStats no list of strings Enable enhanced node level index stats groups. A list of index stats groups for which to collect enhanced stats
threadPools no list of strings ThreadPools to report threadpool node stats on (default: [search index])
enableEnhancedClusterHealthStats no bool Enable Cluster level stats. These stats report only from master Elasticserach nodes (default: false)
enableEnhancedIndexStatsForIndexGroups no list of strings Enable enhanced index level index stats groups. A list of index stats groups for which to collect enhanced stats
enableIndexStatsPrimaries no bool To enable index stats from only primary shards. By default the index stats collected are aggregated across all shards (default: false)
metadataRefreshIntervalSeconds no integer How often to refresh metadata about the node and cluster (default: 30)

Metrics

These are the metrics available for this monitor. Metrics that are categorized as container/host (default) are in bold and italics in the list below.

Group cluster

All of the following metrics are part of the cluster metric group. All of the non-default metrics below can be turned on by adding cluster to the monitor config option extraGroups:

  • elasticsearch.cluster.active-primary-shards (gauge)
    Number of active primary shards
  • elasticsearch.cluster.active-shards (gauge)
    Number of active shards
  • elasticsearch.cluster.active-shards-percent (gauge)
    Percentaage of shards active
  • elasticsearch.cluster.delayed-unassigned-shards (gauge)
    Number of delayed unassigned shards
  • elasticsearch.cluster.in-flight-fetches (gauge)
    Number of fetches in-flight
  • elasticsearch.cluster.initializing-shards (gauge)
    Number of shards being initialized
  • elasticsearch.cluster.number-of-data_nodes (gauge)
    Number of data nodes
  • elasticsearch.cluster.number-of-nodes (gauge)
    Number of nodes
  • elasticsearch.cluster.pending-tasks (gauge)
    Number of pending tasks
  • elasticsearch.cluster.relocating-shards (gauge)
    Number of shards being relocated
  • elasticsearch.cluster.status (gauge)
    Cluster stats (0, 1, 2 for green, yellow and red respectively)
  • elasticsearch.cluster.task-max-wait-time (gauge)
    Max time a task has to wait
  • elasticsearch.cluster.unassigned-shards (gauge)
    Number of unassigned shards

Group indices/completion

All of the following metrics are part of the indices/completion metric group. All of the non-default metrics below can be turned on by adding indices/completion to the monitor config option extraGroups:

  • elasticsearch.indices.completion.size (gauge)
    Size used by suggest completion (in bytes)

Group indices/docs

All of the following metrics are part of the indices/docs metric group. All of the non-default metrics below can be turned on by adding indices/docs to the monitor config option extraGroups:

  • elasticsearch.indices.docs.count (gauge)
    Number of docs
  • elasticsearch.indices.docs.deleted (gauge)
    Number of docs deleted

Group indices/fielddata

All of the following metrics are part of the indices/fielddata metric group. All of the non-default metrics below can be turned on by adding indices/fielddata to the monitor config option extraGroups:

  • elasticsearch.indices.fielddata.evictions (cumulative)
    Number of evictions from fielddata cache
  • elasticsearch.indices.fielddata.memory-size (gauge)
    Size of fielddata cache (in bytes)

Group indices/filter-cache

All of the following metrics are part of the indices/filter-cache metric group. All of the non-default metrics below can be turned on by adding indices/filter-cache to the monitor config option extraGroups:

  • elasticsearch.indices.filter-cache.evictions (cumulative)
    Number of evicttions from filter cache
  • elasticsearch.indices.filter-cache.memory-size (gauge)
    Filter cache size (in bytes)

Group indices/flush

All of the following metrics are part of the indices/flush metric group. All of the non-default metrics below can be turned on by adding indices/flush to the monitor config option extraGroups:

  • elasticsearch.indices.flush.periodic (gauge)
    How long to wait before triggering a flush regardless of translog size
  • elasticsearch.indices.flush.total (cumulative)
    Number of index flushes to disk
  • elasticsearch.indices.flush.total-time (cumulative)
    Time spent flushing the index to disk

Group indices/get

All of the following metrics are part of the indices/get metric group. All of the non-default metrics below can be turned on by adding indices/get to the monitor config option extraGroups:

  • elasticsearch.indices.get.current (gauge)
    Number of get requests running
  • elasticsearch.indices.get.exists-time (cumulative)
    Time spent on get requests where the document existed
  • elasticsearch.indices.get.exists-total (cumulative)
    Number of get requests where the document existed
  • elasticsearch.indices.get.missing-time (cumulative)
    Time spent on get requests where the document was missing
  • elasticsearch.indices.get.missing-total (cumulative)
    Number of get requests where the document was missing
  • elasticsearch.indices.get.time (cumulative)
    Time spent on get requests
  • elasticsearch.indices.get.total (cumulative)
    Total number of get requests

Group indices/id-cache

All of the following metrics are part of the indices/id-cache metric group. All of the non-default metrics below can be turned on by adding indices/id-cache to the monitor config option extraGroups:

  • elasticsearch.indices.id-cache.memory-size (gauge)
    Size of id cache (in bytes)

Group indices/indexing

All of the following metrics are part of the indices/indexing metric group. All of the non-default metrics below can be turned on by adding indices/indexing to the monitor config option extraGroups:

  • elasticsearch.indices.indexing.delete-current (gauge)
    Number of documents currently being deleted from an index
  • elasticsearch.indices.indexing.delete-time (cumulative)
    Time spent deleting documents from an index
  • elasticsearch.indices.indexing.delete-total (cumulative)
    Number of documents deleted from an index
  • elasticsearch.indices.indexing.index-current (gauge)
    Number of documents currently being indexed to an index
  • elasticsearch.indices.indexing.index-failed (gauge)
    Number of failed indices
  • elasticsearch.indices.indexing.index-time (cumulative)
    Time spent indexing documents to an index
  • elasticsearch.indices.indexing.index-total (cumulative)
    Total number of documents indexed to an index
  • elasticsearch.indices.indexing.noop-update-total (cumulative)
    Number of noop updates
  • elasticsearch.indices.indexing.throttle-time (cumulative)
    Throttle time

Group indices/merges

All of the following metrics are part of the indices/merges metric group. All of the non-default metrics below can be turned on by adding indices/merges to the monitor config option extraGroups:

  • elasticsearch.indices.merges.auto-throttle-size (cumulative)
    Merging throttled due to auto-throttling (in bytes)
  • elasticsearch.indices.merges.current (gauge)
    Number of currently active segment merges
  • elasticsearch.indices.merges.current-docs (gauge)
    Number of docs currently being merged
  • elasticsearch.indices.merges.current-size (gauge)
    Size of the segments currently being merged
  • elasticsearch.indices.merges.stopped-time (cumulative)
    Total time merges were stopped for
  • elasticsearch.indices.merges.throttle-time (cumulative)
    Total time merges spent waiting due to throttling
  • elasticsearch.indices.merges.total (cumulative)
    Number of segment merges
  • elasticsearch.indices.merges.total-docs (cumulative)
    Number of merged docs across merged segments
  • elasticsearch.indices.merges.total-size (cumulative)
    Total size of merged segments
  • elasticsearch.indices.merges.total-time (cumulative)
    Total time spent on merging

Group indices/percolate

All of the following metrics are part of the indices/percolate metric group. All of the non-default metrics below can be turned on by adding indices/percolate to the monitor config option extraGroups:

  • elasticsearch.indices.percolate.current (gauge)
    Number of percolator queries currently running
  • elasticsearch.indices.percolate.queries (cumulative)
    Number of percolator queries
  • elasticsearch.indices.percolate.time (cumulative)
    Total time spent on percolate requests
  • elasticsearch.indices.percolate.total (cumulative)
    Total number of suggest requests

Group indices/query-cache

All of the following metrics are part of the indices/query-cache metric group. All of the non-default metrics below can be turned on by adding indices/query-cache to the monitor config option extraGroups:

  • elasticsearch.indices.query-cache.cache-count (gauge)
    Number of items in query cache
  • elasticsearch.indices.query-cache.cache-size (gauge)
    Size of query cache (in bytes)
  • elasticsearch.indices.query-cache.evictions (cumulative)
    Number of query cache evictions
  • elasticsearch.indices.query-cache.hit-count (cumulative)
    Number of query cache hits
  • elasticsearch.indices.query-cache.memory-size (gauge)
    Size of query cache (in bytes)
  • elasticsearch.indices.query-cache.total-count (cumulative)
    Total number of items in the query cache

Group indices/recovery

All of the following metrics are part of the indices/recovery metric group. All of the non-default metrics below can be turned on by adding indices/recovery to the monitor config option extraGroups:

  • elasticsearch.indices.recovery.current-as-source (gauge)
    Number of ongoing recoveries for which a shard serves as a source
  • elasticsearch.indices.recovery.current-as-target (gauge)
    Number of ongoing recoveries for which a shard serves as a target
  • elasticsearch.indices.recovery.throttle-time (cumulative)
    Total time recoveries waited due to throttling

Group indices/refresh

All of the following metrics are part of the indices/refresh metric group. All of the non-default metrics below can be turned on by adding indices/refresh to the monitor config option extraGroups:

  • elasticsearch.indices.refresh.listeners (gauge)
    Number of listeners waiting for a refresh
  • elasticsearch.indices.refresh.total (cumulative)
    Total number of index refreshes
  • elasticsearch.indices.refresh.total-time (cumulative)
    Total time spent on index refreshes

Group indices/request-cache

All of the following metrics are part of the indices/request-cache metric group. All of the non-default metrics below can be turned on by adding indices/request-cache to the monitor config option extraGroups:

  • elasticsearch.indices.query-cache.miss-count (cumulative)
    Number of query cache misses
  • elasticsearch.indices.request-cache.evictions (cumulative)
    Number of request cache evictions
  • elasticsearch.indices.request-cache.hit-count (cumulative)
    Number of request cache hits
  • elasticsearch.indices.request-cache.memory-size (gauge)
    Memory used by request cache (in bytes)
  • elasticsearch.indices.request-cache.miss-count (cumulative)
    Number of request cache misses

Group indices/search

All of the following metrics are part of the indices/search metric group. All of the non-default metrics below can be turned on by adding indices/search to the monitor config option extraGroups:

  • elasticsearch.indices.search.fetch-current (gauge)
    Number of query fetches currently running
  • elasticsearch.indices.search.fetch-time (cumulative)
    Total time spent on query fetches
  • elasticsearch.indices.search.fetch-total (cumulative)
    Total number of query feches
  • elasticsearch.indices.search.open-contexts (gauge)
    Number of open contexts
  • elasticsearch.indices.search.query-current (gauge)
    Number of currently active queries
  • elasticsearch.indices.search.query-time (cumulative)
    Total time spent querying on the primary
  • elasticsearch.indices.search.query-total (cumulative)
    Total number of queries
  • elasticsearch.indices.search.scroll-current (gauge)
    Currently active scroll queries count
  • elasticsearch.indices.search.scroll-time (cumulative)
    Total time spent on scroll queries
  • elasticsearch.indices.search.scroll-total (cumulative)
    Total number of scroll queries
  • elasticsearch.indices.search.suggest-current (gauge)
    Number of suggest requests currently active
  • elasticsearch.indices.search.suggest-time (cumulative)
    Total time spent on search suggest
  • elasticsearch.indices.search.suggest-total (cumulative)
    Total number of suggest requests

Group indices/segments

All of the following metrics are part of the indices/segments metric group. All of the non-default metrics below can be turned on by adding indices/segments to the monitor config option extraGroups:

  • elasticsearch.indices.segments.count (gauge)
    Number of segments in an index shard
  • elasticsearch.indices.segments.doc-values-memory-size (gauge)
    Memory used by doc values
  • elasticsearch.indices.segments.fixed-bit-set-memory-size (gauge)
    Memory used by fixed bit set
  • elasticsearch.indices.segments.index-writer-max-memory-size (gauge)
    Maximum memory used by the index writer
  • elasticsearch.indices.segments.index-writer-memory-size (gauge)
    Memory used by the index writer
  • elasticsearch.indices.segments.memory-size (gauge)
    Memory used by index segments (in bytes)
  • elasticsearch.indices.segments.norms-memory-size (gauge)
    Memory used by norms (in bytes)
  • elasticsearch.indices.segments.points-memory-size (gauge)
    Memory used by points
  • elasticsearch.indices.segments.stored-field-memory-size (gauge)
    Memory used by stored fields (in bytes)
  • elasticsearch.indices.segments.term-vectors-memory-size (gauge)
    Memory used by term vectors (in bytes)
  • elasticsearch.indices.segments.terms-memory-size (gauge)
    Memory used by terms (in bytes)
  • elasticsearch.indices.segments.version-map-memory-size (gauge)
    Memory used by segment version map (in bytes)

Group indices/store

All of the following metrics are part of the indices/store metric group. All of the non-default metrics below can be turned on by adding indices/store to the monitor config option extraGroups:

  • elasticsearch.indices.store.size (gauge)
    Total size (in bytes)
  • elasticsearch.indices.store.throttle-time (cumulative)
    Total time requests are throttled for

Group indices/suggest

All of the following metrics are part of the indices/suggest metric group. All of the non-default metrics below can be turned on by adding indices/suggest to the monitor config option extraGroups:

  • elasticsearch.indices.suggest.current (gauge)
    Number of currently active suggest requests
  • elasticsearch.indices.suggest.time (cumulative)
    Total time spent in suggest requests
  • elasticsearch.indices.suggest.total (cumulative)
    Total number of suggest requests

Group indices/translog

All of the following metrics are part of the indices/translog metric group. All of the non-default metrics below can be turned on by adding indices/translog to the monitor config option extraGroups:

  • elasticsearch.indices.translog.earliest_last_modified_age (gauge)
    Earliest last modified age on transaction logs
  • elasticsearch.indices.translog.operations (gauge)
    Number of operations in the transaction log
  • elasticsearch.indices.translog.size (gauge)
    Size of the transaction log
  • elasticsearch.indices.translog.uncommitted_operations (gauge)
    Number of uncommitted operations in the transaction log
  • elasticsearch.indices.translog.uncommitted_size_in_bytes (gauge)
    Size of uncommitted transaction logs (in bytes)

Group indices/warmer

All of the following metrics are part of the indices/warmer metric group. All of the non-default metrics below can be turned on by adding indices/warmer to the monitor config option extraGroups:

  • elasticsearch.indices.warmer.current (gauge)
    Number of currently active warmers
  • elasticsearch.indices.warmer.total (cumulative)
    Total number of warmers
  • elasticsearch.indices.warmer.total-time (cumulative)
    Total time spent by warmers

Group node/http

All of the following metrics are part of the node/http metric group. All of the non-default metrics below can be turned on by adding node/http to the monitor config option extraGroups:

  • elasticsearch.http.current_open (gauge)
    Number of currently open HTTP connections
  • elasticsearch.http.total_open (cumulative)
    Total number of opened HTTP connections

Group node/jvm

All of the following metrics are part of the node/jvm metric group. All of the non-default metrics below can be turned on by adding node/jvm to the monitor config option extraGroups:

  • elasticsearch.jvm.classes.current-loaded-count (gauge)
    Number of classes currently loaded
  • elasticsearch.jvm.classes.total-loaded-count (cumulative)
    Number of classes loaded
  • elasticsearch.jvm.classes.total-unloaded-count (cumulative)
    Total number of classes unloaded
  • elasticsearch.jvm.gc.count (cumulative)
    Total number of garbage collections
  • elasticsearch.jvm.gc.old-count (cumulative)
    Total number of garbage collections on Old Gen
  • elasticsearch.jvm.gc.old-time (cumulative)
    Total time spent in garbage collections on Old Gen
  • elasticsearch.jvm.gc.time (cumulative)
    Total time spent on GC
  • elasticsearch.jvm.mem.buffer_pools.direct.count (gauge)
    Number of direct buffer pools
  • elasticsearch.jvm.mem.buffer_pools.direct.total_capacity_in_bytes (gauge)
    Total capacity of direct buffer pools
  • elasticsearch.jvm.mem.buffer_pools.direct.used_in_bytes (gauge)
    Memory used by direct buffer pools (in bytes)
  • elasticsearch.jvm.mem.buffer_pools.mapped.count (gauge)
    Number of buffers in the mapped pool
  • elasticsearch.jvm.mem.buffer_pools.mapped.total_capacity_in_bytes (gauge)
    Total capacity of the buffers in the mapped pool
  • elasticsearch.jvm.mem.buffer_pools.mapped.used_in_bytes (gauge)
    Memory used by mapped buffer pools (in bytes)
  • elasticsearch.jvm.mem.heap-committed (gauge)
    Memory guaranteed to be available to JVM heap
  • elasticsearch.jvm.mem.heap-max (gauge)
    Max memory that can be used by JVM heap (in bytes)
  • elasticsearch.jvm.mem.heap-used (gauge)
    Memory current being used by JVM heap (in bytes)
  • elasticsearch.jvm.mem.heap-used-percent (gauge)
    Percent of heap being used
  • elasticsearch.jvm.mem.non-heap-committed (gauge)
    Memory guaranteed to be available to JVM non-heap
  • elasticsearch.jvm.mem.non-heap-used (gauge)
    Memory current being used by JVM non-heap (in bytes)
  • elasticsearch.jvm.mem.pools.old.max_in_bytes (gauge)
    Memory used by Old Gen (in bytes)
  • elasticsearch.jvm.mem.pools.old.peak_max_in_bytes (gauge)
    Memory pool Old Gen peak max (in bytes)
  • elasticsearch.jvm.mem.pools.old.peak_used_in_bytes (gauge)
    Peak memory used by Old Gen (in bytes)
  • elasticsearch.jvm.mem.pools.old.used_in_bytes (gauge)
    Memory being used by Old Gen (in bytes)
  • elasticsearch.jvm.mem.pools.survivor.max_in_bytes (gauge)
    Max memory that can be used by Survivor space (in bytes)
  • elasticsearch.jvm.mem.pools.survivor.peak_max_in_bytes (gauge)
    Memory used by Survivor space (in bytes)
  • elasticsearch.jvm.mem.pools.survivor.peak_used_in_bytes (gauge)
    Peak memory used by Survivor space (in bytes)
  • elasticsearch.jvm.mem.pools.survivor.used_in_bytes (gauge)
    Memory being used currently by Survivor space (in bytes)
  • elasticsearch.jvm.mem.pools.young.max_in_bytes (gauge)
    Max memory (in bytes) that can be used by Young Gen
  • elasticsearch.jvm.mem.pools.young.peak_max_in_bytes (gauge)
    Memory pool Young Gen peak max (in bytes)
  • elasticsearch.jvm.mem.pools.young.peak_used_in_bytes (gauge)
    Memory pool Young Gen peak used (in bytes)
  • elasticsearch.jvm.mem.pools.young.used_in_bytes (gauge)
    Memory used by Young Gen (in bytes)
  • elasticsearch.jvm.threads.count (gauge)
    Number of active threads in the JVM
  • elasticsearch.jvm.threads.peak (gauge)
    Peak number of threads used
  • elasticsearch.jvm.uptime (cumulative)
    Uptime of JVM

Group node/process

All of the following metrics are part of the node/process metric group. All of the non-default metrics below can be turned on by adding node/process to the monitor config option extraGroups:

  • elasticsearch.process.cpu.percent (gauge)
    CPU usage in percent
  • elasticsearch.process.cpu.time (cumulative)
    CPU time (in milliseconds) used by the process on which the Java virtual machine is running
  • elasticsearch.process.max_file_descriptors (gauge)
    Number of opened file descriptors associated with the current process
  • elasticsearch.process.mem.total-virtual-size (cumulative)
    Size in bytes of virtual memory that is guaranteed to be available to the running process
  • elasticsearch.process.open_file_descriptors (gauge)
    Number of currently open file descriptors

Group node/thread-pool

All of the following metrics are part of the node/thread-pool metric group. All of the non-default metrics below can be turned on by adding node/thread-pool to the monitor config option extraGroups:

  • elasticsearch.thread_pool.active (gauge)
    Number of active threads
  • elasticsearch.thread_pool.completed (cumulative)
    Number of threads completed in thread pool
  • elasticsearch.thread_pool.largest (gauge)
    Highest active threads in thread pool
  • elasticsearch.thread_pool.queue (gauge)
    Number of Tasks in thread pool
  • elasticsearch.thread_pool.rejected (cumulative)
    Number of rejected threads in thread pool
  • elasticsearch.thread_pool.threads (cumulative)
    Number of Threads in thread pool

Group node/transport

All of the following metrics are part of the node/transport metric group. All of the non-default metrics below can be turned on by adding node/transport to the monitor config option extraGroups:

  • elasticsearch.transport.rx.count (cumulative)
    Total size of data received in cluster communication (in bytes)
  • elasticsearch.transport.rx.size (cumulative)
    Total size of data received in cluster communication
  • elasticsearch.transport.server_open (gauge)
    Total number of connections opened for cluster communication
  • elasticsearch.transport.tx.count (cumulative)
    Total number of packets sent in cluster communication
  • elasticsearch.transport.tx.size (cumulative)
    Total size of data sent in cluster communication

Non-default metrics (version 4.7.0+)

To emit metrics that are not default, you can add those metrics in the generic monitor-level extraMetrics config option. Metrics that are derived from specific configuration options that do not appear in the above list of metrics do not need to be added to extraMetrics.

To see a list of metrics that will be emitted you can run agent-status monitors after configuring this monitor in a running agent instance.

Dimensions

The following dimensions may occur on metrics emitted by this monitor. Some dimensions may be specific to certain metrics.

Name Description
aggregation Aggregation of index metrics. Whether the value of the metric is from the primary shard only or across all shards. Valid values - primaries, total respectively (only on index stats)
cluster Name of Elasticsearch the cluster.
index Name of index (only on per index mertics)
node_id ID of a Elasticsearch node (only on node mertics)
node_name Human readable name of a node (only on node mertics)
plugin_instance Name of the Elasticsearch cluster. For compatibility with collectd/elasticsearch built-in content
thread_pool Name of thread pool (only on thread pool mertics)