Overview
The Bronto data source plugin lets you search Bronto log data from inside Grafana, without leaving the dashboards your team already uses. Once connected you can:- Search log events with Bronto’s SQL-style filter syntax, rendered in Grafana’s Logs panel and Explore, with a log volume histogram.
- Aggregate with functions such as
count(*)andavg(response_time_ms)and plot the result as a time series. - Group by one or more fields to break an aggregation into a multi-series graph.
- Query multiple datasets at once from a searchable picker grouped by collection.
Prerequisites
- Grafana 12.3.0 or later, self-managed. Check your version from the help menu in Grafana, or run
grafana server -von the server. - Administrator access to the Grafana host, so you can write to the plugin directory and edit
grafana.ini. For containerized deployments, access to the compose file or Helm values is enough. - Network egress from the Grafana server to Bronto. The plugin’s backend, not your browser, calls the Bronto API, so the Grafana host must reach
api.<REGION>.bronto.ioon port 443. - A Bronto API key with the Search role. Creating one requires the Admin role in Bronto. See API Keys.
Step 1: Download and verify the plugin
- Open the releases page and find the latest release.
- Download the plugin archive and its checksum. Take the
brontoio-bronto-datasource-<VERSION>.zipasset, not the “Source code” archives.
Step 2: Install the plugin
Pick the path that matches how you run Grafana.- Linux or macOS package
- Docker
- Kubernetes and Helm
Grafana loads plugins from the directory set by The second command matters: files extracted as If
plugins under [paths] in grafana.ini, or by the GF_PATHS_PLUGINS environment variable. The defaults are /var/lib/grafana/plugins on Linux and /usr/local/var/lib/grafana/plugins on macOS.The archive already contains a top-level brontoio-bronto-datasource/ folder, so extract it into the plugin directory itself:root are often unreadable by the account Grafana runs under.Alternative: install with the Grafana CLI
The Grafana CLI can fetch and unpack the archive for you:grafana is not on your PATH, call it by full path: /usr/share/grafana/bin/grafana on Linux.Step 3: Allow the unsigned plugin
Grafana refuses to load unsigned plugins unless you name them explicitly. Add the plugin ID tografana.ini:
Step 4: Restart Grafana
Step 5: Confirm the plugin loaded
- Sign in to Grafana as an administrator.
- Go to Administration > Plugins and data > Plugins and search for Bronto.
- Grafana shows the plugin with an unsigned signature status. That is expected, and the server log records it:
Step 6: Create a Bronto API key
1
Open Settings > API Keys in Bronto
2
Select Create a new API Key
3
Name the key, for example grafana-datasource
4
Select the Search role
The plugin only reads: it calls Bronto’s search, dataset and field-name endpoints. The Search role covers all three and grants no write access. The Admin role also works but is broader than the plugin needs, and the Ingestion role does not work at all.
5
Select Create Key, then copy the key
Bronto displays the key once. If you lose it, create a new one.
Step 7: Add the Bronto data source
- In Grafana, go to Connections > Data sources > Add new data source.
- Search for and select Bronto.
- Fill in the connection settings:
- Base URL - the API base URL for your region, with no trailing slash, for example
https://api.<REGION>.bronto.io. - API Key - the key from Step 6. Grafana stores it encrypted on the server and never returns it to the browser.
- Base URL - the API base URL for your region, with no trailing slash, for example
- Select Save & test. On success Grafana reports
Successfully connected to Bronto.
Provisioning the data source as code
To create the data source from a provisioning file instead of the UI, add it underprovisioning/datasources/:
Run your first query
Open Explore, select the Bronto data source, and use the query editor:
The Aggregation field decides what comes back. Leave it empty and the query returns log events, best viewed as Logs or in Explore. Set it and the query returns a time series you can plot on a graph panel.
Filters support
=, !=, >, <, >=, <=, AND, OR, NOT, LIKE and IN. Press Ctrl+Space in the Query field for field, operator and keyword suggestions drawn from the datasets you selected. For the full syntax, see Search Syntax.
A first query worth running: select one dataset, leave Query and Aggregation empty, and set the time range to the last 15 minutes. You should see recent events and a volume histogram. Then set Aggregation to count(*) to turn the same query into a time series, and add a Group By field such as service to split it.
Upgrading and removing
Because the plugin is installed by hand rather than from the Grafana catalog, it does not update itself. To upgrade, delete the existing plugin folder, extract the new release in its place, and restart Grafana. Your data sources and dashboards are unaffected, since they reference the plugin by ID.allow_loading_unsigned_plugins, and restart. Panels that queried a deleted data source keep their configuration but return an error until they are pointed elsewhere.
Current limitations
- Log data only. Bronto traces and metrics cannot be queried through the plugin.
- Not in the Grafana plugin catalog, so it cannot be installed from the Grafana UI, does not auto-update, and is not available on Grafana Cloud.
- Supported platforms: Linux (x86-64, arm64, arm), macOS (x86-64, Apple silicon) and Windows (x86-64). There is no 32-bit x86 or Windows arm64 build.
Troubleshooting
Bronto does not appear when you add a data source
The plugin did not load. Confirm the plugin ID inallow_loading_unsigned_plugins reads exactly brontoio-bronto-datasource, that the folder sits directly inside the plugin directory (/var/lib/grafana/plugins/brontoio-bronto-datasource/plugin.json should exist), and that Grafana was fully restarted rather than reloaded.
Save & test returns “Failed to connect to Bronto”
The Grafana server could not reach the Bronto API. Check that the Base URL starts withhttps://, names the right region, and has no trailing slash, then confirm the Grafana host itself can reach it:
Save & test returns “Bronto returned HTTP 401” or “403”
The key is wrong, was revoked, or lacks read access. Create a fresh key with the Search role and paste it again, checking for leading or trailing whitespace.Queries return “at least one dataset is required”
Select at least one dataset in the query editor’s Dataset field.The plugin appears but queries fail, and the log mentions gpx_bronto
The backend process could not start. Check the Grafana log (/var/log/grafana/grafana.log by default) and confirm the plugin files are owned by the account Grafana runs as, that the backend binary is executable, and that your platform is on the supported list above.
Archives expanded by tools that discard file permissions, such as PowerShell’s Expand-Archive, produce a non-executable binary. Re-extract with a tool that preserves them, or restore the permission with chmod +x.

