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.
Endpoint
An endpoint refers to a specific route or path within a service that handles requests. For example, /api/v2/messages/send. Software Catalog contains HTTP endpoints that are automatically discovered by APM. The concept of endpoints correspond to APM resources for an APM web service. APM provides performance metrics such as request count, latency, and error rate. Users can also add other unmonitored endpoints to Software Catalog through metadata Definitions.
API
In the Software Catalog, an API refers to a collection of endpoints that belong together logically. APIs offer an alternative way to group endpoints beyond APM services (the mapping between endpoints and services are not modifiable). Users can define team and add additional endpoints (regardless of whether they are monitored by APM) by providing a kind:API metadata Definition in Software Catalog.

Getting started


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