Skip to content

Commit 1206746

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit fc76569 of spec repo
1 parent 391c1d3 commit 1206746

13 files changed

Lines changed: 361 additions & 0 deletions

.generator/schemas/v2/openapi.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39388,6 +39388,8 @@ components:
3938839388

3938939389
**Supported pipeline types:** logs'
3939039390
properties:
39391+
cache:
39392+
$ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorCache'
3939139393
display_name:
3939239394
$ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName'
3939339395
enabled:
@@ -39425,6 +39427,18 @@ components:
3942539427
type: object
3942639428
x-pipeline-types:
3942739429
- logs
39430+
ObservabilityPipelineDedupeProcessorCache:
39431+
description: Configuration for the cache used to detect duplicates.
39432+
properties:
39433+
num_events:
39434+
description: The number of events to cache for duplicate detection.
39435+
example: 5000
39436+
format: int64
39437+
maximum: 1000000000
39438+
type: integer
39439+
required:
39440+
- num_events
39441+
type: object
3942839442
ObservabilityPipelineDedupeProcessorMode:
3942939443
description: The deduplication mode to apply to the fields.
3943039444
enum:

docs/datadog_api_client.v2.model.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17063,6 +17063,13 @@ datadog\_api\_client.v2.model.observability\_pipeline\_dedupe\_processor module
1706317063
:members:
1706417064
:show-inheritance:
1706517065

17066+
datadog\_api\_client.v2.model.observability\_pipeline\_dedupe\_processor\_cache module
17067+
--------------------------------------------------------------------------------------
17068+
17069+
.. automodule:: datadog_api_client.v2.model.observability_pipeline_dedupe_processor_cache
17070+
:members:
17071+
:show-inheritance:
17072+
1706617073
datadog\_api\_client.v2.model.observability\_pipeline\_dedupe\_processor\_mode module
1706717074
-------------------------------------------------------------------------------------
1706817075

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
"""
2+
Create a pipeline with dedupe processor with cache 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_agent_source import (
13+
ObservabilityPipelineDatadogAgentSource,
14+
)
15+
from datadog_api_client.v2.model.observability_pipeline_datadog_agent_source_type import (
16+
ObservabilityPipelineDatadogAgentSourceType,
17+
)
18+
from datadog_api_client.v2.model.observability_pipeline_datadog_logs_destination import (
19+
ObservabilityPipelineDatadogLogsDestination,
20+
)
21+
from datadog_api_client.v2.model.observability_pipeline_datadog_logs_destination_type import (
22+
ObservabilityPipelineDatadogLogsDestinationType,
23+
)
24+
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor import ObservabilityPipelineDedupeProcessor
25+
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor_cache import (
26+
ObservabilityPipelineDedupeProcessorCache,
27+
)
28+
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor_mode import (
29+
ObservabilityPipelineDedupeProcessorMode,
30+
)
31+
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor_type import (
32+
ObservabilityPipelineDedupeProcessorType,
33+
)
34+
from datadog_api_client.v2.model.observability_pipeline_spec import ObservabilityPipelineSpec
35+
from datadog_api_client.v2.model.observability_pipeline_spec_data import ObservabilityPipelineSpecData
36+
37+
body = ObservabilityPipelineSpec(
38+
data=ObservabilityPipelineSpecData(
39+
attributes=ObservabilityPipelineDataAttributes(
40+
config=ObservabilityPipelineConfig(
41+
destinations=[
42+
ObservabilityPipelineDatadogLogsDestination(
43+
id="datadog-logs-destination",
44+
inputs=[
45+
"my-processor-group",
46+
],
47+
type=ObservabilityPipelineDatadogLogsDestinationType.DATADOG_LOGS,
48+
),
49+
],
50+
processor_groups=[
51+
ObservabilityPipelineConfigProcessorGroup(
52+
enabled=True,
53+
id="my-processor-group",
54+
include="service:my-service",
55+
inputs=[
56+
"datadog-agent-source",
57+
],
58+
processors=[
59+
ObservabilityPipelineDedupeProcessor(
60+
enabled=True,
61+
id="dedupe-processor",
62+
include="service:my-service",
63+
type=ObservabilityPipelineDedupeProcessorType.DEDUPE,
64+
fields=[
65+
"message",
66+
],
67+
mode=ObservabilityPipelineDedupeProcessorMode.MATCH,
68+
cache=ObservabilityPipelineDedupeProcessorCache(
69+
num_events=5000,
70+
),
71+
),
72+
],
73+
),
74+
],
75+
sources=[
76+
ObservabilityPipelineDatadogAgentSource(
77+
id="datadog-agent-source",
78+
type=ObservabilityPipelineDatadogAgentSourceType.DATADOG_AGENT,
79+
),
80+
],
81+
),
82+
name="Pipeline with Dedupe Cache",
83+
),
84+
type="pipelines",
85+
),
86+
)
87+
88+
configuration = Configuration()
89+
with ApiClient(configuration) as api_client:
90+
api_instance = ObservabilityPipelinesApi(api_client)
91+
response = api_instance.create_pipeline(body=body)
92+
93+
print(response)
Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
"""
2+
Create a pipeline with dedupe processor without cache 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_agent_source import (
13+
ObservabilityPipelineDatadogAgentSource,
14+
)
15+
from datadog_api_client.v2.model.observability_pipeline_datadog_agent_source_type import (
16+
ObservabilityPipelineDatadogAgentSourceType,
17+
)
18+
from datadog_api_client.v2.model.observability_pipeline_datadog_logs_destination import (
19+
ObservabilityPipelineDatadogLogsDestination,
20+
)
21+
from datadog_api_client.v2.model.observability_pipeline_datadog_logs_destination_type import (
22+
ObservabilityPipelineDatadogLogsDestinationType,
23+
)
24+
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor import ObservabilityPipelineDedupeProcessor
25+
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor_mode import (
26+
ObservabilityPipelineDedupeProcessorMode,
27+
)
28+
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor_type import (
29+
ObservabilityPipelineDedupeProcessorType,
30+
)
31+
from datadog_api_client.v2.model.observability_pipeline_spec import ObservabilityPipelineSpec
32+
from datadog_api_client.v2.model.observability_pipeline_spec_data import ObservabilityPipelineSpecData
33+
34+
body = ObservabilityPipelineSpec(
35+
data=ObservabilityPipelineSpecData(
36+
attributes=ObservabilityPipelineDataAttributes(
37+
config=ObservabilityPipelineConfig(
38+
destinations=[
39+
ObservabilityPipelineDatadogLogsDestination(
40+
id="datadog-logs-destination",
41+
inputs=[
42+
"my-processor-group",
43+
],
44+
type=ObservabilityPipelineDatadogLogsDestinationType.DATADOG_LOGS,
45+
),
46+
],
47+
processor_groups=[
48+
ObservabilityPipelineConfigProcessorGroup(
49+
enabled=True,
50+
id="my-processor-group",
51+
include="service:my-service",
52+
inputs=[
53+
"datadog-agent-source",
54+
],
55+
processors=[
56+
ObservabilityPipelineDedupeProcessor(
57+
enabled=True,
58+
id="dedupe-processor",
59+
include="service:my-service",
60+
type=ObservabilityPipelineDedupeProcessorType.DEDUPE,
61+
fields=[
62+
"message",
63+
],
64+
mode=ObservabilityPipelineDedupeProcessorMode.MATCH,
65+
),
66+
],
67+
),
68+
],
69+
sources=[
70+
ObservabilityPipelineDatadogAgentSource(
71+
id="datadog-agent-source",
72+
type=ObservabilityPipelineDatadogAgentSourceType.DATADOG_AGENT,
73+
),
74+
],
75+
),
76+
name="Pipeline with Dedupe No Cache",
77+
),
78+
type="pipelines",
79+
),
80+
)
81+
82+
configuration = Configuration()
83+
with ApiClient(configuration) as api_client:
84+
api_instance = ObservabilityPipelinesApi(api_client)
85+
response = api_instance.create_pipeline(body=body)
86+
87+
print(response)

src/datadog_api_client/v2/model/observability_pipeline_config_processor_item.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ def __init__(self, **kwargs):
4848
:param mode: The processing mode.
4949
:type mode: ObservabilityPipelineDatadogTagsProcessorMode
5050
51+
:param cache: Configuration for the cache used to detect duplicates.
52+
:type cache: ObservabilityPipelineDedupeProcessorCache, optional
53+
5154
:param file: Defines a static enrichment table loaded from a CSV file.
5255
:type file: ObservabilityPipelineEnrichmentTableFile, optional
5356

src/datadog_api_client/v2/model/observability_pipeline_dedupe_processor.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414

1515

1616
if TYPE_CHECKING:
17+
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor_cache import (
18+
ObservabilityPipelineDedupeProcessorCache,
19+
)
1720
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor_mode import (
1821
ObservabilityPipelineDedupeProcessorMode,
1922
)
@@ -25,6 +28,9 @@
2528
class ObservabilityPipelineDedupeProcessor(ModelNormal):
2629
@cached_property
2730
def openapi_types(_):
31+
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor_cache import (
32+
ObservabilityPipelineDedupeProcessorCache,
33+
)
2834
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor_mode import (
2935
ObservabilityPipelineDedupeProcessorMode,
3036
)
@@ -33,6 +39,7 @@ def openapi_types(_):
3339
)
3440

3541
return {
42+
"cache": (ObservabilityPipelineDedupeProcessorCache,),
3643
"display_name": (str,),
3744
"enabled": (bool,),
3845
"fields": ([str],),
@@ -43,6 +50,7 @@ def openapi_types(_):
4350
}
4451

4552
attribute_map = {
53+
"cache": "cache",
4654
"display_name": "display_name",
4755
"enabled": "enabled",
4856
"fields": "fields",
@@ -60,6 +68,7 @@ def __init__(
6068
include: str,
6169
mode: ObservabilityPipelineDedupeProcessorMode,
6270
type: ObservabilityPipelineDedupeProcessorType,
71+
cache: Union[ObservabilityPipelineDedupeProcessorCache, UnsetType] = unset,
6372
display_name: Union[str, UnsetType] = unset,
6473
**kwargs,
6574
):
@@ -68,6 +77,9 @@ def __init__(
6877
6978
**Supported pipeline types:** logs
7079
80+
:param cache: Configuration for the cache used to detect duplicates.
81+
:type cache: ObservabilityPipelineDedupeProcessorCache, optional
82+
7183
:param display_name: The display name for a component.
7284
:type display_name: str, optional
7385
@@ -89,6 +101,8 @@ def __init__(
89101
:param type: The processor type. The value should always be ``dedupe``.
90102
:type type: ObservabilityPipelineDedupeProcessorType
91103
"""
104+
if cache is not unset:
105+
kwargs["cache"] = cache
92106
if display_name is not unset:
93107
kwargs["display_name"] = display_name
94108
super().__init__(kwargs)
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
2+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
3+
# Copyright 2019-Present Datadog, Inc.
4+
from __future__ import annotations
5+
6+
7+
from datadog_api_client.model_utils import (
8+
ModelNormal,
9+
cached_property,
10+
)
11+
12+
13+
class ObservabilityPipelineDedupeProcessorCache(ModelNormal):
14+
validations = {
15+
"num_events": {
16+
"inclusive_maximum": 1000000000,
17+
},
18+
}
19+
20+
@cached_property
21+
def openapi_types(_):
22+
return {
23+
"num_events": (int,),
24+
}
25+
26+
attribute_map = {
27+
"num_events": "num_events",
28+
}
29+
30+
def __init__(self_, num_events: int, **kwargs):
31+
"""
32+
Configuration for the cache used to detect duplicates.
33+
34+
:param num_events: The number of events to cache for duplicate detection.
35+
:type num_events: int
36+
"""
37+
super().__init__(kwargs)
38+
39+
self_.num_events = num_events

src/datadog_api_client/v2/models/__init__.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3284,6 +3284,9 @@
32843284
)
32853285
from datadog_api_client.v2.model.observability_pipeline_decoding import ObservabilityPipelineDecoding
32863286
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor import ObservabilityPipelineDedupeProcessor
3287+
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor_cache import (
3288+
ObservabilityPipelineDedupeProcessorCache,
3289+
)
32873290
from datadog_api_client.v2.model.observability_pipeline_dedupe_processor_mode import (
32883291
ObservabilityPipelineDedupeProcessorMode,
32893292
)
@@ -8435,6 +8438,7 @@
84358438
"ObservabilityPipelineDatadogTagsProcessorType",
84368439
"ObservabilityPipelineDecoding",
84378440
"ObservabilityPipelineDedupeProcessor",
8441+
"ObservabilityPipelineDedupeProcessorCache",
84388442
"ObservabilityPipelineDedupeProcessorMode",
84398443
"ObservabilityPipelineDedupeProcessorType",
84408444
"ObservabilityPipelineDiskBufferOptions",
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
2026-02-09T09:53:31.840Z
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
interactions:
2+
- request:
3+
body: '{"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":["datadog-agent-source"],"processors":[{"cache":{"num_events":5000},"enabled":true,"fields":["message"],"id":"dedupe-processor","include":"service:my-service","mode":"match","type":"dedupe"}]}],"sources":[{"id":"datadog-agent-source","type":"datadog_agent"}]},"name":"Pipeline
4+
with Dedupe Cache"},"type":"pipelines"}}'
5+
headers:
6+
accept:
7+
- application/json
8+
content-type:
9+
- application/json
10+
method: POST
11+
uri: https://api.datadoghq.com/api/v2/obs-pipelines/pipelines
12+
response:
13+
body:
14+
string: '{"data":{"id":"31a750dc-059d-11f1-a2a8-da7ad0900002","type":"pipelines","attributes":{"name":"Pipeline
15+
with Dedupe Cache","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":["datadog-agent-source"],"processors":[{"cache":{"num_events":5000},"enabled":true,"fields":["message"],"id":"dedupe-processor","include":"service:my-service","mode":"match","type":"dedupe"}]}],"processors":[{"enabled":true,"id":"my-processor-group","include":"service:my-service","inputs":["datadog-agent-source"],"processors":[{"cache":{"num_events":5000},"enabled":true,"fields":["message"],"id":"dedupe-processor","include":"service:my-service","mode":"match","type":"dedupe"}]}],"sources":[{"id":"datadog-agent-source","type":"datadog_agent"}]}}}}
16+
17+
'
18+
headers:
19+
content-type:
20+
- application/vnd.api+json
21+
status:
22+
code: 201
23+
message: Created
24+
- request:
25+
body: null
26+
headers:
27+
accept:
28+
- '*/*'
29+
method: DELETE
30+
uri: https://api.datadoghq.com/api/v2/obs-pipelines/pipelines/31a750dc-059d-11f1-a2a8-da7ad0900002
31+
response:
32+
body:
33+
string: ''
34+
headers:
35+
content-type:
36+
- application/json
37+
status:
38+
code: 204
39+
message: No Content
40+
version: 1

0 commit comments

Comments
 (0)