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
If you’re new to Datadog, you can automatically populate Software Catalog by setting up Datadog Application Performance Monitoring (APM), Universal Service Monitoring (USM), Real User Monitoring (RUM), infrastructure metrics, or logs.
Alternatively, you can add components to Software Catalog by:
Manually creating service definitions through the Datadog UI, the Datadog API, Terraform, or a GitHub integration.
Importing existing services from sources like ServiceNow or Backstage.
By default, these services are not associated with Datadog telemetry, but you can link telemetry data from Datadog or external sources manually using entity definition YAML files.
Build a Software Catalog
Create service definitions for each component you want to add to your Software Catalog.
A mistake in a service definition file could cause you to create a service with invalid data or introduce an error into the metadata of an existing service.
To prevent this, validate your service definition files in one of the following ways:
Datadog UI validation
If you create service definitions in the Datadog UI, Datadog automatically flags invalid data.
IDE extension validation
Built-in validation mechanisms prevent you from sending incorrect metadata into Software Catalog.
GitHub Integration validation
To validate your service definitions ingested by Datadog’s GitHub integration, you can view events when services are updated or when there is an error. To view validation errors in Event Management, filter by source:software_catalog and status:error. Adjust the timeframe as needed.
Import entries from Backstage
If you already have data or services registered in Backstage, you can import these services into Datadog directly.
To import Backstage definitions:
API or Terraform: Replace the YAMLs in your requests with Backstage YAMLs.
GitHub integration: Save your Backstage YAMLs in a repository with Datadog read permissions. Datadog scans for files named catalog-info.yaml located at the root folder of the repository.
During import, Datadog maps Backstage data to Datadog data:
Backstage Field
Datadog Mapping
kind:component and kind:system
Datadog recognizes these; kind:component is recognized as a service
metadata.name
dd-service
metadata.namespace
Custom tag with format namespace:${metadata.namespace}
spec.lifecycle
lifecycle
spec.owner
team
metadata.links
links
Annotation github.com/project-slug
Link with type=repo and url=https://www.github.com/${github.com/project-slug}
Annotations pagerduty.com/service-id and pagerduty.com/account
Combined and mapped to integration.pagerduty
metadata.description
description
spec.system
application
spec.dependsOn
dependsOn
Other spec values
Mapped to custom tags
The Software Catalog processes the entire YAML file as a whole. If any section of the YAML file does not have kind:component or kind:system, the entire catalog-info.yaml file is rejected. Schema version v3.0 is required to use kind:system and the dependsOn field.
Example YAML for catalog-info.yaml
catalog-info.yaml
apiVersion:backstage.io/v1alpha1kind:Componentmetadata:name:artist-webdescription:The place to be, for great artistsspec:type:servicelifecycle:productionowner:artist-relations-teamsystem:artist-engagement-portaldependsOn:- service:email-service
Import entries from ServiceNow
To populate your Datadog Software Catalog with services from your ServiceNow Configuration Management Database (CMDB), use the Service Ingestion feature in the Datadog-ServiceNow integration.
Further reading
Documentation, liens et articles supplémentaires utiles: