Know before your users do
When something breaks, you should hear about it before your users do — not from a support ticket. Uptrace monitors metrics, spans, and logs in one platform and routes alerts to the right channel with conditions you control.
14-day free trial · No credit card required
Two monitor types, every signal covered
Metric monitors fire on threshold crossings. Error monitors fire on specific log or exception patterns. Both cover your full stack.
- Metric monitors: threshold alerts on any infrastructure, span, or log metric
- Error monitors: trigger on exceptions, log severity, or message patterns
- ERROR and FATAL monitors created automatically — no setup needed
- Filter by any attribute: service, environment, host, operation
- Group by service, region, or custom dimension to split notifications
Cover every layer of your stack
From CPU and disk to PostgreSQL query latency and HTTP error rates — infrastructure and application in one monitor, no extra tools
- Host metrics: CPU load, memory, filesystem usage, disk I/O, network errors
- Application spans: p50/p99 latency, throughput, and error rate per operation
- Database queries: alert on slow SELECT queries exceeding a latency threshold
- Log events: alert when error count exceeds a threshold per service or region
- Any Prometheus or OpenTelemetry metric supported out of the box
Route to the right channel
Eight notification channels with conditional routing — production to PagerDuty, staging to Slack, from one monitor
- Slack, Mattermost, Teams, PagerDuty, Opsgenie, Telegram, AlertManager, webhook
- Filter channels by environment, hostname, service, or monitor name
- Prod to PagerDuty, staging to Slack — from a single monitor definition
- Alert body includes metric values, error samples, and affected attributes
- Recovery notification sent automatically when the condition resolves
Silence the noise, not the signal
Adaptive intervals grow over time — a lingering alert reminds you daily, not every 15 minutes
- Metric interval: starts at 15 min, doubles every 3 alerts, caps at 24 h
- Error interval: starts at 1 h, doubles every 2 alerts, caps at 1 week
- Recovery notification sent automatically when the alert closes
- Channel conditions filter low-priority alerts away from on-call noise
Alerts as code
Write monitors in YAML, commit to git, apply with Terraform — alerting config becomes reproducible and version-controlled
- YAML definitions for metric and error monitors
- Terraform provider manages monitors, channels, and routing
- Import YAML via the Uptrace UI or MCP server
- Copy alerting config from staging to production in one step
- Alert names support Go templates referencing any span attribute
Better together
Each signal is more powerful when correlated with the others. Uptrace stores traces, logs, and metrics in one place, no tool-switching, no data gaps.
Common questions, clear answers
What is the difference between a metric monitor and an error monitor?
Can I alert on span and trace data, not just infrastructure metrics?
How does Uptrace avoid alert fatigue?
Can I define monitors as code instead of through the UI?
Which notification channels does Uptrace support?
Ready to alert before users notice?
Deploy in minutes with Docker. Open source. Fixed pricing. Your data stays on your infrastructure.
Set up your first alert14-day free trial · No credit card required
Learn more