Software Catalog

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 Access

Key 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
Software Catalog component selector

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