For those already or interested in using New Relic, detailed Aiven service metrics can easily be sent to New Relic using our Prometheus integration. We've put together a quick guide to get you started. But first, what exactly is New Relic?

What is New Relic?

New Relic is a popular cloud-based monitoring service that allows various metrics to be sent to it via special metrics collection agent software installed on servers.

It provides easy-to-use graphing functionality as well as the ability to arrange multiple graphs into service dashboards, alerting, logging functionality and so on.

Aiven + Prometheus + New Relic

Enabling New Relic metrics for Aiven services only involves three simple steps:

  1. Enable the Prometheus Integration
  2. Create a Prometheus scraper config file
  3. Deploy New Relic's Prometheus integration

1. Enable the Prometheus Integration

Follow Aiven's quick start guide to enable the integration. If you are using Kafka check the Kafka Prometheus metrics article to see all available metrics. Once you have the service integration enabled, you can view the Prometheus url on the service page.

We will use this URI along with Prometheus' basic authentication to build the scraping URL.

2. Create Prometheus Scraper Config File

First we will build the target URL using information from above:

https://<<username>>:<<password>>@<<prometheus-service-url>>/metrics

e.g. https://prom9sef:asdf123@kafka-pi-3141592-david-demo.aivencloud.com:9273/metrics

With that URL, we will follow instructions from New Relics Prometheus Integration's instruction page, using the linked example config. Note that I move many fields from the example because it provides reasonable defaults.

config.yaml

cluster_name: 'kafka-pi-3141592'

# Whether the integration should skip TLS verification or not. We skip TLC verification because Aiven's Prometheus certs are self signed. Alternatively, you could configure TLS on the target.

insecure_skip_verify: true

targets:
- description: 'Aiven david-demo/kafka-pi-3141592'
urls:
[
'https://prom9sef:q95t7ywf40u5s6ln@kafka-pi-3141592-david-demo.aivencloud.com:9273/metrics',
]

See the documentation for a full example.

3. Deploy New Relic's Prometheus integration

New Relic provides a docker container and instructions for deploying to Docker or Kubernetes. We can follow their instructions for deploying a local Docker container.

First follow these steps to get your New Relic API Key.

docker run -d --restart unless-stopped \
--name nri-prometheus \
-e LICENSE_KEY="YOUR_LICENSE_KEY" \
-v "$(pwd)/config.yaml:/config.yaml" \
newrelic/nri-prometheus:1.5

4. Verify Connectivity

Wait a few minutes, then go to the New Relic UI, and run this NRQL query to see if data has been reported:

FROM Metric SELECT count(*) WHERE clusterName = 'YOUR_CLUSTER_NAME' since 1 hour ago

FAQ

Which Aiven services support this?

All Aiven service metrics are supported with the Prometheus integration.

Does this affect my billing?

Using the Prometheus integration does not affect Aiven billing.

Do note though that New Relic will still charge for the integration's metrics based on their regular pricing. The costs incurred from New Relic are solely your responsibility as the New Relic account owner.

Is New Relic logging supported?

New Relic logging is not currently supported.

How does this differ from the Aiven InfluxDB and Grafana-based metrics integration?

The Aiven metrics service integration utilizes Aiven InfluxDB and Aiven Grafana services to provide similar graphing and dashboard functionality.

The Aiven metrics integration is built on Open Source components.

Utilizing an InfluxDB service to store the metrics data allows full access to the data stored in the database via InfluxDB queries and virtually unlimited retention for the data.

Grafana-based graphing and dashboards allow for tapping into Grafana's advanced features, such as extensive plugin support, a best-in-class graph query editor, alerting, and superb visualization.

Did this answer your question?