Skip to content

Commit 44f86c8

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit 7affb98 of spec repo
1 parent 6ae8795 commit 44f86c8

File tree

5 files changed

+143
-0
lines changed

5 files changed

+143
-0
lines changed

.generator/schemas/v1/openapi.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6683,6 +6683,9 @@ components:
66836683
A pipeline can contain Nested Pipelines and Processors whereas a Nested Pipeline
66846684
can only contain Processors.'
66856685
properties:
6686+
description:
6687+
description: A description of the pipeline.
6688+
type: string
66866689
filter:
66876690
$ref: '#/components/schemas/LogsFilter'
66886691
is_enabled:
@@ -6697,6 +6700,12 @@ components:
66976700
items:
66986701
$ref: '#/components/schemas/LogsProcessor'
66996702
type: array
6703+
tags:
6704+
description: A list of tags associated with the pipeline.
6705+
items:
6706+
description: A single tag using the format `key:value`.
6707+
type: string
6708+
type: array
67006709
type:
67016710
$ref: '#/components/schemas/LogsPipelineProcessorType'
67026711
required:
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
"2026-03-18T17:10:40.108Z"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
{
2+
"log": {
3+
"_recordingName": "Logs Pipelines/Create a pipeline with nested pipeline processor returns \"OK\" response",
4+
"creator": {
5+
"comment": "persister:fs",
6+
"name": "Polly.JS",
7+
"version": "6.0.5"
8+
},
9+
"entries": [
10+
{
11+
"_id": "43e467db3052c3f2f66c542643a0e3a7",
12+
"_order": 0,
13+
"cache": {},
14+
"request": {
15+
"bodySize": 392,
16+
"cookies": [],
17+
"headers": [
18+
{
19+
"_fromType": "array",
20+
"name": "accept",
21+
"value": "application/json"
22+
},
23+
{
24+
"_fromType": "array",
25+
"name": "content-type",
26+
"value": "application/json"
27+
}
28+
],
29+
"headersSize": 574,
30+
"httpVersion": "HTTP/1.1",
31+
"method": "POST",
32+
"postData": {
33+
"mimeType": "application/json",
34+
"params": [],
35+
"text": "{\"description\":\"Pipeline containing nested processor with tags and description\",\"filter\":{\"query\":\"source:python\"},\"name\":\"testPipelineWithNested\",\"processors\":[{\"description\":\"This is a nested pipeline for production logs\",\"filter\":{\"query\":\"env:production\"},\"is_enabled\":true,\"name\":\"nested_pipeline_with_metadata\",\"tags\":[\"env:prod\",\"type:nested\"],\"type\":\"pipeline\"}],\"tags\":[\"team:test\"]}"
36+
},
37+
"queryString": [],
38+
"url": "https://api.datadoghq.com/api/v1/logs/config/pipelines"
39+
},
40+
"response": {
41+
"bodySize": 497,
42+
"content": {
43+
"mimeType": "application/json",
44+
"size": 497,
45+
"text": "{\"id\":\"GyYNpCrVQtOB3KhqJSpOOA\",\"type\":\"pipeline\",\"name\":\"testPipelineWithNested\",\"is_enabled\":false,\"is_read_only\":false,\"filter\":{\"query\":\"source:python\"},\"processors\":[{\"type\":\"pipeline\",\"name\":\"nested_pipeline_with_metadata\",\"is_enabled\":true,\"filter\":{\"query\":\"env:production\"},\"processors\":[],\"tags\":[\"env:prod\",\"type:nested\"],\"description\":\"This is a nested pipeline for production logs\"}],\"tags\":[\"team:test\"],\"description\":\"Pipeline containing nested processor with tags and description\"}\n"
46+
},
47+
"cookies": [],
48+
"headers": [
49+
{
50+
"name": "content-type",
51+
"value": "application/json"
52+
}
53+
],
54+
"headersSize": 703,
55+
"httpVersion": "HTTP/1.1",
56+
"redirectURL": "",
57+
"status": 200,
58+
"statusText": "OK"
59+
},
60+
"startedDateTime": "2026-03-18T17:10:40.116Z",
61+
"time": 270
62+
},
63+
{
64+
"_id": "9d46b7bdff78f8c6c944e3cd37cf4ca4",
65+
"_order": 0,
66+
"cache": {},
67+
"request": {
68+
"bodySize": 0,
69+
"cookies": [],
70+
"headers": [
71+
{
72+
"_fromType": "array",
73+
"name": "accept",
74+
"value": "*/*"
75+
}
76+
],
77+
"headersSize": 533,
78+
"httpVersion": "HTTP/1.1",
79+
"method": "DELETE",
80+
"queryString": [],
81+
"url": "https://api.datadoghq.com/api/v1/logs/config/pipelines/GyYNpCrVQtOB3KhqJSpOOA"
82+
},
83+
"response": {
84+
"bodySize": 3,
85+
"content": {
86+
"mimeType": "application/json",
87+
"size": 3,
88+
"text": "{}\n"
89+
},
90+
"cookies": [],
91+
"headers": [
92+
{
93+
"name": "content-type",
94+
"value": "application/json"
95+
}
96+
],
97+
"headersSize": 678,
98+
"httpVersion": "HTTP/1.1",
99+
"redirectURL": "",
100+
"status": 200,
101+
"statusText": "OK"
102+
},
103+
"startedDateTime": "2026-03-18T17:10:40.392Z",
104+
"time": 482
105+
}
106+
],
107+
"pages": [],
108+
"version": "1.2"
109+
}
110+
}

features/v1/logs_pipelines.feature

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,13 @@ Feature: Logs Pipelines
9898
When the request is sent
9999
Then the response status is 200 OK
100100

101+
@team:DataDog/event-platform-experience
102+
Scenario: Create a pipeline with nested pipeline processor returns "OK" response
103+
Given new "CreateLogsPipeline" request
104+
And body with value {"filter": {"query": "source:python"}, "name": "testPipelineWithNested", "processors": [{"type": "pipeline", "is_enabled": true, "name": "nested_pipeline_with_metadata", "filter": {"query": "env:production"}, "tags": ["env:prod", "type:nested"], "description": "This is a nested pipeline for production logs"}], "tags": ["team:test"], "description": "Pipeline containing nested processor with tags and description"}
105+
When the request is sent
106+
Then the response status is 200 OK
107+
101108
@team:DataDog/event-platform-experience
102109
Scenario: Create a pipeline with schema processor
103110
Given new "CreateLogsPipeline" request

services/logs_pipelines/src/v1/models/LogsPipelineProcessor.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ import { LogsProcessor } from "./LogsProcessor";
1212
* A pipeline can contain Nested Pipelines and Processors whereas a Nested Pipeline can only contain Processors.
1313
*/
1414
export class LogsPipelineProcessor {
15+
/**
16+
* A description of the pipeline.
17+
*/
18+
"description"?: string;
1519
/**
1620
* Filter for logs.
1721
*/
@@ -28,6 +32,10 @@ export class LogsPipelineProcessor {
2832
* Ordered list of processors in this pipeline.
2933
*/
3034
"processors"?: Array<LogsProcessor>;
35+
/**
36+
* A list of tags associated with the pipeline.
37+
*/
38+
"tags"?: Array<string>;
3139
/**
3240
* Type of logs pipeline processor.
3341
*/
@@ -47,6 +55,10 @@ export class LogsPipelineProcessor {
4755
* @ignore
4856
*/
4957
static readonly attributeTypeMap: AttributeTypeMap = {
58+
description: {
59+
baseName: "description",
60+
type: "string",
61+
},
5062
filter: {
5163
baseName: "filter",
5264
type: "LogsFilter",
@@ -63,6 +75,10 @@ export class LogsPipelineProcessor {
6375
baseName: "processors",
6476
type: "Array<LogsProcessor>",
6577
},
78+
tags: {
79+
baseName: "tags",
80+
type: "Array<string>",
81+
},
6682
type: {
6783
baseName: "type",
6884
type: "LogsPipelineProcessorType",

0 commit comments

Comments
 (0)