M3 for Metrics
Tags: data, monitoring, servers
Published: 2021-08-17 11:45:51

---
title: M3 for Metrics
published: true
description: Use M3 distributed time series database to collect and inspect your metrics
tags: data, monitoring, servers
cover_image: https://images.ctfassets.net/q3u27v6lpki8/3MsNrsjuDVS8o2ToJ70DdU/d70ff2614698d5912b7a8700bf625562/Monitor-your-data-with-M3-sm-preview.png?w=1567&h=844&q=50&fm=webp
---

One key use case for Aiven for M3 is for handling the monitoring data from other systems. In this post you will do just that, by setting up a PostgreSQL service and collecting metrics from it using M3. To finish the picture, Grafana will be used to inspect the data you collect.

## Start with something to monitor

To begin with, you need a PostgreSQL service. It doesn't matter what you choose here since this service isn't going to do any important work, it's merely an exhibition piece to collect metrics from (sorry, PostgreSQL!).

![Screenshot of creating a PostgreSQL service in the Aiven console](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/agd69mr6t7jqqdymni41.png)

With a PostgreSQL service running, you can start to collect metrics from it.

## Collect metrics with Aiven for M3

From the PostgreSQL service overview page, configure the metrics integration with a new M3 service:

1. Choose **Manage integrations**.

2. Locate the one named "Send service metrics to..." (not the one for receiving), and choose **Use integration**.

3. When prompted, create a new M3DB service, and configure it to your liking. To minimize latency, I usually use the same cloud region as the thing I'm monitoring.

The metrics collected from PostgreSQL are now being sent to M3.

## Visualize the data with Grafana

The next step is to add the dashboard integration so you can see the data you are collecting. From the M3 service overview page, let's set up a Grafana dashboard:

1. Choose **Manage integrations**.

2. Select **Dashboard** and then **Use integration**.

3. Choose a new Grafana service, and again, configure the service to suit your needs.

Once created, you can access Grafana by opening its Service URI in a new browser tab, and logging in with the user and password listed on the service overview page. To get you started, Aiven includes a default dashboard that shows some of the most common metrics.

To access the pre-built dashboard:

* From the left hand menu, go to the Dashboards section (4 squares) and choose **Manage**

* Click on the dashboard called "Aiven PostgreSQL - [database name] - Resources"

You now have a clear view of your PostgreSQL database health.

![Screenshot of the default Grafana PostgreSQL panel](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wdiry5hticipf5j911s6.png)

> Click the dashboard settings, and choose "Save As" to use this dashboard as a template for your own that you can make changes to. The default one gets reset to its original state at intervals.

The [list of PostgreSQL metrics exposed to Grafana](https://developer.aiven.io/docs/products/postgresql/reference/pg-metrics) gives more information about the fields that are available.

## Integrations in action

The integrations are now in place, and you can see both the data coming and the dashboard integration from the M3 service overview page.

![Aiven Console showing that this service receives metrics and has a dashboard integration](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bzmswvky0s92jkdgnn3r.png)

Following the same approach, you can add metrics integrations to all of your other Aiven services, and send data to the M3 database you created. You can also write metrics from non-Aiven services to M3 to bring all the data you need into one place, and to visualize it with Grafana.

## Further Reading

* Bring metrics from other services into M3 with our [article on using Telegraf with M3](https://help.aiven.io/en/articles/5161440-writing-metrics-to-m3-using-telegraf).
* Build better dashboards with these [tips from Grafana](https://grafana.com/docs/grafana/latest/best-practices/best-practices-for-creating-dashboards/).
* Learn more about [Aiven service integrations](https://grafana.com/docs/grafana/latest/best-practices/best-practices-for-creating-dashboards/).