docs: add otlp integration guide with grafana cloud
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/10904 Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Rob Dominguez <24390149+robertjdominguez@users.noreply.github.com> GitOrigin-RevId: 1cdfd197242807f2a37cff4f3fb5653ed4b16e9c
@ -0,0 +1,112 @@
|
|||||||
|
---
|
||||||
|
sidebar_label: Grafana Cloud Integration
|
||||||
|
description: Learn how to integrate Hasura with Grafana Cloud free tier using OpenTelemetry
|
||||||
|
keywords:
|
||||||
|
- hasura
|
||||||
|
- docs
|
||||||
|
- enterprise
|
||||||
|
- opentelemetry
|
||||||
|
- open telemetry
|
||||||
|
- traces
|
||||||
|
- metrics
|
||||||
|
- logs
|
||||||
|
sidebar_position: 4
|
||||||
|
---
|
||||||
|
|
||||||
|
import Thumbnail from '@site/src/components/Thumbnail';
|
||||||
|
|
||||||
|
# Integration Guide for Grafana Cloud
|
||||||
|
|
||||||
|
## Introduction
|
||||||
|
|
||||||
|
Grafana Cloud provides a free tier that allows you to monitor and visualize your traces, metrics, and logs. By
|
||||||
|
integrating Grafana Cloud with Hasura Cloud using OpenTelemetry, you can effectively monitor your Hasura GraphQL Engine
|
||||||
|
and data connectors. This guide will walk you through the steps to integrate Grafana Cloud's OTLP endpoint with Hasura
|
||||||
|
Cloud, enabling you to visualize and analyze your telemetry data effectively.
|
||||||
|
|
||||||
|
## Step 1: Set up Grafana Cloud
|
||||||
|
|
||||||
|
Begin by logging into your existing Grafana Cloud account, or create a new one
|
||||||
|
[here](https://grafana.com/auth/sign-up/create-user).
|
||||||
|
|
||||||
|
<Thumbnail src="/img/observability/hge_otlp_integration_grafana_1.png" alt="Grafana Cloud Login" width="1400px" />
|
||||||
|
|
||||||
|
After logging in, you will be prompted to create a new stack if you don't have one.
|
||||||
|
|
||||||
|
<Thumbnail
|
||||||
|
src="/img/observability/hge_otlp_integration_grafana_2.png"
|
||||||
|
alt="Create a New Stack in Grafana Cloud"
|
||||||
|
width="1400px"
|
||||||
|
/>
|
||||||
|
|
||||||
|
Get the OTLP Endpoint Details by going to your stack's details and then locatin gthe OTLP ednpoint URL and instance ID.
|
||||||
|
Then, create an API token:
|
||||||
|
|
||||||
|
<Thumbnail src="/img/observability/hge_otlp_integration_grafana_3.png" alt="OTLP Endpoint Details" width="1400px" />
|
||||||
|
|
||||||
|
## Step 2: Configure Hasura Cloud
|
||||||
|
|
||||||
|
After logging into your Hasura Cloud account at [hasura.io](https://cloud.hasura.io/), go to your project's settings
|
||||||
|
page and navigate to the project you want to configure. Then, open the settings page and add the OTLP Endpoint as an
|
||||||
|
environment variable in Hasura Cloud.
|
||||||
|
|
||||||
|
- Key: `OTLP_ENDPOINT`
|
||||||
|
- Value: `https://your-grafana-cloud-otlp-endpoint`
|
||||||
|
|
||||||
|
<Thumbnail
|
||||||
|
src="/img/observability/hge_otlp_integration_grafana_4.png"
|
||||||
|
alt="Add Environment Variable for OTLP Endpoint"
|
||||||
|
width="1400px"
|
||||||
|
/>
|
||||||
|
|
||||||
|
Next, add the OTLP authorization header as an environment variable in Hasura Cloud.
|
||||||
|
|
||||||
|
- Key: `OTLP_AUTH_HEADER`
|
||||||
|
- Value: `Basic <base64(InstanceID:APIToken)>`
|
||||||
|
|
||||||
|
<Thumbnail
|
||||||
|
src="/img/observability/hge_otlp_integration_grafana_5.png"
|
||||||
|
alt="Add Environment Variable for OTLP Authorization Header"
|
||||||
|
width="1400px"
|
||||||
|
/>
|
||||||
|
|
||||||
|
Then, configure the OpenTelemetry Exporter in Hasura Cloud by opening the project's Console and navigating to the
|
||||||
|
`OpenTelemetry Exporter` section of the settings tab.
|
||||||
|
|
||||||
|
Set the status to enabled and enter the details for the OTLP exporter:
|
||||||
|
|
||||||
|
- **Traces Endpoint:** `{{OTLP_ENDPOINT}}/v1/traces`
|
||||||
|
- **Metrics Endpoint:** `{{OTLP_ENDPOINT}}/v1/metrics`
|
||||||
|
- **Logs Endpoint:** `{{OTLP_ENDPOINT}}/v1/logs`
|
||||||
|
- **Headers:** Add the environment variable `OTLP_AUTH_HEADER` as the value for the `Authorization` header.
|
||||||
|
|
||||||
|
<Thumbnail
|
||||||
|
src="/img/observability/hge_otlp_integration_grafana_6.png"
|
||||||
|
alt="OpenTelemetry Configuration"
|
||||||
|
width="1400px"
|
||||||
|
/>
|
||||||
|
|
||||||
|
Finally, save and apply the configuration changes by clicking "Connect".
|
||||||
|
|
||||||
|
## Step 3: Verify the integration
|
||||||
|
|
||||||
|
Perform some operations on your Hasura API to generate traces, metrics, and logs. Then log into you Grafana Cloud
|
||||||
|
instance and navigate to the explore section to view the traces, metrics, and logs.
|
||||||
|
|
||||||
|
<Thumbnail src="/img/observability/hge_otlp_integration_grafana_7.png" alt="Grafana Cloud Logs" width="1400px" />
|
||||||
|
|
||||||
|
## Step 4: Set up dashboards and alerts
|
||||||
|
|
||||||
|
There are some ready-made dashboards available for Hasura Cloud on Grafana's website
|
||||||
|
[here](https://grafana.com/grafana/dashboards/?search=hasura). Import these dashboards into your Grafana Cloud instance
|
||||||
|
for immediate visualization of your Hasura Cloud metrics.
|
||||||
|
|
||||||
|
Additionally, you can use the Grafana UI to create additional custom dashboards that visualize the traces and metrics
|
||||||
|
from Hasura.
|
||||||
|
|
||||||
|
You can also set up alerts on this data in Grafana Cloud to monitor your Hasura Cloud instance effectively.
|
||||||
|
|
||||||
|
For more detailed information, refer to the
|
||||||
|
[Hasura OpenTelemetry documentation](/observability/opentelemetry/graphql-engine.mdx). By following these steps, you can
|
||||||
|
successfully integrate Grafana Cloud's OTLP endpoint with Hasura Cloud, import ready-made dashboards, and start
|
||||||
|
monitoring your distributed traces effectively.
|
@ -30,3 +30,4 @@ OpenTelemetry's capabilities to meet your observability needs.
|
|||||||
- [Export OTEL information for Hasura GraphQL Engine](/observability/opentelemetry/graphql-engine.mdx)
|
- [Export OTEL information for Hasura GraphQL Engine](/observability/opentelemetry/graphql-engine.mdx)
|
||||||
- [Export OTEL information for data connectors](/observability/opentelemetry/data-connectors.mdx)
|
- [Export OTEL information for data connectors](/observability/opentelemetry/data-connectors.mdx)
|
||||||
- [OpenTelemetry best practices](/observability/opentelemetry/best-practices.mdx)
|
- [OpenTelemetry best practices](/observability/opentelemetry/best-practices.mdx)
|
||||||
|
- [Integration guide with Grafana Cloud](/observability/opentelemetry/grafana-cloud-otlp-guide.mdx)
|
||||||
|
BIN
docs/static/img/observability/hge_otlp_integration_grafana_1.png
vendored
Normal file
After Width: | Height: | Size: 290 KiB |
BIN
docs/static/img/observability/hge_otlp_integration_grafana_2.png
vendored
Normal file
After Width: | Height: | Size: 121 KiB |
BIN
docs/static/img/observability/hge_otlp_integration_grafana_3.png
vendored
Normal file
After Width: | Height: | Size: 209 KiB |
BIN
docs/static/img/observability/hge_otlp_integration_grafana_4.png
vendored
Normal file
After Width: | Height: | Size: 180 KiB |
BIN
docs/static/img/observability/hge_otlp_integration_grafana_5.png
vendored
Normal file
After Width: | Height: | Size: 179 KiB |
BIN
docs/static/img/observability/hge_otlp_integration_grafana_6.png
vendored
Normal file
After Width: | Height: | Size: 191 KiB |
BIN
docs/static/img/observability/hge_otlp_integration_grafana_7.png
vendored
Normal file
After Width: | Height: | Size: 1.5 MiB |