Prerequisites
- Grafana Tempo 1.4+
- Network access from the OpenSRE environment to your Tempo instance
- Auth credentials only if your deployment requires them (many run without auth behind a gateway)
Setup
Option 1: Interactive CLI
Option 2: Environment variables
Add to your.env:
| Variable | Default | Description |
|---|---|---|
TEMPO_URL | — | Required. Tempo HTTP API base URL |
TEMPO_API_KEY | (empty) | Bearer token for auth |
TEMPO_USERNAME | (empty) | Username for basic auth |
TEMPO_PASSWORD | (empty) | Password for basic auth |
TEMPO_ORG_ID | (empty) | Tenant ID sent as X-Scope-OrgID for multi-tenant deployments |
Option 3: Persistent store
Integrations are automatically persisted to~/.opensre/integrations.json:
Investigation tools
OpenSRE exposes a singlequery_tempo tool with an action parameter:
search
Searches traces by service, span name, duration, and tags using TraceQL. Returns one summary row per trace.| Parameter | Description |
|---|---|
service | Filter by resource.service.name |
span_name | Filter by span name |
min_duration_ms | Minimum trace duration |
max_duration_ms | Maximum trace duration |
tags | Key/value span attributes |
time_range_minutes | Lookback window (default 60) |
limit | Max traces to return (default 20) |
get_trace
Fetches a full trace by ID and flattens its spans.list_services
Lists all services registered in Tempo.list_span_names
Lists all span names registered in Tempo.Verify
Troubleshooting
| Symptom | Fix |
|---|---|
| Connection refused | Verify the URL and port. Default Tempo HTTP port is 3200. |
| HTTP 401 | Set TEMPO_API_KEY or TEMPO_USERNAME/TEMPO_PASSWORD if your deployment requires auth. |
| HTTP 404 on verify | Check your Tempo version — the /api/search/tags endpoint requires Tempo 1.4+. |
| No traces returned | Confirm your services are sending traces to Tempo and the time range covers the period of interest. |
| Multi-tenant 400 | Set TEMPO_ORG_ID to the correct tenant ID. |
Security best practices
- Use a read-only token or service account if your Tempo deployment supports auth.
- Store credentials in
.env, never in code. - Restrict network access to Tempo — OpenSRE only needs the HTTP API port (
3200by default).
Tracer