Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
b985a5b
Regenerate client from commit f82b21c of spec repo (#37642)
api-clients-generation-pipeline[bot] Jun 24, 2026
a66f50b
Add Flutter network headers capture documentation (#37440)
kikoveiga Jun 24, 2026
a3dc563
[SVLS-9268] Document dropped logs risk for in-container Cloud Run on …
Lewis-E Jun 24, 2026
137d732
Regenerate client from commit 27b019f of spec repo (#37646)
api-clients-generation-pipeline[bot] Jun 24, 2026
c684e21
Fix(WEB-9465): emit partners.json on preview builds for search indexi…
onceLearner Jun 24, 2026
f25117c
Update archives.md (#37720)
martin-tournier Jun 24, 2026
2ef8587
Regenerate client from commit 54c0c7c of spec repo (#37292)
api-clients-generation-pipeline[bot] Jun 24, 2026
40ec540
Clarify that unknown deployment_type means the value was not set (#37…
brett0000FF Jun 24, 2026
de647b5
[SYNTHETICS WORKER] docs: 📝 release windows-pl 1.69.0 (#37703)
GuilhermeBorges Jun 24, 2026
a2a7634
(docs-dev) Update integration-finder to match by app-id and support p…
hestonhoffman Jun 24, 2026
52bacbd
Add missing VRL functions to Custom Processor doc [WEB-7892] (#37611)
Jackie-Robson Jun 24, 2026
51c59c4
semantic tagging for ui strings (#37708)
cswatt Jun 24, 2026
bbbfd3f
[DOCS-14551] Add permissions boundary troubleshooting to AWS manual s…
buraizu Jun 24, 2026
24b5dd5
Remove migrated AAP compatibility pages and repoint links (#37654)
eliottness Jun 24, 2026
9379206
JessicaDatadog/add compatibility springboot (#37728)
JessicaDatadog Jun 24, 2026
993f28d
[DOCS-14641] Add guide page for tracking server-side events in Produc…
rtrieu Jun 24, 2026
b649429
Regenerate client from commit c505593 of spec repo (#37691)
api-clients-generation-pipeline[bot] Jun 24, 2026
f26c7ac
Clarify Go DSM context propagation and add goroutine/channel guidance…
ericfirth Jun 24, 2026
5961f3f
[DOCS-14630] Document RUM event ingestion-to-visibility latency (#37624)
rtrieu Jun 24, 2026
b5712d6
Regenerate client from commit 5b233d5 of spec repo (#37673)
api-clients-generation-pipeline[bot] Jun 24, 2026
7b0bb82
[DOCS-14020] Split SDK advanced_config partials into use-case buckets…
rtrieu Jun 24, 2026
b318316
Add Edit and Delete Status Pages updates documentation (#37725)
jbenais Jun 24, 2026
f334966
Add cross-refs to learning center course debugging log pipelines (#37…
kristen-fm Jun 24, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 69 additions & 0 deletions config/_default/menus/api.en.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10392,6 +10392,19 @@ menu:
- ListBudgets
unstable: []
order: 33
- name: Delete a budget's custom forecast
url: /api/latest/cloud-cost-management/delete-a-budgets-custom-forecast/
identifier: cloud-cost-management-delete-a-budgets-custom-forecast
parent: cloud-cost-management
generated: true
params:
versions:
- v2
operationids:
- DeleteCustomForecast
unstable:
- v2
order: 68
- name: Get budget
url: /api/latest/cloud-cost-management/get-budget/
identifier: cloud-cost-management-get-budget
Expand Down Expand Up @@ -10428,6 +10441,19 @@ menu:
- ValidateBudget
unstable: []
order: 35
- name: Create or replace a budget's custom forecast
url: /api/latest/cloud-cost-management/create-or-replace-a-budgets-custom-forecast/
identifier: cloud-cost-management-create-or-replace-a-budgets-custom-forecast
parent: cloud-cost-management
generated: true
params:
versions:
- v2
operationids:
- UpsertCustomForecast
unstable:
- v2
order: 67
- name: Validate CSV budget
url: /api/latest/cloud-cost-management/validate-csv-budget/
identifier: cloud-cost-management-validate-csv-budget
Expand Down Expand Up @@ -12549,6 +12575,49 @@ menu:
- ListGoogleChatOrganizations
unstable: []
order: 7
- name: Governance Controls
url: /api/latest/governance-controls/
identifier: governance-controls
generated: true
- name: Update a governance control
url: /api/latest/governance-controls/update-a-governance-control/
identifier: governance-controls-update-a-governance-control
parent: governance-controls
generated: true
params:
versions:
- v2
operationids:
- UpdateGovernanceControl
unstable:
- v2
order: 4
- name: Get a governance control
url: /api/latest/governance-controls/get-a-governance-control/
identifier: governance-controls-get-a-governance-control
parent: governance-controls
generated: true
params:
versions:
- v2
operationids:
- GetGovernanceControl
unstable:
- v2
order: 3
- name: List governance controls
url: /api/latest/governance-controls/list-governance-controls/
identifier: governance-controls-list-governance-controls
parent: governance-controls
generated: true
params:
versions:
- v2
operationids:
- ListGovernanceControls
unstable:
- v2
order: 2
- name: Governance Insights
url: /api/latest/governance-insights/
identifier: governance-insights
Expand Down
5 changes: 5 additions & 0 deletions config/_default/menus/main.en.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9740,6 +9740,11 @@ menu:
parent: product_analytics
identifier: pa_data_collected
weight: 6
- name: Server-Side Events
url: product_analytics/data_collected/server_side_events
parent: pa_data_collected
identifier: pa_data_collected_server_side_events
weight: 601
- name: Experiments
url: experiments/
pre: experiment-wui
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
title: Create or replace a budget's custom forecast
---
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
title: Delete a budget's custom forecast
---
3 changes: 3 additions & 0 deletions content/en/api/latest/governance-controls/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
title: Governance Controls
---
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
title: Get a governance control
---
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
title: List governance controls
---
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
title: Update a governance control
---
235 changes: 230 additions & 5 deletions content/en/api/v2/cloud-cost-management/examples.json

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions content/en/api/v2/governance-controls/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
title: Governance Controls
headless: true
---
614 changes: 614 additions & 0 deletions content/en/api/v2/governance-controls/examples.json

Large diffs are not rendered by default.

84 changes: 72 additions & 12 deletions content/en/api/v2/scim/examples.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
{
"connections": [
{
"connectionId": "11111111-1111-1111-1111-111111111111",
"connectionId": "e1e64943-c7c5-4487-aece-25aaec7d3aad",
"label": "INTEGRATION_DATADOG"
}
],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
{
"connections": [
{
"connectionId": "11111111-1111-1111-1111-111111111111",
"connectionId": "e1e64943-c7c5-4487-aece-25aaec7d3aad",
"label": "INTEGRATION_DATADOG"
}
],
Expand Down
37 changes: 36 additions & 1 deletion content/en/data_streams/setup/language/go.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ producer, err := ddkafka.NewProducer(&kafka.ConfigMap{
}, ddkafka.WithDataStreams())
```

If a service consumes data from one point and produces to another point, propagate context between the two places using the Go context structure:
If a service consumes data from one point and produces to another point, propagate context between the two places using the Go context structure. The `ctx` returned by `ExtractFromBase64Carrier` carries the upstream DSM pathway. Pass it to `SetDataStreamsCheckpointWithParams` when you produce, then inject it into the outbound message with `InjectToBase64Carrier`. Passing `context.Background()` at the produce site creates a new pathway root and breaks end-to-end visibility. This happens, for example, in a worker goroutine that has lost the consume `ctx`.

3. Extract the context from headers

Expand All @@ -105,6 +105,41 @@ If a service consumes data from one point and produces to another point, propaga
datastreams.InjectToBase64Carrier(ctx, ddsarama.NewProducerMessageCarrier(message))
```

##### Goroutines and channels

Go channels and goroutines do not carry `context.Context` automatically. If your service fans consumed messages out to worker goroutines before producing, pass the consume `ctx` to the produce site by including it in the work item you send over the channel:

```go
type job struct {
ctx context.Context
payload []byte
}

// consume side
ctx, _ = tracer.SetDataStreamsCheckpointWithParams(
datastreams.ExtractFromBase64Carrier(context.Background(), ddsarama.NewConsumerMessageCarrier(msg)),
options.CheckpointParams{PayloadSize: int64(len(msg.Value))},
"direction:in", "type:kafka", "topic:"+inTopic, "group:"+group,
)
// context.WithoutCancel preserves the pathway if the handler's ctx is canceled before the worker runs (Go 1.21+)
jobs <- job{ctx: context.WithoutCancel(ctx), payload: msg.Value}

// worker goroutine
for j := range jobs {
out := &sarama.ProducerMessage{Topic: outTopic, Value: sarama.ByteEncoder(j.payload)}
ctx, ok := tracer.SetDataStreamsCheckpointWithParams(j.ctx,
options.CheckpointParams{PayloadSize: int64(out.Value.Length())},
"direction:out", "type:kafka", "topic:"+outTopic)
if ok {
datastreams.InjectToBase64Carrier(ctx, ddsarama.NewProducerMessageCarrier(out))
}
producer.SendMessage(out)
}
```

- **Fan-out**: When one consumed message fans out to multiple produce calls, pass the same consume `ctx` to each produce checkpoint. Each call creates its own child node in the pathway.
- **Fan-in**: When many consumed messages merge into one produce call, combine the inbound contexts with `datastreams.MergeContexts(ctxs...)` before producing.

#### Other queuing technologies or protocols

You can also use manual instrumentation. For example, you can propagate context through Kinesis.
Expand Down
16 changes: 16 additions & 0 deletions content/en/incident_response/status_pages/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,22 @@ From a status page, select the dropdown next to **Publish Notice**, select **Pub

{{< img src="incident_response/status_pages/publish_status_page_backfill_degradation.png" alt="Example publish backfilled notice modal for degradations" style="width:60%;" >}}

### Edit a degradation update

After publishing a degradation update, you can edit its status and message to correct typos, fix an inaccurate status selection, or clarify the description. To edit an update, open the degradation notice on the status page, hover over the update you want to modify, and click the edit icon that appears. Make your changes in the **Edit Update** modal.

{{< img src="incident_response/status_pages/edit_degradation_update.png" alt="Edit Update modal showing Notice Status options and a Message field" style="width:60%;" >}}

Only the **Notice Status** and **Message** fields can be edited. To resolve the notice or update affected components, add a new update instead. Click **Save Changes** to apply the edits.

### Delete a degradation update

To delete an update posted by mistake, open the degradation notice on the status page, hover over the update you want to delete, and click the delete icon that appears. Confirm in the **Delete Update** modal.

{{< img src="incident_response/status_pages/delete_degradation_update.png" alt="Delete Update confirmation modal" style="width:60%;" >}}

Deleting an update replaces it on the timeline with a note indicating it was deleted by the page administrator. This action cannot be undone.

### Schedule a maintenance window

{{< img src="incident_response/status_pages/shopist_maintenance_example.png" alt="Example status page showing service components undergoing maintenance" style="width:100%;" >}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,7 @@ If you are not seeing expected AWS metrics in Datadog, work through the followin
4. **Check whether the service requires additional enablement.** Some AWS services do not emit metrics to CloudWatch by default and require extra configuration in the AWS console. See [Which AWS services require additional setup beyond the core integration?][26] for a full list.
5. **Wait for the polling interval.** Allow at least one collection cycle before investigating further. See [Expected metric delays](#expected-metric-delays) for timing by collection method.
6. **Check for Service Control Policies (SCPs).** If your account is part of an AWS Organization, SCPs applied at the organization or organizational unit (OU) level can override IAM permissions and block API calls. Verify that no SCP denies the required permissions.
7. **Check for permissions boundaries.** A [permissions boundary][30] sets the maximum permissions a role can have. If the boundary does not include an action required by the Datadog integration, AWS returns `AccessDenied` for that action even when the integration role policy appears to grant it. In the AWS IAM console, open the integration role and check the **Permissions boundary** tab to see whether a boundary is attached.

### Wrong count of aws.elb.healthy_host_count

Expand Down Expand Up @@ -221,3 +222,4 @@ By default, host-level tags remain permanently attached to AWS hosts. If you wan
[27]: /integrations/amazon_elb/
[28]: https://docs.aws.amazon.com/resourcegroupstagging/latest/APIReference/overview.html
[29]: https://docs.aws.amazon.com/resourcegroupstagging/latest/APIReference/supported-services.html
[30]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
16 changes: 16 additions & 0 deletions content/en/integrations/guide/aws-manual-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,21 @@ After configuring the role, return to the [AWS integration page][1] and save the

If your AWS account is part of an AWS Organization, [Service Control Policies][10] can block the integration even when the IAM role and trust policy are correct. See [Missing metrics][11] in the troubleshooting guide for details.

**Permissions boundaries:**

A [permissions boundary][12] sets the maximum permissions a role can have. Effective permissions are the intersection of the role's identity-based policies and the boundary policy. If the boundary does not include an action required by the Datadog integration, AWS returns `AccessDenied` for that action, and the integration tile may show `Datadog is not authorized to monitor some of your services` even when the integration role policy appears to grant the action.

To check whether a permissions boundary is attached to your integration role:

- **Console**: In the AWS IAM console, open the role, and check the **Permissions boundary** tab.
- **CLI**: Run the following command:
```
aws iam get-role --role-name <DATADOG-INTEGRATION-ROLE> \
--query 'Role.{PermissionsBoundary:PermissionsBoundary,RoleName:RoleName}'
```

To resolve the issue, coordinate with your IAM or security team to ensure the boundary policy includes the required Datadog integration actions.

<div class="alert alert-danger">If there is a <code>Datadog is not authorized to perform sts:AssumeRole</code> error, follow the troubleshooting steps recommended in the UI, or read the <a href="https://docs.datadoghq.com/integrations/guide/error-datadog-not-authorized-sts-assume-role/" target="_blank">troubleshooting guide</a>.</div>

\*{{% mainland-china-disclaimer %}}
Expand All @@ -157,6 +172,7 @@ If your AWS account is part of an AWS Organization, [Service Control Policies][1
[9]: /integrations/guide/error-datadog-not-authorized-sts-assume-role/
[10]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html
[11]: /integrations/guide/aws-integration-troubleshooting/#missing-metrics
[12]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
{{% /tab %}}
{{% tab "Access keys" %}}

Expand Down
3 changes: 3 additions & 0 deletions content/en/logs/guide/best-practices-for-log-management.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ further_reading:
- link: "https://www.youtube.com/watch?v=2OEzAE7c2c0&list=PLdh-RwQzDsaM9Sq_fi-yXuzhmE7nOlqLE&index=1&pp=iAQB"
tag: "Video"
text: "Datadog Tips & Tricks: Improve log utilization with Datadog log exclusion filters"
- link: "https://learn.datadoghq.com/courses/debugging-log-pipelines"
tag: "Learning Center"
text: "Debugging Log Pipelines"
algolia:
tags: ["log usage", "grok", "grok parser", "logs parsing", "Extracting Attributes", "Remapping attributes", "parsing"]
---
Expand Down
3 changes: 3 additions & 0 deletions content/en/logs/log_configuration/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ description: "Process, enrich, control, and manage your logs from the Logs Confi
aliases:
- /logs/processing
further_reading:
- link: "https://learn.datadoghq.com/courses/debugging-log-pipelines"
tag: "Learning Center"
text: "Debugging Log Pipelines"
- link: "/data_security/pci_compliance/"
tag: "Documentation"
text: "PCI DSS Compliance"
Expand Down
6 changes: 4 additions & 2 deletions content/en/logs/log_configuration/archives.md
Original file line number Diff line number Diff line change
Expand Up @@ -236,9 +236,11 @@ Use this optional configuration step to:

#### Define maximum scan size

Use this optional configuration step to define the maximum volume of log data (in GB) that can be scanned for Rehydration on your Log Archives.
Use this optional configuration step to define the maximum volume of log data (in GB) that can be scanned for Archive Search or Rehydration on your Log Archives.

For Archives with a maximum scan size defined, all users need to estimate the scan size before they are allowed to start a Rehydration. If the estimated scan size is greater than what is permitted for that Archive, users must reduce the time range over which they are requesting the Rehydration. Reducing the time range will reduce the scan size and allow the user to start a Rehydration.
For Archives with a maximum scan size defined, all users need to estimate the scan size before they are allowed to start an Archive Search or Rehydration. If the estimated scan size is greater than what is permitted for that Archive, users must reduce the time range of their request. Reducing the time range will reduce the scan size and allow the user to start the Archive Search or Rehydration.

**Note**: To reduce the volume of data scanned during [Archive Search][16], consider configuring [Partition Attributes](#archive-search-partition-attribute) and [Lookup Attributes](#archive-lookup-attribute-preview) on your archive. Partition attributes narrow the search scope by skipping irrelevant data segments, while lookup attributes accelerate pinpointing specific log entries.

#### Archive Partition Attribute (Preview) {#archive-search-partition-attribute}

Expand Down
6 changes: 3 additions & 3 deletions content/en/logs/log_configuration/parsing.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ further_reading:
- link: "https://learn.datadoghq.com/courses/log-pipelines"
tag: "Learning Center"
text: "Learn how to build and modify log pipelines"
- link: "https://learn.datadoghq.com/courses/debugging-log-pipelines"
tag: "Learning Center"
text: "Debugging Log Pipelines"
- link: "/logs/log_configuration/processors"
tag: "Documentation"
text: "Learn how to process your logs"
Expand All @@ -23,9 +26,6 @@ further_reading:
- link: "/logs/logging_without_limits/"
tag: "Documentation"
text: "Control the volume of logs indexed by Datadog"
- link: "https://learn.datadoghq.com/courses/debugging-log-pipelines"
tag: "Learning Center"
text: "Debugging Logs Pipelines"
algolia:
tags: ["grok", "grok parser", "logs parsing", "Extracting Attributes", "Remapping attributes", "parsing"]
---
Expand Down
9 changes: 6 additions & 3 deletions content/en/logs/log_configuration/pipelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ description: "Parse, enrich, and manage your logs with Datadog pipelines and pro
aliases:
- /logs/processing/pipelines/
further_reading:
- link: "https://learn.datadoghq.com/courses/log-pipelines"
tag: "Learning Center"
text: "Build and Manage Log Pipelines"
- link: "/logs/log_configuration/processors"
tag: "Documentation"
text: "Consult the full list of available Processors"
Expand All @@ -16,12 +19,12 @@ further_reading:
- link: "/logs/troubleshooting/"
tag: "Documentation"
text: "Logs troubleshooting"
- link: "https://learn.datadoghq.com/courses/debugging-log-pipelines"
tag: "Learning Center"
text: "Debugging Log Pipelines"
- link: "https://learn.datadoghq.com/courses/integration-pipelines"
tag: "Learning Center"
text: "Process Logs Out of the Box with Integration Pipelines"
- link: "https://learn.datadoghq.com/courses/log-pipelines"
tag: "Learning Center"
text: "Build and Manage Log Pipelines"
- link: "https://www.datadoghq.com/blog/monitor-cloudflare-zero-trust/"
tag: "Blog"
text: "Monitor Cloudflare Zero Trust with Datadog Cloud SIEM"
Expand Down
3 changes: 3 additions & 0 deletions content/en/logs/log_configuration/processors/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ further_reading:
- link: "https://learn.datadoghq.com/courses/integration-pipelines"
tag: "Learning Center"
text: "Process Logs Out of the Box with Integration Pipelines"
- link: "https://learn.datadoghq.com/courses/debugging-log-pipelines"
tag: "Learning Center"
text: "Debugging Log Pipelines"
algolia:
tags: ["logs processors", "logs parsing", "Extracting Attributes", "Remapping attributes"]
---
Expand Down
8 changes: 8 additions & 0 deletions content/en/logs/troubleshooting/_index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
---
title: Logs Troubleshooting
description: "Troubleshooting common log ingestion and processing issues in Datadog Logs, including missing logs, data access problems, and timestamp misalignment."
further_reading:
- link: "https://learn.datadoghq.com/courses/debugging-log-pipelines"
tag: "Learning Center"
text: "Debugging Log Pipelines"
---

If you experience unexpected behavior with Datadog Logs, there are a few common issues you can investigate and this guide may help resolve issues quickly. If you continue to have trouble, reach out to [Datadog support][1] for further assistance.
Expand Down Expand Up @@ -146,3 +150,7 @@ If the above troubleshooting steps do not resolve your issues with missing logs
[21]: /tracing/trace_pipeline/ingestion_controls/
[22]: /logs/log_configuration/indexes/#exclusion-filters
[23]: /tracing/other_telemetry/connect_logs_and_traces/

## Further Reading

{{< partial name="whats-next/whats-next.html" >}}
Loading
Loading