Metrics

Open Source Metrics Analysis

From drone sensor data to CPU usage, Elasticsearch has been taking what you love about its text search superpowers and applying them to metrics since the beginning. And it keeps on getting better.

Experience metrics analysis with Elastic. Try It Out

New From the Infrastructure UI and data rollups to Functionbeat and Beats central management, there's much to be excited about in the world of infrastructure metrics. Learn More

Multiple Data Sources, One Place to Analyze

Whether you are monitoring Docker containers, data centers, fleets of vehicles, or the surface temperature on Mars, there’s a Beat, module, or plugin to bring it all together in the Elastic Stack.

Didn't know a search engine could handle all of these data sources? That's alright. You do now.
Skip ahead to get started.

Freely Explore Your Numbers Your Way

Run wild with dimensions, tags, cardinality, and fields. Elastic doesn’t limit or dictate how you explore your data. Instead, you can continuously and quickly explore attributes — host name, IP address, deployment, color — at scale in any way you like, in any order you like, in the visualization you like. Plus, Beats and their modules do the collecting, parsing, and tagging for you. They can also create dashboards and machine learning jobs.

It's Got the Sort of Speed and Scale You Notice

And to make that happen, we went beyond the inverted index. We created new data types, implemented BKD trees, and added a column store — all of which leads to more efficiently structure data for faster searches, and less memory use, and less disk use. In other words: you can access fields and values across petabyte-scale data at remarkable speeds.

Rollups the Right Way

Downsample your metrics without ever leaving the Elastic Stack. Powerful rollups support in Elasticsearch and Kibana enables space savings and faster queries without sacrificing accuracy.

Try It Out

Grab a fresh installation and get started.
  • Register, if you do not already have an account. Free 14-day trial available.
  • Log into the Elastic Cloud console
To create a cluster, in Elastic Cloud console:
  • Select Create Deployment, and specify the Deployment Name
  • Modify the other deployment options as needed (or not, the defaults are great to get started)
  • Click Create Deployment
  • Save the Cloud ID and the cluster Password for your records, we will refer to these as <cloud.id> and <password> below
  • Wait until deployment creation completes

Download and unpack Metricbeat

Open terminal (varies depending on your client OS) and in the Metricbeat install directory, type:

Paste in the <password> for the elastic user when prompted

Paste in the <cloud.id> for the cluster when prompted

To modify defaults, edit modules.d/system.yml.

Open Kibana from Kibana section of the Elastic Cloud console (login: elastic/<password>)
Open dashboard:
"[Metricbeat System] Overview"
What just happened?

Metricbeat created an index pattern in Kibana with defined fields, searches, visualizations, and dashboards. In a matter of minutes you can start viewing CPU and memory utilization, and process-level statistics.

Didn't work for you?

Metricbeat modules have defaults and configurations for each system they connect to. See the documentation for supported versions and configuration options.

  • Register, if you do not already have an account. Free 14-day trial available.
  • Log into the Elastic Cloud console
To create a cluster, in Elastic Cloud console:
  • Select Create Deployment, and specify the Deployment Name
  • Modify the other deployment options as needed (or not, the defaults are great to get started)
  • Click Create Deployment
  • Save the Cloud ID and the cluster Password for your records, we will refer to these as <cloud.id> and <password> below
  • Wait until deployment creation completes

Download and unpack Metricbeat

Open terminal (varies depending on your client OS) and in the Metricbeat install directory, type:

Paste in the <password> for the elastic user when prompted

Paste in the <cloud.id> for the cluster when prompted

To modify defaults, edit modules.d/apache.yml.

Open Kibana from Kibana section of the Elastic Cloud console (login: elastic/<password>)
Open dashboard:
"[Metricbeat Apache] Overview"
What just happened?

Metricbeat created an index pattern in Kibana with defined fields, searches, visualizations, and dashboards. In a matter of minutes you can start viewing connection statistics and HTTP worker details.

Didn't work for you?

Metricbeat modules have defaults and configurations for each system they connect to. See the documentation for supported versions and configuration options.

  • Register, if you do not already have an account. Free 14-day trial available.
  • Log into the Elastic Cloud console
To create a cluster, in Elastic Cloud console:
  • Select Create Deployment, and specify the Deployment Name
  • Modify the other deployment options as needed (or not, the defaults are great to get started)
  • Click Create Deployment
  • Save the Cloud ID and the cluster Password for your records, we will refer to these as <cloud.id> and <password> below
  • Wait until deployment creation completes

Download and unpack Metricbeat

Open terminal (varies depending on your client OS) and in the Metricbeat install directory, type:

Paste in the <password> for the elastic user when prompted

Paste in the <cloud.id> for the cluster when prompted

To modify defaults, edit modules.d/mongodb.yml.

Open Kibana from Kibana section of the Elastic Cloud console (login: elastic/<password>)
Open dashboard:
"[Metricbeat MongoDB] Overview"
What just happened?

Metricbeat created an index pattern in Kibana with defined fields, searches, visualizations, and dashboards. In a matter of minutes you can start viewing data statistics, health and status information about your MongoDB deployment.

Didn't work for you?

Metricbeat modules have defaults and configurations for each system they connect to. See the documentation for supported versions and configuration options.

  • Register, if you do not already have an account. Free 14-day trial available.
  • Log into the Elastic Cloud console
To create a cluster, in Elastic Cloud console:
  • Select Create Deployment, and specify the Deployment Name
  • Modify the other deployment options as needed (or not, the defaults are great to get started)
  • Click Create Deployment
  • Save the Cloud ID and the cluster Password for your records, we will refer to these as <cloud.id> and <password> below
  • Wait until deployment creation completes

Download and unpack Metricbeat

Open terminal (varies depending on your client OS) and in the Metricbeat install directory, type:

Paste in the <password> for the elastic user when prompted

Paste in the <cloud.id> for the cluster when prompted

To modify defaults, edit modules.d/docker.yml.

Open Kibana from Kibana section of the Elastic Cloud console (login: elastic/<password>)
Open dashboard:
"[Metricbeat Docker] Overview"
What just happened?
Metricbeat created an index pattern in Kibana with defined fields, searches, visualizations, and dashboards. In a matter of minutes you can start viewing data statistics, health and status information about your Docker deployment.
Didn't work for you?

Metricbeat modules have defaults and configurations for each system they connect to. See the documentation for supported versions and configuration options.

  • Register, if you do not already have an account. Free 14-day trial available.
  • Log into the Elastic Cloud console
To create a cluster, in Elastic Cloud console:
  • Select Create Deployment, and specify the Deployment Name
  • Modify the other deployment options as needed (or not, the defaults are great to get started)
  • Click Create Deployment
  • Save the Cloud ID and the cluster Password for your records, we will refer to these as <cloud.id> and <password> below
  • Wait until deployment creation completes

Download and unpack Metricbeat

Open terminal (varies depending on your client OS) and in the Metricbeat install directory, type:

Paste in the <password> for the elastic user when prompted

Paste in the <cloud.id> for the cluster when prompted

From your machine or wherever you run kubectl:

env:
  - name: ELASTIC_CLOUD_ID
    value: <cloud.id>
  - name: ELASTIC_CLOUD_AUTH
    value: <cloud.auth>
				

Optionally, you can enable kube-state-metrics for more detail.

Open Kibana from Kibana section of the Elastic Cloud console (login: elastic/<password>)
Open dashboard:
"[Metricbeat Kubernetes] Overview"
What just happened?
Metricbeat created an index pattern in Kibana with defined fields, searches, visualizations, and dashboards. In a matter of minutes you can monitor your Kubernetes cluster.
Didn't work for you?

Metricbeat modules have defaults and configurations for each system they connect to. See the documentation for supported versions and configuration options.

  • Register, if you do not already have an account. Free 14-day trial available.
  • Log into the Elastic Cloud console
To create a cluster, in Elastic Cloud console:
  • Select Create Deployment, and specify the Deployment Name
  • Modify the other deployment options as needed (or not, the defaults are great to get started)
  • Click Create Deployment
  • Save the Cloud ID and the cluster Password for your records, we will refer to these as <cloud.id> and <password> below
  • Wait until deployment creation completes

Download and unpack Heartbeat (Beta)

Open terminal (varies depending on your client OS) and in the Heartbeat install directory, type:

Paste in the <password> for the elastic user when prompted

Paste in the <cloud.id> for the cluster when prompted

Open Kibana from Kibana section of the Elastic Cloud console (login: elastic/<password>)
Open dashboard:
"[Heartbeat] HTTP Monitoring"
What just happened?

Heartbeat is designed to do distributed uptime checks from each of your hosts to ensure that they can each reach every endpoint they are supposed to. This is amazing for service-oriented architectures. In this case, you've asked Heartbeat to check the uptime for the two local ports corresponding to the Elasticsearch and Kibana defaults. Heartbeat then sends this data to Elasticsearch and you can see the data in the Kibana dashboard.

Didn't work for you?

Heartbeat was set to use the default ports for Elasticsearch and Kibana in this example. See the documentation for configuration options.

In Elasticsearch install directory:
Ctrl + C to Copy
In Kibana install directory:
Ctrl + C to Copy
In Metricbeat install directory:
Ctrl + C to Copy

To modify defaults, edit modules.d/system.yml.

What just happened?

Metricbeat created an index pattern in Kibana with defined fields, searches, visualizations, and dashboards. In a matter of minutes you can start viewing CPU and memory utilization, and process-level statistics.

Didn't work for you?

Metricbeat modules have defaults and configurations for each system they connect to. See the documentation for supported versions and configuration options.

In Elasticsearch install directory:
Ctrl + C to Copy
In Kibana install directory:
Ctrl + C to Copy
In Metricbeat install directory:
Ctrl + C to Copy
Ctrl + C to Copy

To modify defaults, edit modules.d/apache.yml.

What just happened?

Metricbeat created an index pattern in Kibana with defined fields, searches, visualizations, and dashboards. In a matter of minutes you can start viewing connection statistics and HTTP worker details.

Didn't work for you?

Metricbeat modules have defaults and configurations for each system they connect to. See the documentation for supported versions and configuration options.

In Elasticsearch install directory:
Ctrl + C to Copy
In Kibana install directory:
Ctrl + C to Copy
In Metricbeat install directory:
Ctrl + C to Copy
Ctrl + C to Copy

To modify defaults, edit modules.d/mongodb.yml.

What just happened?

Metricbeat created an index pattern in Kibana with defined fields, searches, visualizations, and dashboards. In a matter of minutes you can start viewing data statistics, health and status information about your MongoDB deployment.

Didn't work for you?

Metricbeat modules have defaults and configurations for each system they connect to. See the documentation for supported versions and configuration options.

In Elasticsearch install directory:
Ctrl + C to Copy
In Kibana install directory:
Ctrl + C to Copy
In Metricbeat install directory:
Ctrl + C to Copy
Ctrl + C to Copy

To modify defaults, edit modules.d/docker.yml.

What just happened?

Metricbeat created an index pattern in Kibana with defined fields, searches, visualizations, and dashboards. In a matter of minutes you can start viewing data statistics, health and status information about your Docker deployment.

Didn't work for you?

Metricbeat modules have defaults and configurations for each system they connect to. See the documentation for supported versions and configuration options.

In Elasticsearch install directory:
Ctrl + C to Copy
In Kibana install directory:
Ctrl + C to Copy
In Filebeat install directory:
Ctrl + C to Copy
Ctrl + C to Copy
From your machine or wherever you run kubectl:
  • Download metricbeat-kubernetes.yml
  • Edit metricbeat-kubernetes.yml and specify the host for your Elasticsearch server (If you are connecting back to your host from kubernetes running locally then set ELASTICSEARCH_HOST to host.docker.internal). There is a DaemonSet and a singleton, edit the HOST for both:
  - name: ELASTICSEARCH_HOST
    value: host.docker.internal
			

Optionally, you can enable kube-state-metrics for more detail.

Ctrl + C to Copy
What just happened?

Metricbeat created an index pattern in Kibana with defined fields, searches, visualizations, and dashboards. In a matter of minutes you can monitor your Kubernetes cluster.

Didn't work for you?

Metricbeat modules have defaults and configurations for each system they connect to. See the documentation for supported versions and configuration options.

In Elasticsearch install directory:
Ctrl + C to Copy
In Kibana install directory:
Ctrl + C to Copy
In Heartbeat install directory:
Ctrl + C to Copy
What just happened?

Heartbeat is designed to do distributed uptime checks from each of your hosts to ensure that they can each reach every endpoint they are supposed to. This is amazing for service-oriented architectures. In this case, you've asked Heartbeat to check the uptime for the two local ports corresponding to the Elasticsearch and Kibana defaults. Heartbeat then sends this data to Elasticsearch and you can see the data in the Kibana dashboard.

Didn't work for you?

Heartbeat was set to use the default ports for Elasticsearch and Kibana in this example. See the documentation for configuration options.

Run Machine Learning Jobs to Spot Anomalies

As data scales, it's easy to lose errant data points among the streaming averages, measurements, totals. And it's impractical to analyze all your visualizations all the time. (Hey we're all human here.)

The machine learning capabilities for the Elastic Stack automates anomaly detection at scale. It learns what's normal in your data to identify what isn't, and then alerts you to it.

Even Supercomputers Use Elastic

1.2 billion documents, 160 GB. That's how much data the National Energy Research Scientific Computing Center (NERSC) collects on any given day. From substation power usage KPIs to building air and water temperature, computer disk and network I/O, and system load, they index all kinds of metrics to keep scientific discovery moving forward.

They're not the only ones doing the numbers with Elastic. Explore more customer examples.

Metrics are Just One Place to Start

Have network data? Infrastructure logs? Documents with tons of text? Centralize it all into the Elastic Stack with your metrics and enrich your analyses, streamline your workflows, and simplify your architecture.

Site Search

Easily create a great search experience for your site.

Learn More

App Search

Search across documents, geo data, and more.

Learn More

Security Analytics

Interactive investigation at speed and scale.

Learn More

APM

Get insight into your application performance.

Learn More

Logging

Fast and scalable logging that won't quit.

Learn More