How you get your data into Wavefront depends on your use case, but you have many options. Wavefront supports many integrations, or you can instrument your application and send data directly to Wavefront.
Watch this video to listen to Wavefront co-founder Clement Pang talk about getting data into Wavefront:
The Big Picture
You can use Wavefront for:
The data flow is like this:
- The metrics originate with your infrastructure or application. They could come from Telegraf, or a cloud service, or you might collect metrics with a custom metrics pipeline.
- You send the metrics to Wavefront:
- For cloud services, you use one of the Cloud integrations – you don’t have to install or set up a Wavefront proxy.
- To monitor hosts, infrastructure, or applications, set up an integration. The integration Setup tab has instructions for getting the data flowing. For many integrations, you set up Telegraf to collect the metrics and create a Wavefront proxy (or select an existing proxy). The proxy forwards metrics from many sources to the Wavefront service.
- If no built-in integration for your data source exists, you can set up one of the collector integrations (such as a Telegraf integration) or you can stream your data to the Wavefront proxy. The proxy accepts metrics in OpenTSB, Grafana, and Wavefront data format.
- Another option is direct ingestion. In that case, you send data directly to the Wavefront service. Most customers and the DevOps team at Wavefront prefer using a proxy – there are many benefits.
Step 1: Understand Your Use Case
Wavefront can help you get insight into the telemetry at all levels of your application stack. Here are the levels, and the associated use cases – for details on each use case see Step 2.
We can help you retrieve, visualize, and alert on this information both for a more traditional environment and for Kubernetes environments.
Step 2: Get the Data In
The simplest path for any use case is to use a pre-built integration. If no integration exists, you can use one of the APIs.
Get Metrics from a Cloud Provider
Cloud integrations use a different setup process than other integrations. You log in to the cloud service, and give Wavefront read access to the metrics that you’re interested in. There’s no need to install or set up a Wavefront proxy.
Wavefront supports integrations for the most popular cloud services. This doc set has customization information for example, for AWS Metrics Integration, AWS ECS Integration, AWS Lambda Functions, and Pivotal Container Service.
Set up an Infrastructure Integration
For use cases that center around infrastructure data like CPU, memory, or database metrics, you can get your data into Wavefront by following these steps:
Find the integration for your use case. See the complete list of integrations.
Use the Setup steps in the integration to get data flowing from your application to Wavefront. As part of the setup, the integration lets you install a Wavefront proxy–or choose a Wavefront proxy if you already have one.
If no built-in integration exists, set up a collector agent such as Telegraf or collectd to collect your metrics. Wavefront includes integrations for many custom collector agents. The collector agent can send your data to the Wavefront proxy.
Some collector agents, such as Telegraf, include an output plug-in for Wavefront. You add a configuration file to Telegraf that specifies which data you want to get from which host, and select the proxy to send the data to.
Many of the built-in integrations use Telegraf. Wavefront supports different ways of using Telegraf, but also supports other agents. You can mix and match.
- The Active Directory integration is an example for a Windows Telegraf input plugin.
- The Mesos integration is an example for an environment where both primary and secondary server have to have Telegraf input plugins.
- The JBoss AS integration is an example for a Linux Telegraf plugin that uses Jolokia.
Instrument your Code
For use cases that involve metrics from proprietary applications, you can instrument your code. Wavefront supports instrumentation libraries for popular programming languages. For example, you can create a Java Wavefront reporter object to use DropWizard metrics.
- Click Integrations and search for Application Integration to display the available application instrumentation integrations.
- Choose the integration that best suits your use case.
- Follow the Setup steps to register metrics and configure metric reporters. As part of the setup, the integration lets you install a Wavefront proxy or pick one if you have proxies in your environment.
Special Use Cases
If your company already has a custom metrics pipeline, follow these steps:
- Convert your data into one of the supported data formats. Wavefront accepts data in Wavefront data format, Graphite data format, and OpenTSDB data format.
- Set up a Wavefront proxy. If you have a proxy installed in your environment, consider using that - or you can install a new proxy. See Installing and Managing Proxies
- Send the metrics you’re interested in to the Wavefront proxy at port 2878. In production environments, customers use 2 proxies behind a load balancer. Otherwise, 1 proxy is usually enough.
If you have metrics recorded in log files, follow these steps:
- Use the Filebeat Log Data built-in integration.
- Customize the process as discussed in Log Data Metrics Integration
Step 3: Examine and Alert
Once data is flowing, you can use Wavefront for visualization and alerting. Wavefront dashboards allow you organize and customize the information about your environment. For example:
- Have a look at some of our intro videos
- Learn more about histogram or distributed tracing capabilities.
- Have a look at some details about Wavefront proxies
Our Customer Success team has put together a set of KBs that help you troubleshoot data ingestion issues. Here are some links: