Skip to content

Commit 528c71d

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit 5f43a44 of spec repo
1 parent e431d02 commit 528c71d

8 files changed

Lines changed: 262 additions & 0 deletions

File tree

.generator/schemas/v2/openapi.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77249,6 +77249,13 @@ components:
7724977249
description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components).
7725077250
example: splunk-tcp-source
7725177251
type: string
77252+
max_connection_duration_secs:
77253+
description: Maximum duration, in seconds, that a connection can remain open before it is closed. When unset, connections can remain open indefinitely.
77254+
example: 3600
77255+
format: int64
77256+
maximum: 9007199254740991
77257+
minimum: 1
77258+
type: integer
7725277259
tls:
7725377260
$ref: "#/components/schemas/ObservabilityPipelineMtlsServerTls"
7725477261
type:
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
"""
2+
Validate an observability pipeline with Splunk TCP source max_connection_duration_secs returns "OK" response
3+
"""
4+
5+
from datadog_api_client import ApiClient, Configuration
6+
from datadog_api_client.v2.api.observability_pipelines_api import ObservabilityPipelinesApi
7+
from datadog_api_client.v2.model.observability_pipeline_config import ObservabilityPipelineConfig
8+
from datadog_api_client.v2.model.observability_pipeline_config_processor_group import (
9+
ObservabilityPipelineConfigProcessorGroup,
10+
)
11+
from datadog_api_client.v2.model.observability_pipeline_data_attributes import ObservabilityPipelineDataAttributes
12+
from datadog_api_client.v2.model.observability_pipeline_datadog_logs_destination import (
13+
ObservabilityPipelineDatadogLogsDestination,
14+
)
15+
from datadog_api_client.v2.model.observability_pipeline_datadog_logs_destination_type import (
16+
ObservabilityPipelineDatadogLogsDestinationType,
17+
)
18+
from datadog_api_client.v2.model.observability_pipeline_filter_processor import ObservabilityPipelineFilterProcessor
19+
from datadog_api_client.v2.model.observability_pipeline_filter_processor_type import (
20+
ObservabilityPipelineFilterProcessorType,
21+
)
22+
from datadog_api_client.v2.model.observability_pipeline_spec import ObservabilityPipelineSpec
23+
from datadog_api_client.v2.model.observability_pipeline_spec_data import ObservabilityPipelineSpecData
24+
from datadog_api_client.v2.model.observability_pipeline_splunk_tcp_source import ObservabilityPipelineSplunkTcpSource
25+
from datadog_api_client.v2.model.observability_pipeline_splunk_tcp_source_type import (
26+
ObservabilityPipelineSplunkTcpSourceType,
27+
)
28+
29+
body = ObservabilityPipelineSpec(
30+
data=ObservabilityPipelineSpecData(
31+
attributes=ObservabilityPipelineDataAttributes(
32+
config=ObservabilityPipelineConfig(
33+
destinations=[
34+
ObservabilityPipelineDatadogLogsDestination(
35+
id="datadog-logs-destination",
36+
inputs=[
37+
"my-processor-group",
38+
],
39+
type=ObservabilityPipelineDatadogLogsDestinationType.DATADOG_LOGS,
40+
),
41+
],
42+
processor_groups=[
43+
ObservabilityPipelineConfigProcessorGroup(
44+
enabled=True,
45+
id="my-processor-group",
46+
include="service:my-service",
47+
inputs=[
48+
"splunk-tcp-source",
49+
],
50+
processors=[
51+
ObservabilityPipelineFilterProcessor(
52+
enabled=True,
53+
id="filter-processor",
54+
include="status:error",
55+
type=ObservabilityPipelineFilterProcessorType.FILTER,
56+
),
57+
],
58+
),
59+
],
60+
sources=[
61+
ObservabilityPipelineSplunkTcpSource(
62+
id="splunk-tcp-source",
63+
type=ObservabilityPipelineSplunkTcpSourceType.SPLUNK_TCP,
64+
max_connection_duration_secs=3600,
65+
),
66+
],
67+
),
68+
name="Pipeline with Splunk TCP max connection duration",
69+
),
70+
type="pipelines",
71+
),
72+
)
73+
74+
configuration = Configuration()
75+
with ApiClient(configuration) as api_client:
76+
api_instance = ObservabilityPipelinesApi(api_client)
77+
response = api_instance.validate_pipeline(body=body)
78+
79+
print(response)

src/datadog_api_client/v2/model/observability_pipeline_config_source_item.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,9 @@ def __init__(self, **kwargs):
103103
This allows downstream components to forward the token to other Splunk HEC destinations.
104104
:type store_hec_token: bool, optional
105105
106+
:param max_connection_duration_secs: Maximum duration, in seconds, that a connection can remain open before it is closed. When unset, connections can remain open indefinitely.
107+
:type max_connection_duration_secs: int, optional
108+
106109
:param uri_key: Name of the environment variable or secret that holds the WebSocket server URI (`ws://` or `wss://`).
107110
:type uri_key: str, optional
108111

src/datadog_api_client/v2/model/observability_pipeline_splunk_tcp_source.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,13 @@
2121

2222

2323
class ObservabilityPipelineSplunkTcpSource(ModelNormal):
24+
validations = {
25+
"max_connection_duration_secs": {
26+
"inclusive_maximum": 9007199254740991,
27+
"inclusive_minimum": 1,
28+
},
29+
}
30+
2431
@cached_property
2532
def openapi_types(_):
2633
from datadog_api_client.v2.model.observability_pipeline_mtls_server_tls import (
@@ -33,13 +40,15 @@ def openapi_types(_):
3340
return {
3441
"address_key": (str,),
3542
"id": (str,),
43+
"max_connection_duration_secs": (int,),
3644
"tls": (ObservabilityPipelineMtlsServerTls,),
3745
"type": (ObservabilityPipelineSplunkTcpSourceType,),
3846
}
3947

4048
attribute_map = {
4149
"address_key": "address_key",
4250
"id": "id",
51+
"max_connection_duration_secs": "max_connection_duration_secs",
4352
"tls": "tls",
4453
"type": "type",
4554
}
@@ -49,6 +58,7 @@ def __init__(
4958
id: str,
5059
type: ObservabilityPipelineSplunkTcpSourceType,
5160
address_key: Union[str, UnsetType] = unset,
61+
max_connection_duration_secs: Union[int, UnsetType] = unset,
5262
tls: Union[ObservabilityPipelineMtlsServerTls, UnsetType] = unset,
5363
**kwargs,
5464
):
@@ -64,6 +74,9 @@ def __init__(
6474
:param id: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the ``input`` to downstream components).
6575
:type id: str
6676
77+
:param max_connection_duration_secs: Maximum duration, in seconds, that a connection can remain open before it is closed. When unset, connections can remain open indefinitely.
78+
:type max_connection_duration_secs: int, optional
79+
6780
:param tls: Configuration for enabling TLS encryption between the pipeline component and external connecting clients.
6881
:type tls: ObservabilityPipelineMtlsServerTls, optional
6982
@@ -72,6 +85,8 @@ def __init__(
7285
"""
7386
if address_key is not unset:
7487
kwargs["address_key"] = address_key
88+
if max_connection_duration_secs is not unset:
89+
kwargs["max_connection_duration_secs"] = max_connection_duration_secs
7590
if tls is not unset:
7691
kwargs["tls"] = tls
7792
super().__init__(kwargs)

tests/generated-test/test-runner-data/manifest.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7980,6 +7980,13 @@
79807980
"scenario": "Validate an observability pipeline with Splunk HEC source valid_tokens returns \"OK\" response",
79817981
"version": "v2"
79827982
},
7983+
{
7984+
"feature": "Observability Pipelines",
7985+
"feature_file": "../../v2/features/observability_pipelines.feature",
7986+
"file": "v2/observability-pipelines/validate-an-observability-pipeline-with-splunk-tcp-source-max-connection-duration-secs-returns-ok-response.json",
7987+
"scenario": "Validate an observability pipeline with Splunk TCP source max_connection_duration_secs returns \"OK\" response",
7988+
"version": "v2"
7989+
},
79837990
{
79847991
"feature": "Observability Pipelines",
79857992
"feature_file": "../../v2/features/observability_pipelines.feature",
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
{
2+
"api": "ObservabilityPipelines",
3+
"expected_status": 200,
4+
"feature": "Observability Pipelines",
5+
"id": "v2/Observability Pipelines/Validate an observability pipeline with Splunk TCP source max_connection_duration_secs returns \"OK\" response",
6+
"operation_id": "ValidatePipeline",
7+
"request": {
8+
"body": {
9+
"schema": {
10+
"format": null,
11+
"ref": "ObservabilityPipelineSpec",
12+
"type": "object"
13+
},
14+
"source": "inline",
15+
"value": {
16+
"data": {
17+
"attributes": {
18+
"config": {
19+
"destinations": [
20+
{
21+
"id": "datadog-logs-destination",
22+
"inputs": [
23+
"my-processor-group"
24+
],
25+
"type": "datadog_logs"
26+
}
27+
],
28+
"processor_groups": [
29+
{
30+
"enabled": true,
31+
"id": "my-processor-group",
32+
"include": "service:my-service",
33+
"inputs": [
34+
"splunk-tcp-source"
35+
],
36+
"processors": [
37+
{
38+
"enabled": true,
39+
"id": "filter-processor",
40+
"include": "status:error",
41+
"type": "filter"
42+
}
43+
]
44+
}
45+
],
46+
"sources": [
47+
{
48+
"id": "splunk-tcp-source",
49+
"max_connection_duration_secs": 3600,
50+
"type": "splunk_tcp"
51+
}
52+
]
53+
},
54+
"name": "Pipeline with Splunk TCP max connection duration"
55+
},
56+
"type": "pipelines"
57+
}
58+
}
59+
},
60+
"content_type": "application/json",
61+
"method": "POST",
62+
"pagination": false,
63+
"parameters": [],
64+
"path": "/api/v2/obs-pipelines/pipelines/validate"
65+
},
66+
"scenario": "Validate an observability pipeline with Splunk TCP source max_connection_duration_secs returns \"OK\" response",
67+
"schema_version": 1,
68+
"version": "v2"
69+
}

tests/generated-test/test-server-data/v2/observability-pipelines.json

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2476,6 +2476,80 @@
24762476
"scenario": "Validate an observability pipeline with Splunk HEC source valid_tokens returns \"OK\" response",
24772477
"version": "v2"
24782478
},
2479+
{
2480+
"feature": "Observability Pipelines",
2481+
"frozen_at": "2026-09-02T13:38:34.105Z",
2482+
"interactions": [
2483+
{
2484+
"request": {
2485+
"body": {
2486+
"type": "json",
2487+
"value": {
2488+
"data": {
2489+
"attributes": {
2490+
"config": {
2491+
"destinations": [
2492+
{
2493+
"id": "datadog-logs-destination",
2494+
"inputs": [
2495+
"my-processor-group"
2496+
],
2497+
"type": "datadog_logs"
2498+
}
2499+
],
2500+
"processor_groups": [
2501+
{
2502+
"enabled": true,
2503+
"id": "my-processor-group",
2504+
"include": "service:my-service",
2505+
"inputs": [
2506+
"splunk-tcp-source"
2507+
],
2508+
"processors": [
2509+
{
2510+
"enabled": true,
2511+
"id": "filter-processor",
2512+
"include": "status:error",
2513+
"type": "filter"
2514+
}
2515+
]
2516+
}
2517+
],
2518+
"sources": [
2519+
{
2520+
"id": "splunk-tcp-source",
2521+
"max_connection_duration_secs": 3600,
2522+
"type": "splunk_tcp"
2523+
}
2524+
]
2525+
},
2526+
"name": "Pipeline with Splunk TCP max connection duration"
2527+
},
2528+
"type": "pipelines"
2529+
}
2530+
}
2531+
},
2532+
"content_type": "application/json",
2533+
"method": "POST",
2534+
"path": "/api/v2/obs-pipelines/pipelines/validate",
2535+
"query": []
2536+
},
2537+
"response": {
2538+
"body": {
2539+
"encoding": "text",
2540+
"value": "{\"errors\":[]}\n"
2541+
},
2542+
"headers": {
2543+
"content-type": "application/vnd.api+json"
2544+
},
2545+
"reason": "OK",
2546+
"status": 200
2547+
}
2548+
}
2549+
],
2550+
"scenario": "Validate an observability pipeline with Splunk TCP source max_connection_duration_secs returns \"OK\" response",
2551+
"version": "v2"
2552+
},
24792553
{
24802554
"feature": "Observability Pipelines",
24812555
"frozen_at": "2026-04-08T12:44:25.060Z",

tests/v2/features/observability_pipelines.feature

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,14 @@ Feature: Observability Pipelines
271271
Then the response status is 200 OK
272272
And the response "errors" has length 0
273273

274+
@team:DataDog/observability-pipelines
275+
Scenario: Validate an observability pipeline with Splunk TCP source max_connection_duration_secs returns "OK" response
276+
Given new "ValidatePipeline" request
277+
And body with value {"data": {"attributes": {"config": {"destinations": [{"id": "datadog-logs-destination", "inputs": ["my-processor-group"], "type": "datadog_logs"}], "processor_groups": [{"enabled": true, "id": "my-processor-group", "include": "service:my-service", "inputs": ["splunk-tcp-source"], "processors": [{"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}]}], "sources": [{"id": "splunk-tcp-source", "type": "splunk_tcp", "max_connection_duration_secs": 3600}]}, "name": "Pipeline with Splunk TCP max connection duration"}, "type": "pipelines"}}
278+
When the request is sent
279+
Then the response status is 200 OK
280+
And the response "errors" has length 0
281+
274282
@team:DataDog/observability-pipelines
275283
Scenario: Validate an observability pipeline with amazon S3 source compression returns "OK" response
276284
Given new "ValidatePipeline" request

0 commit comments

Comments
 (0)