Overview
Software Catalog provides a centralized, dynamic view of your software ecosystem, enabling teams to track ownership, monitor performance, manage dependencies, and enforce security and compliance standards—all in one place.
Built on real-time telemetry and automated metadata collection, Software Catalog extends beyond traditional software catalogs by offering integrations with observability, security, and cost management tools. It empowers engineering, SRE, security, and platform teams to maintain visibility, streamline operations, and ensure service reliability at scale.
Opt in to the preview for our Internal Developer Portal!
Request AccessKey terminology
- Service
- In APM, a service is a group of related endpoints, queries, or jobs that perform a piece of work for your application. For example, a service could be a group of endpoints, a group of DB queries, or a group of periodic jobs. Through custom instrumentation in APM, you can create an arbitrary
service
. In practice, microservice-based architecture includes multiple APM services, each measuring the performance of sub-components of the application through Trace Metrics. In the Software Catalog, you can collect non-instrumented services by declaring them through metadata. You can also import additional services through external sources like Backstage or ServiceNow. - System
- In the Software Catalog, a system is a group of components that cooperate to perform a broader function. For example, you can group multiple instrumented APM services into a system because they are operated by the same team. You can also use
system
to represent a full microservice-based architecture, and include components like APIs, datastores, queues, and other common building blocks.
Note: System in Datadog has the same meaning as in Backstage’s System Model.
- Component
- In the Software Catalog, a component represents the smallest building block of modern microservice-based architecture. A component can be an instrumented APM service, an inferred or manually declared datastore, an API, or a queue.
Getting started
Explore what Software Catalog has to offer:
Role based access and permissions
For general information, see Role Based Access Control and Role Permissions.
Read permission
The Software Catalog read permission allows a user to read Software Catalog data, which enables the following features:
- Software Catalog list
- Discover UI
- Service Definition endpoint:
/api/v2/services/definition/<service_name>
The permission is enabled by default in the Datadog Read Only Role and Datadog Standard Role.
Write permission
The Software Catalog write permission allows a user to modify Software Catalog data. The write permission is required for the following features:
- Inserting or Updating a Service Definition with the
POST /api/v2/services/definitions
endpoint - Deleting a Service Definition with the
DELETE /api/v2/services/definition/<service_name>
endpoint - Completing the onboarding process in the Discover Services UI
- Updating service metadata in the UI
The permission is enabled by default in the Datadog Admin Role and Datadog Standard Role.
Services types
Every monitored service is associated with a type. Datadog automatically determines this type based on the span.type
attribute attached to incoming spans data. The type specifies the name of the application or framework that the Datadog Agent is integrating with.
For example, if you use the official Flask Integration, the Type
is set to “Web”. If you are monitoring a custom application, the Type
appears as “Custom”.
The type of the service can be one of:
- Cache
- Custom
- DB
- Serverless function
- Web
Some integrations alias to types. For example, Postgres, MySQL, and Cassandra map to the type “DB”. Redis and Memcache integrations map to the type “Cache”.
Filtering Software Catalog entries by component
Every entry showing up in the Software Catalog is categorized as a component type:
- Services
- Datastores
- Queues
- RUM Apps
- External providers
- Endpoints
Datadog populates Software Catalog entries and determines their associated component type based on collected span attributes for APM (peer tags), but also based other collected telemetry types (USM, DSM, RUM, etc…).
Note: The component supersedes the type
filter (derived from the span.type
span attribute), as it detects more reliably and more granularly the different entity types. For instance, you can filter by datastore technology using the datastore type
facet.
Data retention
The services and resources statistics, and span summaries on the Service List and Service Page are retained for up to 30 days. For customized queries on APM trace metrics, use Metric Explorer. Learn more about data retention for APM.
Further reading
Additional helpful documentation, links, and articles: