Setting up Service Catalog
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
Datadog Service Catalog includes all discovered services from APM, USM, and RUM by default. If you are using any of these products, your catalog is pre-populated with entries. You can add service metadata to these entries through the Datadog UI, API, or use automated pipelines through the GitHub integration or Terraform.
If your service is listed in Service Catalog and already has metadata associated with it, the original source is listed in the Metadata Source column on the Ownership view. Return to that source to make any updates you need to make.
If the service has not been assigned any service definition metadata, or if the service isn’t listed in the Service Catalog yet, you can add it:
On the Service Catalog page, click Setup & Config. The Manage Entries tabs shows you how many services are without metadata.
Click Create New Entry.
Specify which service you are adding metadata to. This can be the name of a service already listed in the Service Catalog that doesn’t have service definition metadata defined for it yet, or it can be the name of a service not sending any data.
Enter details for Team, On-call, Contacts, Documentation, Code repo, and Other links.
Switch to the Code view to see the JSON and cURL generated for the metadata you’ve entered. You can copy this code as a jumping off point for programmatically providing service definitions by API, Terraform, or GitHub, without having to learn the schema for service definitions.
If you have the Service Catalog Write permission, you can submit the metadata by clicking Save Entry, or by running the cURL command provided on the Code view.
Store and edit service definitions in GitHub
Configure the GitHub integration to directly link from where you view the service’s definition in the Service Catalog to where it’s stored and editable in GitHub.
To install the GitHub integration, navigate to the integration tile and click Link GitHub Account in the Repo Configuration tab.
Service definition YAML files
Datadog scans for the service.datadog.yaml
file at the root of each repository with read permissions. You can register multiple services in one YAML file by creating multiple YAML documents. Separate each document with three dashes (---
).
Modify service definition
When the GitHub integration is set up for your service definitions, an Edit in Github button appears in the service’s Definition tab and links you to GitHub to commit changes.
After you update the YAML files for your repositories, your changes propagate to the Service Catalog.
To prevent accidental overwriting, create and modify your service definition files with either the GitHub integration or the Service Definition API endpoints. Updating the same service using both the GitHub and the API may result in unintended overwriting.
The Service Catalog provides a service definition as a Terraform resource. Creating and managing services in the Service Catalog through automated pipelines requires Datadog Provider v3.16.0 or later.
For more information, see the Datadog Provider documentation.
As an alternative to the GitHub integration and Terraform, you can use an open-sourced GitHub Action solution named Datadog Service Catalog Metadata Provider.
This GitHub Action allows you to register your services with the Service Catalog using a GitHub Action, with full control over when this information is sent to Datadog, and implement other compliance checks unique to your organization.
Import data from Backstage
If you already have data or services registered in Backstage, you can import these services into Datadog directly.
If you use API or Terraform, replace the YAMLs in your requests.
If you use GitHub integration, directly save your Backstage YAMLs to a repo with Datadog read permission. Datadog scans for files named catalog-info.yaml
located at the root folder of a repo.
Upon import, the following occurs:
- Datadog only recognizes
kind:component
in Backstage YAMLs as services name
gets converted to DD-SERVICE
namespace
values get mapped to custom tagslifecycle
gets mapped to lifecycle
owner
gets mapped to team
metadata.links
gets mapped to links
metadata.description
gets mapped to description
- Other
specs
values get mapped to custom tags
Import data from ServiceNow
You can populate your Datadog Service Catalog with services from your ServiceNow CMDB by using the Service Ingestion feature in the Datadog-ServiceNow integration.
Discover services being reported in other Datadog telemetry data
To discover other services through existing Datadog telemetry such as infrastructure metrics, navigate to the Setup & Config tab on the top of the page and click on the Import Entries tab. You can import services from other Datadog telemetry containing the DD_SERVICE
tag.
Once you have imported some entries, they appear in the Explore tab. Entries may expire unless you add metadata such as the owner or contacts by using the API or the GitHub integration.
To remove your imported services from the default Explore view, click Clear Previously Imported Services. This removes all services that do not have metadata or do not have APM, Universal Service Monitoring (USM), or Real User Monitoring (RUM) telemetry.
Further reading
Documentation, liens et articles supplémentaires utiles: