You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* flesh out set up landing page and update discover entities with correlation requirements
* refinements
* Apply suggestions from code review
Co-authored-by: Brett Blue <[email protected]>
* rearrange ordering
* remove line about telemetry correlation and add a link to renaming rules
---------
Co-authored-by: Brett Blue <[email protected]>
Copy file name to clipboardExpand all lines: content/en/internal_developer_portal/software_catalog/set_up/_index.md
+49-4Lines changed: 49 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -57,33 +57,71 @@ further_reading:
57
57
Software Catalog entities are defined through [Entity Definitions][1], which are Kubernetes-style YAML configuration files.
58
58
59
59
To populate Software Catalog, you can:
60
-
- Set up Datadog Application Performance Monitoring (APM), Universal Service Monitoring (USM), Real User Monitoring (RUM), infrastructure metrics, or logs, which will automatically feed entity data into Software Catalog.
60
+
- 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.
61
61
- Create entity definitions manually or through automation.
62
-
- Import existing entity definitions from third parties.
63
-
64
-
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.
62
+
- Import existing entity definitions from third parties.
65
63
66
64
## Automatically discover entities from Datadog
67
65
66
+
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.
67
+
68
68
{{< whatsnext desc=" " >}}
69
69
{{< nextlink href="/internal_developer_portal/software_catalog/set_up/discover_entities#automatic-discovery-with-apm-usm-and-rum" >}}Discover from APM, USM, and RUM{{< /nextlink >}}
70
70
{{< nextlink href="/internal_developer_portal/software_catalog/set_up/discover_entities#import-entities-from-infrastructure-and-logs" >}}Import from Infrastructure and Logs{{< /nextlink >}}
71
71
{{< /whatsnext >}}
72
72
73
+
### APM
74
+
75
+
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][5] for details.
76
+
77
+
### USM
78
+
79
+
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.
80
+
81
+
### RUM
82
+
83
+
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.
84
+
85
+
### Other Datadog telemetries
86
+
87
+
You can also import entities that are identified from Datadog telemetries like logs, host metrics, container metrics, network metrics, and process metrics.
88
+
89
+
When you use [**Import Entities**][10] and choose a data source, Datadog queries that source and searches for valid `DD_SERVICE` tags. Entities are marked with the `kind:service` attribute.
90
+
91
+
**Note**: You should only do this if the `DD_SERVICE` tags are well maintained and do not contain irrelevant or incorrect tag values.
92
+
73
93
## Create entities
74
94
95
+
[Entity definitions][1], defined in entity YAML files, are the canonical source of truth in Software Catalog. You can:
96
+
- Create entity definitions manually through Datadog.
97
+
- Store definitions in a version control system like Git, and set up [Source Code Integration][6] to sync definitions with IDP. Changes made to your files are reflected in Datadog within minutes.
98
+
75
99
{{< whatsnext desc=" " >}}
76
100
{{< nextlink href="/internal_developer_portal/software_catalog/set_up/create_entities#through-the-datadog-ui" >}}Create through the Datadog UI{{< /nextlink >}}
77
101
{{< nextlink href="/internal_developer_portal/software_catalog/set_up/create_entities#through-automation" >}}Create through code automation{{< /nextlink >}}
78
102
{{< /whatsnext >}}
79
103
104
+
**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`][7], [`kind:queue`][8], and other [`entity types`][9].
105
+
80
106
## Import entities
81
107
108
+
If you maintain software inventories in Backstage or ServiceNow CMDB, you can sync these inventories into Datadog's Software Catalog.
109
+
82
110
{{< whatsnext desc=" " >}}
83
111
{{< nextlink href="/internal_developer_portal/software_catalog/set_up/import_entities#import-from-backstage" >}}Import from Backstage{{< /nextlink >}}
84
112
{{< nextlink href="/internal_developer_portal/software_catalog/set_up/import_entities#import-from-servicenow" >}}Import from ServiceNow{{< /nextlink >}}
85
113
{{< /whatsnext >}}
86
114
115
+
### Backstage
116
+
117
+
You can bring your Backstage entities into Datadog's IDP in one of two ways:
118
+
1. Install [Datadog's Backstage plugin][11].
119
+
1. Import entity descriptor files from Backstage to IDP using the Datadog API, Terraform, or Datadog's GitHub integration.
120
+
121
+
### ServiceNow
122
+
123
+
Sync your ServiceNow CMDB inventories with Datadog's Software Catalog by setting up a regular query against your ServiceNow CI tables.
124
+
87
125
## Verify configuration completeness
88
126
89
127
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.
@@ -125,6 +163,13 @@ The permission is enabled by default in the **Datadog Admin Role** and **Datadog
Copy file name to clipboardExpand all lines: content/en/internal_developer_portal/software_catalog/set_up/discover_entities.md
+18-2Lines changed: 18 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -25,7 +25,7 @@ Datadog Software Catalog is pre-populated with entries detected through [APM][1]
25
25
26
26
All automatically detected entities appear in the Component Selector within Software Catalog.
27
27
28
-
APM and USM automatically detect the following entities types: `service`,`datastore`, `queue`, `external providers`, `inferred services`, and `endpoints`. APM SDKs identify dependencies of instrumented services and classify them as databases, queues, or third-party APIs—even if those dependencies are not directly instrumented. Custom instrumentation may affect how entities are auto-discovered and how the `service tag` is assigned. To learn more, see [APM Inferred Services][3].
28
+
APM and USM automatically detect the following entities types: `service`,`datastore`, `queue`, `external providers`, `inferred services`, and `endpoints`. APM SDKs identify dependencies of instrumented services and classify them as databases, queues, or third-party APIs—even if those dependencies are not directly instrumented. Custom instrumentation may affect how entities are discovered and how the `service tag` is assigned. To learn more, see [APM Inferred Services][3].
29
29
30
30
RUM is responsible for discovering `frontend apps` entities.
31
31
@@ -37,10 +37,21 @@ For information about discovering endpoints, see [Discovering Endpoints from APM
37
37
38
38
To adjust how inferred entities appear in Software Catalog, you can:
39
39
40
-
-Assign a display name to identify an entity by a custom name.
40
+
-[Create a renaming rule][18] to identify an entity by a custom name.
41
41
-[Filter out entities][3] by type (database, queue, third-party).
42
42
-[Remove service overrides][4] such as `service:my-service-http-client` from your catalog or map.
43
43
44
+
### Correlation requirements for APM
45
+
46
+
To ensure proper auto-correlation between APM and Software Catalog, follow these best practices:
47
+
48
+
- Ensure your APM SDK and Datadog Agent versions support [inferred entities][15].
49
+
- Avoid arbitrary [service overrides][16] and use [inferred entities][15] instead.
50
+
- Arbitrary service overrides can make correlation unreliable and clutter your catalog. They also make Software Catalog hard to use for those unfamiliar with the override names.
51
+
-[Rename inferred entities][14], like datastores and queues, to match your team's naming conventions.
52
+
- Use [Unified Service Tagging][17] to ensure service names, environments, and versions match across APM, infrastructure, and catalog definitions.
53
+
- In Datadog APM, a service is an identifier used to group traces and aggregate metrics, not necessarily a logical service. Define what constitutes a "service" for your organization (for example, a Kubernetes namespace, deployment, or individual pod) and apply this definition consistently across all telemetry sources.
54
+
44
55
45
56
## Import entities from Infrastructure and Logs
46
57
@@ -72,3 +83,8 @@ To remove imported services from the default **Explore** view, click **Clear Pre
0 commit comments