diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml
index 3bec741a126..9b0ed7bd48c 100644
--- a/.generator/schemas/v2/openapi.yaml
+++ b/.generator/schemas/v2/openapi.yaml
@@ -7145,6 +7145,8 @@ components:
example:
- processor-id
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
type:
@@ -39884,6 +39886,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
table:
@@ -41857,6 +41861,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
type:
@@ -41936,6 +41942,8 @@ components:
example:
- datadog-agent-source
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
key_prefix:
@@ -42068,6 +42076,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
region:
@@ -42167,6 +42177,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
type:
@@ -42342,6 +42354,7 @@ components:
example:
- datadog-agent-source
items:
+ description: The ID of a component whose output is used as input.
type: string
type: array
processors:
@@ -42442,6 +42455,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
tls:
@@ -42670,6 +42685,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
routes:
@@ -42741,6 +42758,8 @@ components:
example:
- metric-tags-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
type:
@@ -42794,6 +42813,7 @@ components:
- service
- version
items:
+ description: A Datadog tag key to include or exclude.
type: string
type: array
mode:
@@ -42872,6 +42892,7 @@ components:
- log.message
- log.error
items:
+ description: A log field path to evaluate for duplicate values.
type: string
type: array
id:
@@ -42978,6 +42999,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
type:
@@ -43244,6 +43267,7 @@ components:
description: List of column names to include from the reference table. If
not provided, all columns are included.
items:
+ description: The name of a column to include from the reference table.
type: string
type: array
key_field:
@@ -43464,6 +43488,7 @@ components:
- service
- env
items:
+ description: A log field name used to group the metric series.
type: string
type: array
include:
@@ -43567,6 +43592,8 @@ components:
example:
- parse-json-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
log_type:
@@ -43631,6 +43658,8 @@ components:
example:
- datadog-agent-source
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
key_prefix:
@@ -43724,6 +43753,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
project:
@@ -43841,6 +43872,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
password_key:
@@ -44102,6 +44135,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
key_field:
@@ -44276,6 +44311,7 @@ components:
- topic1
- topic2
items:
+ description: A Kafka topic name to subscribe to.
type: string
type: array
type:
@@ -44437,6 +44473,7 @@ components:
- service
- version
items:
+ description: A metric tag key to include or exclude based on the action.
type: string
type: array
mode:
@@ -44502,6 +44539,8 @@ components:
example:
- parse-json-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
license_key_key:
@@ -44710,6 +44749,7 @@ components:
example:
- container
items:
+ description: The name of an OCSF profile to apply to the event.
type: string
type: array
version:
@@ -44779,6 +44819,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
type:
@@ -44821,7 +44863,7 @@ components:
Protocol (OTLP) over gRPC and HTTP.
- **Supported pipeline types:** logs, metrics'
+ **Supported pipeline types:** logs'
properties:
grpc_address_key:
description: Environment variable name containing the gRPC server address
@@ -44851,7 +44893,6 @@ components:
type: object
x-pipeline-types:
- logs
- - metrics
ObservabilityPipelineOpentelemetrySourceType:
default: opentelemetry
description: The source type. The value should always be `opentelemetry`.
@@ -45161,6 +45202,7 @@ components:
Quotas are tracked independently by unique combinations of these field
values.
items:
+ description: The name of a log field used to partition quota enforcement.
type: string
type: array
too_many_buckets_action:
@@ -45267,6 +45309,7 @@ components:
- log.user.id
- log.device.id
items:
+ description: A log field path used to group events for aggregation.
type: string
type: array
id:
@@ -45366,6 +45409,7 @@ components:
- field1
- field2
items:
+ description: The name of a field to remove from the log event.
type: string
type: array
id:
@@ -45494,6 +45538,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
keepalive:
@@ -45582,6 +45628,7 @@ components:
- service
- host
items:
+ description: A log field name used to group events for independent sampling.
type: string
minItems: 1
type: array
@@ -45815,6 +45862,8 @@ components:
- card
- account
items:
+ description: A keyword string that reinforces detection when found near
+ the sensitive pattern.
type: string
type: array
proximity:
@@ -45895,6 +45944,8 @@ components:
- pii
- ccn
items:
+ description: A tag string used to classify and filter this sensitive data
+ rule.
type: string
type: array
required:
@@ -45974,6 +46025,8 @@ components:
example:
- ''
items:
+ description: A log field path to include or exclude from sensitive data
+ scanning.
type: string
type: array
required:
@@ -46006,6 +46059,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
region:
@@ -46076,6 +46131,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
mode:
@@ -46468,6 +46525,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
sourcetype:
@@ -46626,6 +46685,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
type:
@@ -46731,6 +46792,8 @@ components:
example:
- filter-processor
items:
+ description: The ID of a component whose output is used as input for this
+ destination.
type: string
type: array
keepalive:
@@ -46828,6 +46891,7 @@ components:
example:
- log.user.id
items:
+ description: A log field name used to group events for independent throttling.
type: string
type: array
id:
diff --git a/examples/v2/observability-pipelines/ValidatePipeline_884022323.java b/examples/v2/observability-pipelines/ValidatePipeline_884022323.java
deleted file mode 100644
index 75e3efa36de..00000000000
--- a/examples/v2/observability-pipelines/ValidatePipeline_884022323.java
+++ /dev/null
@@ -1,90 +0,0 @@
-// Validate a metrics pipeline with opentelemetry source returns "OK" response
-
-import com.datadog.api.client.ApiClient;
-import com.datadog.api.client.ApiException;
-import com.datadog.api.client.v2.api.ObservabilityPipelinesApi;
-import com.datadog.api.client.v2.model.ObservabilityPipelineConfig;
-import com.datadog.api.client.v2.model.ObservabilityPipelineConfigDestinationItem;
-import com.datadog.api.client.v2.model.ObservabilityPipelineConfigPipelineType;
-import com.datadog.api.client.v2.model.ObservabilityPipelineConfigProcessorGroup;
-import com.datadog.api.client.v2.model.ObservabilityPipelineConfigProcessorItem;
-import com.datadog.api.client.v2.model.ObservabilityPipelineConfigSourceItem;
-import com.datadog.api.client.v2.model.ObservabilityPipelineDataAttributes;
-import com.datadog.api.client.v2.model.ObservabilityPipelineDatadogMetricsDestination;
-import com.datadog.api.client.v2.model.ObservabilityPipelineDatadogMetricsDestinationType;
-import com.datadog.api.client.v2.model.ObservabilityPipelineFilterProcessor;
-import com.datadog.api.client.v2.model.ObservabilityPipelineFilterProcessorType;
-import com.datadog.api.client.v2.model.ObservabilityPipelineOpentelemetrySource;
-import com.datadog.api.client.v2.model.ObservabilityPipelineOpentelemetrySourceType;
-import com.datadog.api.client.v2.model.ObservabilityPipelineSpec;
-import com.datadog.api.client.v2.model.ObservabilityPipelineSpecData;
-import com.datadog.api.client.v2.model.ValidationResponse;
-import java.util.Collections;
-
-public class Example {
- public static void main(String[] args) {
- ApiClient defaultClient = ApiClient.getDefaultApiClient();
- ObservabilityPipelinesApi apiInstance = new ObservabilityPipelinesApi(defaultClient);
-
- ObservabilityPipelineSpec body =
- new ObservabilityPipelineSpec()
- .data(
- new ObservabilityPipelineSpecData()
- .attributes(
- new ObservabilityPipelineDataAttributes()
- .config(
- new ObservabilityPipelineConfig()
- .pipelineType(ObservabilityPipelineConfigPipelineType.METRICS)
- .destinations(
- Collections.singletonList(
- new ObservabilityPipelineConfigDestinationItem(
- new ObservabilityPipelineDatadogMetricsDestination()
- .id("datadog-metrics-destination")
- .inputs(
- Collections.singletonList(
- "my-processor-group"))
- .type(
- ObservabilityPipelineDatadogMetricsDestinationType
- .DATADOG_METRICS))))
- .processorGroups(
- Collections.singletonList(
- new ObservabilityPipelineConfigProcessorGroup()
- .enabled(true)
- .id("my-processor-group")
- .include("*")
- .inputs(
- Collections.singletonList(
- "opentelemetry-source"))
- .processors(
- Collections.singletonList(
- new ObservabilityPipelineConfigProcessorItem(
- new ObservabilityPipelineFilterProcessor()
- .enabled(true)
- .id("filter-processor")
- .include("env:production")
- .type(
- ObservabilityPipelineFilterProcessorType
- .FILTER))))))
- .sources(
- Collections.singletonList(
- new ObservabilityPipelineConfigSourceItem(
- new ObservabilityPipelineOpentelemetrySource()
- .id("opentelemetry-source")
- .type(
- ObservabilityPipelineOpentelemetrySourceType
- .OPENTELEMETRY)))))
- .name("Metrics OTel Pipeline"))
- .type("pipelines"));
-
- try {
- ValidationResponse result = apiInstance.validatePipeline(body);
- System.out.println(result);
- } catch (ApiException e) {
- System.err.println("Exception when calling ObservabilityPipelinesApi#validatePipeline");
- System.err.println("Status code: " + e.getCode());
- System.err.println("Reason: " + e.getResponseBody());
- System.err.println("Response headers: " + e.getResponseHeaders());
- e.printStackTrace();
- }
- }
-}
diff --git a/src/main/java/com/datadog/api/client/v2/model/ObservabilityPipelineOpentelemetrySource.java b/src/main/java/com/datadog/api/client/v2/model/ObservabilityPipelineOpentelemetrySource.java
index 221238d464d..2964bc439bb 100644
--- a/src/main/java/com/datadog/api/client/v2/model/ObservabilityPipelineOpentelemetrySource.java
+++ b/src/main/java/com/datadog/api/client/v2/model/ObservabilityPipelineOpentelemetrySource.java
@@ -21,7 +21,7 @@
* The opentelemetry source receives telemetry data using the OpenTelemetry Protocol
* (OTLP) over gRPC and HTTP.
*
- *
Supported pipeline types: logs, metrics + *
Supported pipeline types: logs */ @JsonPropertyOrder({ ObservabilityPipelineOpentelemetrySource.JSON_PROPERTY_GRPC_ADDRESS_KEY, diff --git a/src/test/resources/cassettes/features/v2/Validate_a_metrics_pipeline_with_opentelemetry_source_returns_OK_response.freeze b/src/test/resources/cassettes/features/v2/Validate_a_metrics_pipeline_with_opentelemetry_source_returns_OK_response.freeze deleted file mode 100644 index 9218d08a363..00000000000 --- a/src/test/resources/cassettes/features/v2/Validate_a_metrics_pipeline_with_opentelemetry_source_returns_OK_response.freeze +++ /dev/null @@ -1 +0,0 @@ -2026-03-10T16:11:47.487Z \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Validate_a_metrics_pipeline_with_opentelemetry_source_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Validate_a_metrics_pipeline_with_opentelemetry_source_returns_OK_response.json deleted file mode 100644 index fd26d952407..00000000000 --- a/src/test/resources/cassettes/features/v2/Validate_a_metrics_pipeline_with_opentelemetry_source_returns_OK_response.json +++ /dev/null @@ -1,32 +0,0 @@ -[ - { - "httpRequest": { - "body": { - "type": "JSON", - "json": "{\"data\":{\"attributes\":{\"config\":{\"destinations\":[{\"id\":\"datadog-metrics-destination\",\"inputs\":[\"my-processor-group\"],\"type\":\"datadog_metrics\"}],\"pipeline_type\":\"metrics\",\"processor_groups\":[{\"enabled\":true,\"id\":\"my-processor-group\",\"include\":\"*\",\"inputs\":[\"opentelemetry-source\"],\"processors\":[{\"enabled\":true,\"id\":\"filter-processor\",\"include\":\"env:production\",\"type\":\"filter\"}]}],\"sources\":[{\"id\":\"opentelemetry-source\",\"type\":\"opentelemetry\"}]},\"name\":\"Metrics OTel Pipeline\"},\"type\":\"pipelines\"}}" - }, - "headers": {}, - "method": "POST", - "path": "/api/v2/obs-pipelines/pipelines/validate", - "keepAlive": false, - "secure": true - }, - "httpResponse": { - "body": "{\"errors\":[]}\n", - "headers": { - "Content-Type": [ - "application/vnd.api+json" - ] - }, - "statusCode": 200, - "reasonPhrase": "OK" - }, - "times": { - "remainingTimes": 1 - }, - "timeToLive": { - "unlimited": true - }, - "id": "fd62c635-471a-b911-f21d-26a9cd87afdc" - } -] \ No newline at end of file diff --git a/src/test/resources/com/datadog/api/client/v2/api/observability_pipelines.feature b/src/test/resources/com/datadog/api/client/v2/api/observability_pipelines.feature index e272303955a..bf90c06c139 100644 --- a/src/test/resources/com/datadog/api/client/v2/api/observability_pipelines.feature +++ b/src/test/resources/com/datadog/api/client/v2/api/observability_pipelines.feature @@ -149,14 +149,6 @@ Feature: Observability Pipelines And the response "data.attributes.config.destinations" has length 1 And the response "data.attributes.config.destinations[0].id" is equal to "updated-datadog-logs-destination-id" - @team:DataDog/observability-pipelines - Scenario: Validate a metrics pipeline with opentelemetry source returns "OK" response - Given new "ValidatePipeline" request - And body with value {"data": {"attributes": {"config": {"pipeline_type": "metrics", "destinations": [{"id": "datadog-metrics-destination", "inputs": ["my-processor-group"], "type": "datadog_metrics"}], "processor_groups": [{"enabled": true, "id": "my-processor-group", "include": "*", "inputs": ["opentelemetry-source"], "processors": [{"enabled": true, "id": "filter-processor", "include": "env:production", "type": "filter"}]}], "sources": [{"id": "opentelemetry-source", "type": "opentelemetry"}]}, "name": "Metrics OTel Pipeline"}, "type": "pipelines"}} - When the request is sent - Then the response status is 200 OK - And the response "errors" has length 0 - @team:DataDog/observability-pipelines Scenario: Validate an observability pipeline returns "Bad Request" response Given new "ValidatePipeline" request