Set Ingestion Control for CI Visibility
CI Visibility is not available in the selected site () at this time.
Overview
Exclusion filters provide fine-grained control over your CI Visibility budget by allowing you to define one or more conditions by which to exclude specific events from being processed by Datadog.
Compatibility
Filters are available for Pipeline Visibility.
Adding an exclusion filter
Exclusion filters are not required for setting up Pipeline Visibility. By default, all data is ingested and processed.
To create filters for your organization, your user account must have the ci_ingestion_control_write
permission.
- In Datadog, navigate to CI > Settings > Ingestion Settings.
- Select Add an Exclusion Filter.
- Name the filter and define a query. After you define a query, the preview above the input fields shows ingested data that matches your query. Once your filter is created and enabled, events like the ones shown in the preview are excluded from ingestion.
Once you have added a filter, each row in this page displays:
- Filter name - the name of the filter
- Exclusion query - the query that was defined for that filter
- Toggle to enable/disable the filter - newly created filters are toggled on by default
All spans matching one or more filters are neither ingested nor processed by Datadog.
Defining queries for an exclusion filter
Filters are defined flexibly through a query editor interface. Rely on tags and attributes to create your filters.
Example exclusion filters
Below are examples of how exclusion filters can help you optimize your CI Visibility usage and billing.
Filter by git author email address
You can exclude one or more specific committers from being monitored by defining a filter with git author email address (@git.commit.author.email
). The screenshot below shows a filter in which all spans associated with commits from this particular git author email are not ingested.
Filter by git author email domain
You can also exclude many committers at once by email domain (for instance, you may want to exclude external contributors committing to monitored repositories). The screenshot below shows a filter in which all spans associated with commits from email address domains that do not match the one in the query are not ingested.
Filter by repository
You can exclude specific repositories from being monitored (for example, an internal testing repository) by defining a filter with repository name (@git.repository.name
) or ID (@git.repository.id
). The screenshot below shows a filter in which all spans associated with commits to this repository are not ingested.
Updating exclusion filters
Exclusion filters can be enabled/disabled, updated, and deleted by users with ci_ingestion_control_write
permissions. They are applied at the organization level. You can view detailed information about who modified exclusion filters by using Datadog Audit Trail.
Enabling and disabling filters
A toggle on the right hand side of each filter allows you to enable and disable the filter at any time. Newly created filters are toggled on by default.
Note: In most scenarios, filters are applied to ingested data within <1 second (p95) of being enabled. However, it is possible that an enabled filter takes up to a few minutes to take effect.
Updating filters
You can rename a filter or modify the query for an exclusion filter at any time within the Ingestion Settings page.
Deleting filters
You can delete a filter by clicking on the deletion icon.
Further reading
Additional helpful documentation, links, and articles: