Skip to content
Merged
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
15 changes: 15 additions & 0 deletions .generator/schemas/v2/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39514,6 +39514,8 @@ components:

**Supported pipeline types:** logs'
properties:
cache:
$ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorCache'
display_name:
$ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName'
enabled:
Expand Down Expand Up @@ -39551,6 +39553,19 @@ components:
type: object
x-pipeline-types:
- logs
ObservabilityPipelineDedupeProcessorCache:
description: Configuration for the cache used to detect duplicates.
properties:
num_events:
description: The number of events to cache for duplicate detection.
example: 5000
format: int64
maximum: 1000000000
minimum: 1
type: integer
required:
- num_events
type: object
ObservabilityPipelineDedupeProcessorMode:
description: The deduplication mode to apply to the fields.
enum:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
// Create a pipeline with dedupe processor with cache 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.ObservabilityPipeline;
import com.datadog.api.client.v2.model.ObservabilityPipelineConfig;
import com.datadog.api.client.v2.model.ObservabilityPipelineConfigDestinationItem;
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.ObservabilityPipelineDatadogAgentSource;
import com.datadog.api.client.v2.model.ObservabilityPipelineDatadogAgentSourceType;
import com.datadog.api.client.v2.model.ObservabilityPipelineDatadogLogsDestination;
import com.datadog.api.client.v2.model.ObservabilityPipelineDatadogLogsDestinationType;
import com.datadog.api.client.v2.model.ObservabilityPipelineDedupeProcessor;
import com.datadog.api.client.v2.model.ObservabilityPipelineDedupeProcessorCache;
import com.datadog.api.client.v2.model.ObservabilityPipelineDedupeProcessorMode;
import com.datadog.api.client.v2.model.ObservabilityPipelineDedupeProcessorType;
import com.datadog.api.client.v2.model.ObservabilityPipelineSpec;
import com.datadog.api.client.v2.model.ObservabilityPipelineSpecData;
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()
.destinations(
Collections.singletonList(
new ObservabilityPipelineConfigDestinationItem(
new ObservabilityPipelineDatadogLogsDestination()
.id("datadog-logs-destination")
.inputs(
Collections.singletonList(
"my-processor-group"))
.type(
ObservabilityPipelineDatadogLogsDestinationType
.DATADOG_LOGS))))
.processorGroups(
Collections.singletonList(
new ObservabilityPipelineConfigProcessorGroup()
.enabled(true)
.id("my-processor-group")
.include("service:my-service")
.inputs(
Collections.singletonList(
"datadog-agent-source"))
.processors(
Collections.singletonList(
new ObservabilityPipelineConfigProcessorItem(
new ObservabilityPipelineDedupeProcessor()
.enabled(true)
.id("dedupe-processor")
.include("service:my-service")
.type(
ObservabilityPipelineDedupeProcessorType
.DEDUPE)
.fields(
Collections.singletonList(
"message"))
.mode(
ObservabilityPipelineDedupeProcessorMode
.MATCH)
.cache(
new ObservabilityPipelineDedupeProcessorCache()
.numEvents(5000L)))))))
.sources(
Collections.singletonList(
new ObservabilityPipelineConfigSourceItem(
new ObservabilityPipelineDatadogAgentSource()
.id("datadog-agent-source")
.type(
ObservabilityPipelineDatadogAgentSourceType
.DATADOG_AGENT)))))
.name("Pipeline with Dedupe Cache"))
.type("pipelines"));

try {
ObservabilityPipeline result = apiInstance.createPipeline(body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling ObservabilityPipelinesApi#createPipeline");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
// Create a pipeline with dedupe processor without cache 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.ObservabilityPipeline;
import com.datadog.api.client.v2.model.ObservabilityPipelineConfig;
import com.datadog.api.client.v2.model.ObservabilityPipelineConfigDestinationItem;
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.ObservabilityPipelineDatadogAgentSource;
import com.datadog.api.client.v2.model.ObservabilityPipelineDatadogAgentSourceType;
import com.datadog.api.client.v2.model.ObservabilityPipelineDatadogLogsDestination;
import com.datadog.api.client.v2.model.ObservabilityPipelineDatadogLogsDestinationType;
import com.datadog.api.client.v2.model.ObservabilityPipelineDedupeProcessor;
import com.datadog.api.client.v2.model.ObservabilityPipelineDedupeProcessorMode;
import com.datadog.api.client.v2.model.ObservabilityPipelineDedupeProcessorType;
import com.datadog.api.client.v2.model.ObservabilityPipelineSpec;
import com.datadog.api.client.v2.model.ObservabilityPipelineSpecData;
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()
.destinations(
Collections.singletonList(
new ObservabilityPipelineConfigDestinationItem(
new ObservabilityPipelineDatadogLogsDestination()
.id("datadog-logs-destination")
.inputs(
Collections.singletonList(
"my-processor-group"))
.type(
ObservabilityPipelineDatadogLogsDestinationType
.DATADOG_LOGS))))
.processorGroups(
Collections.singletonList(
new ObservabilityPipelineConfigProcessorGroup()
.enabled(true)
.id("my-processor-group")
.include("service:my-service")
.inputs(
Collections.singletonList(
"datadog-agent-source"))
.processors(
Collections.singletonList(
new ObservabilityPipelineConfigProcessorItem(
new ObservabilityPipelineDedupeProcessor()
.enabled(true)
.id("dedupe-processor")
.include("service:my-service")
.type(
ObservabilityPipelineDedupeProcessorType
.DEDUPE)
.fields(
Collections.singletonList(
"message"))
.mode(
ObservabilityPipelineDedupeProcessorMode
.MATCH))))))
.sources(
Collections.singletonList(
new ObservabilityPipelineConfigSourceItem(
new ObservabilityPipelineDatadogAgentSource()
.id("datadog-agent-source")
.type(
ObservabilityPipelineDatadogAgentSourceType
.DATADOG_AGENT)))))
.name("Pipeline with Dedupe No Cache"))
.type("pipelines"));

try {
ObservabilityPipeline result = apiInstance.createPipeline(body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling ObservabilityPipelinesApi#createPipeline");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
* <p><strong>Supported pipeline types:</strong> logs
*/
@JsonPropertyOrder({
ObservabilityPipelineDedupeProcessor.JSON_PROPERTY_CACHE,
ObservabilityPipelineDedupeProcessor.JSON_PROPERTY_DISPLAY_NAME,
ObservabilityPipelineDedupeProcessor.JSON_PROPERTY_ENABLED,
ObservabilityPipelineDedupeProcessor.JSON_PROPERTY_FIELDS,
Expand All @@ -37,6 +38,9 @@
value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
public class ObservabilityPipelineDedupeProcessor {
@JsonIgnore public boolean unparsed = false;
public static final String JSON_PROPERTY_CACHE = "cache";
private ObservabilityPipelineDedupeProcessorCache cache;

public static final String JSON_PROPERTY_DISPLAY_NAME = "display_name";
private String displayName;

Expand Down Expand Up @@ -81,6 +85,29 @@ public ObservabilityPipelineDedupeProcessor(
this.unparsed |= !type.isValid();
}

public ObservabilityPipelineDedupeProcessor cache(
ObservabilityPipelineDedupeProcessorCache cache) {
this.cache = cache;
this.unparsed |= cache.unparsed;
return this;
}

/**
* Configuration for the cache used to detect duplicates.
*
* @return cache
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_CACHE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public ObservabilityPipelineDedupeProcessorCache getCache() {
return cache;
}

public void setCache(ObservabilityPipelineDedupeProcessorCache cache) {
this.cache = cache;
}

public ObservabilityPipelineDedupeProcessor displayName(String displayName) {
this.displayName = displayName;
return this;
Expand Down Expand Up @@ -292,7 +319,8 @@ public boolean equals(Object o) {
}
ObservabilityPipelineDedupeProcessor observabilityPipelineDedupeProcessor =
(ObservabilityPipelineDedupeProcessor) o;
return Objects.equals(this.displayName, observabilityPipelineDedupeProcessor.displayName)
return Objects.equals(this.cache, observabilityPipelineDedupeProcessor.cache)
&& Objects.equals(this.displayName, observabilityPipelineDedupeProcessor.displayName)
&& Objects.equals(this.enabled, observabilityPipelineDedupeProcessor.enabled)
&& Objects.equals(this.fields, observabilityPipelineDedupeProcessor.fields)
&& Objects.equals(this.id, observabilityPipelineDedupeProcessor.id)
Expand All @@ -306,13 +334,14 @@ public boolean equals(Object o) {
@Override
public int hashCode() {
return Objects.hash(
displayName, enabled, fields, id, include, mode, type, additionalProperties);
cache, displayName, enabled, fields, id, include, mode, type, additionalProperties);
}

@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class ObservabilityPipelineDedupeProcessor {\n");
sb.append(" cache: ").append(toIndentedString(cache)).append("\n");
sb.append(" displayName: ").append(toIndentedString(displayName)).append("\n");
sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
sb.append(" fields: ").append(toIndentedString(fields)).append("\n");
Expand Down
Loading
Loading