This page explains how to remove integration service overrides, which use integration-specific service names to represent calls to other services. For conceptual background, see Service Overrides and Inferred Services.
Prerequisites
Before you remove integration service overrides:
- You must have the
apm_service_renaming_write permission. - Your Datadog SDK version must support override removal. See SDK version requirements.
SDK version requirements
Remove service overrides
To remove service overrides in Datadog:
Navigate to Software Catalog > Manage > Manage Remapping Rules, and click Manage Overrides.
For each override you plan to remove, review the related monitors and dashboards.
These assets reference the overridden service name and stop matching after removal. Update them to use the base service name (service:<DD_SERVICE>) to preserve functionality.
Remove overrides individually or in bulk:
Select specific overrides to remove: Choose individual integration service overrides to remove. A Migration Progress bar shows your progress as you remove overrides. This action is reversible.
Remove all overrides: Select Remove All Overrides to permanently remove all integration service overrides and prevent future ones from appearing as APM usage increases. Custom service overrides are not affected.
Removing all integration service overrides is permanent and cannot be undone.
Examples: Service naming after removal
Removing service overrides changes how client spans are tagged and how downstream dependencies are identified. After overrides are removed, client spans use the calling service’s name (service:<DD_SERVICE>) instead of the integration-specific name. The called dependency is identified using peer.* attributes (for example, database or queue).
gRPC example:
| Scenario | Service name | Additional peer.* attributes |
|---|
| With service overrides | service:my-service-grpc-client or service:grpc-client | None |
| Without service overrides | service:myservice | @peer.service:otherservice |
MySQL example:
| Scenario | Service name | Additional peer.* attributes |
|---|
| With service overrides | service:my-service-mysql or service:mysql | None |
| Without service overrides | service:myservice | @peer.db.name:user-db, @peer.db.system:mysql |
Configuration-based removal
You can also remove integration service overrides by setting an environment variable in your application configuration. This approach is useful if you cannot access the Datadog UI.
- Confirm that your SDK meets the minimum version requirements.
- Set the following environment variable:
DD_TRACE_REMOVE_INTEGRATION_SERVICE_NAMES_ENABLED=true
This ensures the service attribute always uses the base service name instead of appending the integration name (for example, *-postgres, *-http-client). Custom service overrides are not affected and must be removed directly in your code.
Further reading
Additional helpful documentation, links, and articles: