Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
13 changes: 13 additions & 0 deletions .generator/schemas/v2/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -72239,6 +72239,12 @@ components:
items:
$ref: "#/components/schemas/ObservabilityPipelineConfigDestinationItem"
type: array
end_to_end_acknowledgements:
description: |-
Enables end-to-end event delivery confirmation for the pipeline. When enabled, sources confirm receipt only after all destinations have successfully received the events.
Requires Observability Pipelines Worker 2.14 or later. All configured sources must support this behavior.
example: true
type: boolean
pipeline_type:
$ref: "#/components/schemas/ObservabilityPipelineConfigPipelineType"
processor_groups:
Expand Down Expand Up @@ -177228,6 +177234,7 @@ paths:
inputs:
- datadog-agent-source
type: datadog_logs
end_to_end_acknowledgements: true
sources:
- id: datadog-agent-source
type: datadog_agent
Expand Down Expand Up @@ -177267,6 +177274,7 @@ paths:
inputs:
- my-processor-group
type: datadog_logs
end_to_end_acknowledgements: true
pipeline_type: logs
processor_groups:
- enabled: true
Expand Down Expand Up @@ -177308,6 +177316,7 @@ paths:
inputs:
- datadog-agent-source
type: datadog_logs
end_to_end_acknowledgements: true
sources:
- id: datadog-agent-source
type: datadog_agent
Expand Down Expand Up @@ -177352,6 +177361,7 @@ paths:
inputs:
- my-processor-group
type: datadog_logs
end_to_end_acknowledgements: true
pipeline_type: logs
processor_groups:
- enabled: true
Expand Down Expand Up @@ -177468,6 +177478,7 @@ paths:
inputs:
- datadog-agent-source
type: datadog_logs
end_to_end_acknowledgements: true
sources:
- id: datadog-agent-source
type: datadog_agent
Expand Down Expand Up @@ -177516,6 +177527,7 @@ paths:
inputs:
- my-processor-group
type: datadog_logs
end_to_end_acknowledgements: true
pipeline_type: logs
processor_groups:
- enabled: true
Expand Down Expand Up @@ -177558,6 +177570,7 @@ paths:
inputs:
- datadog-agent-source
type: datadog_logs
end_to_end_acknowledgements: true
sources:
- id: datadog-agent-source
type: datadog_agent
Expand Down
4 changes: 2 additions & 2 deletions features/v2/observability_pipelines.feature
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Feature: Observability Pipelines
@generated @skip @team:DataDog/observability-pipelines
Scenario: Create a new pipeline returns "Conflict" response
Given new "CreatePipeline" request
And body with value {"data": {"attributes": {"config": {"destinations": [{"id": "datadog-logs-destination", "inputs": ["my-processor-group"], "type": "datadog_logs"}], "pipeline_type": "logs", "processor_groups": [{"enabled": true, "id": "my-processor-group", "include": "service:my-service", "inputs": ["datadog-agent-source"], "processors": [{"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}, {"enabled": true, "field": "message", "id": "json-processor", "include": "*", "type": "parse_json"}]}], "processors": [], "sources": [{"id": "datadog-agent-source", "type": "datadog_agent"}]}, "name": "Main Observability Pipeline"}, "type": "pipelines"}}
And body with value {"data": {"attributes": {"config": {"destinations": [{"id": "datadog-logs-destination", "inputs": ["my-processor-group"], "type": "datadog_logs"}], "end_to_end_acknowledgements": true, "pipeline_type": "logs", "processor_groups": [{"enabled": true, "id": "my-processor-group", "include": "service:my-service", "inputs": ["datadog-agent-source"], "processors": [{"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}, {"enabled": true, "field": "message", "id": "json-processor", "include": "*", "type": "parse_json"}]}], "processors": [], "sources": [{"id": "datadog-agent-source", "type": "datadog_agent"}]}, "name": "Main Observability Pipeline"}, "type": "pipelines"}}
When the request is sent
Then the response status is 409 Conflict

Expand Down Expand Up @@ -121,7 +121,7 @@ Feature: Observability Pipelines
Scenario: Update a pipeline returns "Conflict" response
Given new "UpdatePipeline" request
And request contains "pipeline_id" parameter from "REPLACE.ME"
And body with value {"data": {"attributes": {"config": {"destinations": [{"id": "datadog-logs-destination", "inputs": ["my-processor-group"], "type": "datadog_logs"}], "pipeline_type": "logs", "processor_groups": [{"enabled": true, "id": "my-processor-group", "include": "service:my-service", "inputs": ["datadog-agent-source"], "processors": [{"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}, {"enabled": true, "field": "message", "id": "json-processor", "include": "*", "type": "parse_json"}]}], "processors": [], "sources": [{"id": "datadog-agent-source", "type": "datadog_agent"}]}, "name": "Main Observability Pipeline"}, "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "type": "pipelines"}}
And body with value {"data": {"attributes": {"config": {"destinations": [{"id": "datadog-logs-destination", "inputs": ["my-processor-group"], "type": "datadog_logs"}], "end_to_end_acknowledgements": true, "pipeline_type": "logs", "processor_groups": [{"enabled": true, "id": "my-processor-group", "include": "service:my-service", "inputs": ["datadog-agent-source"], "processors": [{"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}, {"enabled": true, "field": "message", "id": "json-processor", "include": "*", "type": "parse_json"}]}], "processors": [], "sources": [{"id": "datadog-agent-source", "type": "datadog_agent"}]}, "name": "Main Observability Pipeline"}, "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "type": "pipelines"}}
When the request is sent
Then the response status is 409 Conflict

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,10 @@ class ObservabilityPipelineConfig
# A list of destination components where processed logs are sent.
attr_reader :destinations

# Enables end-to-end event delivery confirmation for the pipeline. When enabled, sources confirm receipt only after all destinations have successfully received the events.
# Requires Observability Pipelines Worker 2.14 or later. All configured sources must support this behavior.
attr_accessor :end_to_end_acknowledgements

# The type of data being ingested. Defaults to `logs` if not specified.
attr_accessor :pipeline_type

Expand Down Expand Up @@ -52,6 +56,7 @@ class ObservabilityPipelineConfig
def self.attribute_map
{
:'destinations' => :'destinations',
:'end_to_end_acknowledgements' => :'end_to_end_acknowledgements',
:'pipeline_type' => :'pipeline_type',
:'processor_groups' => :'processor_groups',
:'processors' => :'processors',
Expand All @@ -65,6 +70,7 @@ def self.attribute_map
def self.openapi_types
{
:'destinations' => :'Array<ObservabilityPipelineConfigDestinationItem>',
:'end_to_end_acknowledgements' => :'Boolean',
:'pipeline_type' => :'ObservabilityPipelineConfigPipelineType',
:'processor_groups' => :'Array<ObservabilityPipelineConfigProcessorGroup>',
:'processors' => :'Array<ObservabilityPipelineConfigProcessorGroup>',
Expand Down Expand Up @@ -97,6 +103,10 @@ def initialize(attributes = {})
end
end

if attributes.key?(:'end_to_end_acknowledgements')
self.end_to_end_acknowledgements = attributes[:'end_to_end_acknowledgements']
end

if attributes.key?(:'pipeline_type')
self.pipeline_type = attributes[:'pipeline_type']
end
Expand Down Expand Up @@ -180,6 +190,7 @@ def ==(o)
return true if self.equal?(o)
self.class == o.class &&
destinations == o.destinations &&
end_to_end_acknowledgements == o.end_to_end_acknowledgements &&
pipeline_type == o.pipeline_type &&
processor_groups == o.processor_groups &&
processors == o.processors &&
Expand All @@ -192,7 +203,7 @@ def ==(o)
# @return [Integer] Hash code
# @!visibility private
def hash
[destinations, pipeline_type, processor_groups, processors, sources, use_legacy_search_syntax, additional_properties].hash
[destinations, end_to_end_acknowledgements, pipeline_type, processor_groups, processors, sources, use_legacy_search_syntax, additional_properties].hash
end
end
end
Loading