How filters work
Issue filters operate on clauses — simple{ key, value } equality rules that match against OpenTelemetry attribute key/value pairs. There are four buckets, applied separately to spans and logs:
Filters are per-project and are evaluated in the ingestion worker — filtered events are dropped before any incident or issue is created, so they do not consume AI investigation capacity.
Clause structure
Each clause is an object with two fields:key is any OTel attribute name and the value is the exact string it must equal. You can add up to 20 clauses per bucket.
Configuring filters
In the UI
Go to Settings → Issue Filters in your project. You can add and remove clauses for each of the four buckets and preview results before saving.Via MCP tools
The MCP server exposes three tools for managing issue filters:update_issue_filter replaces the bucket(s) you pass. To add clauses without losing existing ones, call get_issue_filter first and include the existing clauses in your update.Via REST API
Preview before saving
Always preview filter changes before committing them. Thepreview_issue_filter MCP tool evaluates the candidate filter against ERROR events from the last 24 hours and returns a sample of events that would still become issues. This lets you confirm that your exclude clauses remove the noise you expect without accidentally silencing real incidents.
Examples
Exclude health check spans
Health checks generate a steady stream of ERROR-free spans that can still create noise. Drop them entirely:Exclude a noisy background worker
A known-flaky job that you’ve decided not to fix right now:Restrict investigations to specific services
When you only want your AI agent to investigate errors in theorders and payments services:
Combine excludes and includes
Investigate onlyorders and payments errors, but skip internal health probes in those services:
orders that matches /health is still excluded because excludes win.
For the full MCP tool reference, see MCP tools.