Cette page n'est pas encore disponible en français, sa traduction est en cours.
Si vous avez des questions ou des retours sur notre projet de traduction actuel, n'hésitez pas à nous contacter.

Overview

Software Catalog entities are defined through Entity Definitions, which are Kubernetes-style YAML configuration files.

To populate Software Catalog, you can:

  • Set up Datadog Application Performance Monitoring (APM), Universal Service Monitoring (USM), Real User Monitoring (RUM), infrastructure metrics, or logs, which automatically feed entity data into Software Catalog.
  • Create entity definitions manually or through automation.
  • Import existing entity definitions from third parties.

Automatically discover entities from Datadog

By default, Software Catalog is automatically populated with entries discovered from APM, USM, and RUM. You can also manually import entries from other Datadog telemetries, like logs.


APM

When you instrument your application code with Datadog APM SDKs or OpenTelemetry, your applications emit traces and generate unsampled trace metrics. These traces and metrics power the entity discovery and dependency mapping capabilities in IDP. Your instrumentation choices (for example, your Datadog Agent version, your SDK version, and whether you use custom instrumentation or service overrides) affect the quality and accuracy of your dependency maps. See Discover from APM, USM, and RUM for details.

USM

USM detects Golden Signal metrics (for example, requests, errors, and durations) and maps out application dependencies based on eBPF. It does not require instrumentation of your application code.

RUM

RUM provides frontend user experience data, including page performance, errors, session events, and views. If you have RUM applications, they appear in Software Catalog as Frontend Apps in the component selector.

Other Datadog telemetries

You can also import entities that are identified from Datadog telemetries like logs, host metrics, container metrics, network metrics, and process metrics.

When you use Import Entities and choose a data source, Datadog queries that source and searches for valid DD_SERVICE tags. Entities are marked with the kind:service attribute.

Note: You should only do this if the DD_SERVICE tags are well maintained and do not contain irrelevant or incorrect tag values.

Create entities

Entity definitions, defined in entity YAML files, are the canonical source of truth in Software Catalog. You can:

  • Create entity definitions manually through Datadog.
  • Store definitions in a version control system like Git, and set up Source Code Integration to sync definitions with IDP. Changes made to your files are reflected in Datadog within minutes.

Note: To automatically correlate an entity to its telemetry, the name field in your definition must exactly match the primary identifier from the telemetry data. For most services, this is the service tag as defined in Datadog’s Unified Service Tagging. See examples for kind:datastore, kind:queue, and other entity types.

Import entities

If you maintain software inventories in Backstage or ServiceNow CMDB, you can sync these inventories into Datadog’s Software Catalog.


Backstage

You can bring your Backstage entities into Datadog’s IDP in one of two ways:

  1. Install Datadog’s Backstage plugin.
  2. Import entity descriptor files from Backstage to IDP using the Datadog API, Terraform, or Datadog’s GitHub integration.

ServiceNow

Sync your ServiceNow CMDB inventories with Datadog’s Software Catalog by setting up a regular query against your ServiceNow CI tables.

Verify configuration completeness

Following monitoring best practices such as tracing, logging, and code profiling helps you ensure that you have all the data you need during incident triage. Software Catalog provides automatic checks for these recommended setups.

To view the configuration completeness for an entity, click the entity in the Software Catalog, then find the Setup Guidance tab:

Software Catalog with the Setup Guidance tab highlighted.

The Setup Guidance table does not necessarily reflect billing for individual products, but rather activity for the entity you are presently examining. For example, if the service does not emit infrastructure metrics for a long time, Infrastructure Monitoring might have Not Detected specified, even if you have hosts or containers running infrastructure monitoring.

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.

Further reading