Grafana
Introduction
A Grafana integration marks every experiment run in Grafana: a marker when a run starts, when its split changes, when a variation is shipped and when the run is stopped. The markers land next to the metrics the run is meant to move. You set this up in the dashboard, with no code.
The marker is an organization-wide annotation, shown on dashboards whose annotation settings include it, tagged configdirector, the config key and the environment slug.
Settings
| Setting | Value |
|---|---|
| Grafana URL | The https:// address of your Grafana, without a path. Grafana Cloud stacks look like https://acme.grafana.net |
| Service account token | A token of a service account with the annotations:create permission, created under Administration > Service accounts in Grafana |
Create the integration
- Open Integrations at the bottom of the dashboard's navigation and pick the tool, or click Add integration when you already have one.
- Give the integration a name, or keep the tool's name.
- Fill in the settings above and paste the credential you created in the tool. Credentials are stored encrypted and never shown again.
- Narrow it down with the Projects, Environments and Tags filters, or leave them empty to mark every run. A run is marked when its project, its environment and its config's tags pass every filter you set; an empty filter lets everything through. An integration filtered to Production marks Production runs only.
- Keep Enabled on. A disabled integration marks nothing, and runs that start or end while it is disabled are not marked later.
- Save. The integration's page shows the tool's settings and the address it posts to.
- Click Send test marker and confirm. A marker titled ConfigDirector test is posted to the tool right away, at the current time, and shows under Deliveries with the tool's response, so you can see where run markers will land.
The Analytics overview explains what each marker says, how deliveries are retried and what happens when the tool stops accepting markers.
What ConfigDirector posts
The integration posts to {Grafana URL}/api/annotations with the token as a Bearer token. Set an endpoint URL under Advanced only to post somewhere else.
The body sent is { "text", "time", "tags" }, with time in epoch milliseconds; no dashboardUID is sent. Grafana's documentation: Annotations API.
Google Analytics 4
Report experiment exposures to Google Analytics 4 from your application, so you can compare the variations next to the events you already track there.
Mixpanel
Mark every experiment run on your Mixpanel charts, and report experiment exposures to Mixpanel from your application so you can compare the variations next to the events you already track there.