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
61 changes: 53 additions & 8 deletions .generator/schemas/v2/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43029,6 +43029,7 @@ components:
ObservabilityPipelineConfigDestinationItem:
description: "A destination for the pipeline."
oneOf:
- $ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestination"
- $ref: "#/components/schemas/ObservabilityPipelineHttpClientDestination"
- $ref: "#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestination"
- $ref: "#/components/schemas/ObservabilityPipelineAmazonS3Destination"
Expand All @@ -43038,7 +43039,6 @@ components:
- $ref: "#/components/schemas/ObservabilityPipelineCloudPremDestination"
- $ref: "#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestination"
- $ref: "#/components/schemas/ObservabilityPipelineDatadogLogsDestination"
- $ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestination"
- $ref: "#/components/schemas/ObservabilityPipelineGoogleChronicleDestination"
- $ref: "#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestination"
- $ref: "#/components/schemas/ObservabilityPipelineGooglePubSubDestination"
Expand Down Expand Up @@ -43640,9 +43640,9 @@ components:
type: object
ObservabilityPipelineElasticsearchDestination:
description: |-
The `elasticsearch` destination writes logs to an Elasticsearch cluster.
The `elasticsearch` destination writes logs or metrics to an Elasticsearch cluster.

**Supported pipeline types:** logs
**Supported pipeline types:** logs, metrics
properties:
api_version:
$ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationApiVersion"
Expand All @@ -43651,9 +43651,11 @@ components:
buffer:
$ref: "#/components/schemas/ObservabilityPipelineBufferOptions"
bulk_index:
description: The index to write logs to in Elasticsearch.
description: The name of the index to write events to in Elasticsearch.
example: logs-index
type: string
compression:
$ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationCompression"
data_stream:
$ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationDataStream"
endpoint_url_key:
Expand All @@ -43664,21 +43666,34 @@ components:
description: The unique identifier for this component.
example: "elasticsearch-destination"
type: string
id_key:
description: The name of the field used as the document ID in Elasticsearch.
example: id
type: string
inputs:
description: A list of component IDs whose output is used as the `input` for this component.
example: ["filter-processor"]
items:
description: The ID of a component whose output is used as input for this destination.
type: string
type: array
pipeline:
description: The name of an Elasticsearch ingest pipeline to apply to events before indexing.
example: my-pipeline
type: string
request_retry_partial:
description: When `true`, retries failed partial bulk requests when some events in a batch fail while others succeed.
type: boolean
tls:
$ref: "#/components/schemas/ObservabilityPipelineTls"
type:
$ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationType"
required:
- id
- type
- inputs
type: object
x-pipeline-types: [logs]
x-pipeline-types: [logs, metrics]
ObservabilityPipelineElasticsearchDestinationApiVersion:
description: The Elasticsearch API version to use. Set to `auto` to auto-detect.
enum: [auto, v6, v7, v8]
Expand Down Expand Up @@ -43707,18 +43722,48 @@ components:
required:
- strategy
type: object
ObservabilityPipelineElasticsearchDestinationCompression:
description: Compression configuration for the Elasticsearch destination.
properties:
algorithm:
$ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationCompressionAlgorithm"
level:
description: The compression level. Only applicable for `gzip`, `zlib`, and `zstd` algorithms.
example: 6
format: int64
type: integer
required:
- algorithm
type: object
ObservabilityPipelineElasticsearchDestinationCompressionAlgorithm:
description: The compression algorithm applied when sending data to Elasticsearch.
enum: [none, gzip, zlib, zstd, snappy]
example: gzip
type: string
x-enum-varnames:
- NONE
- GZIP
- ZLIB
- ZSTD
- SNAPPY
ObservabilityPipelineElasticsearchDestinationDataStream:
description: Configuration options for writing to Elasticsearch Data Streams instead of a fixed index.
properties:
auto_routing:
description: When `true`, automatically routes events to the appropriate data stream based on the event content.
type: boolean
dataset:
description: The data stream dataset for your logs. This groups logs by their source or application.
description: The data stream dataset. This groups events by their source or application.
type: string
dtype:
description: The data stream type for your logs. This determines how logs are categorized within the data stream.
description: The data stream type. This determines how events are categorized within the data stream.
type: string
namespace:
description: The data stream namespace for your logs. This separates logs into different environments or domains.
description: The data stream namespace. This separates events into different environments or domains.
type: string
sync_fields:
description: When `true`, synchronizes data stream fields with the Elasticsearch index mapping.
type: boolean
type: object
ObservabilityPipelineElasticsearchDestinationType:
default: elasticsearch
Expand Down
14 changes: 14 additions & 0 deletions docs/datadog_api_client.v2.model.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19443,6 +19443,20 @@ datadog\_api\_client.v2.model.observability\_pipeline\_elasticsearch\_destinatio
:members:
:show-inheritance:

datadog\_api\_client.v2.model.observability\_pipeline\_elasticsearch\_destination\_compression module
-----------------------------------------------------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.observability_pipeline_elasticsearch_destination_compression
:members:
:show-inheritance:

datadog\_api\_client.v2.model.observability\_pipeline\_elasticsearch\_destination\_compression\_algorithm module
----------------------------------------------------------------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.observability_pipeline_elasticsearch_destination_compression_algorithm
:members:
:show-inheritance:

datadog\_api\_client.v2.model.observability\_pipeline\_elasticsearch\_destination\_data\_stream module
------------------------------------------------------------------------------------------------------

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@
from datadog_api_client.v2.model.observability_pipeline_config_source_item import (
ObservabilityPipelineConfigSourceItem,
)
from datadog_api_client.v2.model.observability_pipeline_elasticsearch_destination import (
ObservabilityPipelineElasticsearchDestination,
)
from datadog_api_client.v2.model.observability_pipeline_http_client_destination import (
ObservabilityPipelineHttpClientDestination,
)
Expand All @@ -51,9 +54,6 @@
from datadog_api_client.v2.model.observability_pipeline_datadog_logs_destination import (
ObservabilityPipelineDatadogLogsDestination,
)
from datadog_api_client.v2.model.observability_pipeline_elasticsearch_destination import (
ObservabilityPipelineElasticsearchDestination,
)
from datadog_api_client.v2.model.observability_pipeline_google_chronicle_destination import (
ObservabilityPipelineGoogleChronicleDestination,
)
Expand Down Expand Up @@ -172,6 +172,7 @@ def __init__(
destinations: List[
Union[
ObservabilityPipelineConfigDestinationItem,
ObservabilityPipelineElasticsearchDestination,
ObservabilityPipelineHttpClientDestination,
ObservabilityPipelineAmazonOpenSearchDestination,
ObservabilityPipelineAmazonS3Destination,
Expand All @@ -181,7 +182,6 @@ def __init__(
ObservabilityPipelineCloudPremDestination,
ObservabilityPipelineCrowdStrikeNextGenSiemDestination,
ObservabilityPipelineDatadogLogsDestination,
ObservabilityPipelineElasticsearchDestination,
ObservabilityPipelineGoogleChronicleDestination,
ObservabilityPipelineGoogleCloudStorageDestination,
ObservabilityPipelineGooglePubSubDestination,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,52 +15,70 @@ def __init__(self, **kwargs):
"""
A destination for the pipeline.

:param auth_strategy: HTTP authentication strategy.
:type auth_strategy: ObservabilityPipelineHttpClientDestinationAuthStrategy, optional
:param api_version: The Elasticsearch API version to use. Set to `auto` to auto-detect.
:type api_version: ObservabilityPipelineElasticsearchDestinationApiVersion, optional

:param compression: Compression configuration for HTTP requests.
:type compression: ObservabilityPipelineHttpClientDestinationCompression, optional
:param auth: Authentication settings for the Elasticsearch destination.
When `strategy` is `basic`, use `username_key` and `password_key` to reference credentials stored in environment variables or secrets.
:type auth: ObservabilityPipelineElasticsearchDestinationAuth, optional

:param custom_key: Name of the environment variable or secret that holds a custom header value (used with custom auth strategies).
:type custom_key: str, optional
:param buffer: Configuration for buffer settings on destination components.
:type buffer: ObservabilityPipelineBufferOptions, optional

:param encoding: Encoding format for log events.
:type encoding: ObservabilityPipelineHttpClientDestinationEncoding
:param bulk_index: The name of the index to write events to in Elasticsearch.
:type bulk_index: str, optional

:param compression: Compression configuration for the Elasticsearch destination.
:type compression: ObservabilityPipelineElasticsearchDestinationCompression, optional

:param data_stream: Configuration options for writing to Elasticsearch Data Streams instead of a fixed index.
:type data_stream: ObservabilityPipelineElasticsearchDestinationDataStream, optional

:param endpoint_url_key: Name of the environment variable or secret that holds the Elasticsearch endpoint URL.
:type endpoint_url_key: str, optional

:param id: The unique identifier for this component.
:type id: str

:param inputs: A list of component IDs whose output is used as the input for this component.
:param id_key: The name of the field used as the document ID in Elasticsearch.
:type id_key: str, optional

:param inputs: A list of component IDs whose output is used as the `input` for this component.
:type inputs: [str]

:param password_key: Name of the environment variable or secret that holds the password (used when `auth_strategy` is `basic`).
:type password_key: str, optional
:param pipeline: The name of an Elasticsearch ingest pipeline to apply to events before indexing.
:type pipeline: str, optional

:param request_retry_partial: When `true`, retries failed partial bulk requests when some events in a batch fail while others succeed.
:type request_retry_partial: bool, optional

:param tls: Configuration for enabling TLS encryption between the pipeline component and external services.
:type tls: ObservabilityPipelineTls, optional

:param type: The destination type. The value should always be `elasticsearch`.
:type type: ObservabilityPipelineElasticsearchDestinationType

:param auth_strategy: HTTP authentication strategy.
:type auth_strategy: ObservabilityPipelineHttpClientDestinationAuthStrategy, optional

:param custom_key: Name of the environment variable or secret that holds a custom header value (used with custom auth strategies).
:type custom_key: str, optional

:param encoding: Encoding format for log events.
:type encoding: ObservabilityPipelineHttpClientDestinationEncoding

:param password_key: Name of the environment variable or secret that holds the password (used when `auth_strategy` is `basic`).
:type password_key: str, optional

:param token_key: Name of the environment variable or secret that holds the bearer token (used when `auth_strategy` is `bearer`).
:type token_key: str, optional

:param type: The destination type. The value should always be `http_client`.
:type type: ObservabilityPipelineHttpClientDestinationType

:param uri_key: Name of the environment variable or secret that holds the HTTP endpoint URI.
:type uri_key: str, optional

:param username_key: Name of the environment variable or secret that holds the username (used when `auth_strategy` is `basic`).
:type username_key: str, optional

:param auth: Authentication settings for the Amazon OpenSearch destination.
The `strategy` field determines whether basic or AWS-based authentication is used.
:type auth: ObservabilityPipelineAmazonOpenSearchDestinationAuth

:param buffer: Configuration for buffer settings on destination components.
:type buffer: ObservabilityPipelineBufferOptions, optional

:param bulk_index: The index to write logs to.
:type bulk_index: str, optional

:param bucket: S3 bucket name.
:type bucket: str

Expand Down Expand Up @@ -88,18 +106,9 @@ def __init__(self, **kwargs):
:param container_name: The name of the Azure Blob Storage container to store logs in.
:type container_name: str

:param endpoint_url_key: Name of the environment variable or secret that holds the CloudPrem endpoint URL.
:type endpoint_url_key: str, optional

:param routes: A list of routing rules that forward matching logs to Datadog using dedicated API keys.
:type routes: [ObservabilityPipelineDatadogLogsDestinationRoute], optional

:param api_version: The Elasticsearch API version to use. Set to `auto` to auto-detect.
:type api_version: ObservabilityPipelineElasticsearchDestinationApiVersion, optional

:param data_stream: Configuration options for writing to Elasticsearch Data Streams instead of a fixed index.
:type data_stream: ObservabilityPipelineElasticsearchDestinationDataStream, optional

:param customer_id: The Google Chronicle customer ID.
:type customer_id: str

Expand Down Expand Up @@ -217,6 +226,9 @@ def _composed_schemas(_):
# code would be run when this module is imported, and these composed
# classes don't exist yet because their module has not finished
# loading
from datadog_api_client.v2.model.observability_pipeline_elasticsearch_destination import (
ObservabilityPipelineElasticsearchDestination,
)
from datadog_api_client.v2.model.observability_pipeline_http_client_destination import (
ObservabilityPipelineHttpClientDestination,
)
Expand All @@ -242,9 +254,6 @@ def _composed_schemas(_):
from datadog_api_client.v2.model.observability_pipeline_datadog_logs_destination import (
ObservabilityPipelineDatadogLogsDestination,
)
from datadog_api_client.v2.model.observability_pipeline_elasticsearch_destination import (
ObservabilityPipelineElasticsearchDestination,
)
from datadog_api_client.v2.model.observability_pipeline_google_chronicle_destination import (
ObservabilityPipelineGoogleChronicleDestination,
)
Expand Down Expand Up @@ -288,6 +297,7 @@ def _composed_schemas(_):

return {
"oneOf": [
ObservabilityPipelineElasticsearchDestination,
ObservabilityPipelineHttpClientDestination,
ObservabilityPipelineAmazonOpenSearchDestination,
ObservabilityPipelineAmazonS3Destination,
Expand All @@ -297,7 +307,6 @@ def _composed_schemas(_):
ObservabilityPipelineCloudPremDestination,
ObservabilityPipelineCrowdStrikeNextGenSiemDestination,
ObservabilityPipelineDatadogLogsDestination,
ObservabilityPipelineElasticsearchDestination,
ObservabilityPipelineGoogleChronicleDestination,
ObservabilityPipelineGoogleCloudStorageDestination,
ObservabilityPipelineGooglePubSubDestination,
Expand Down
Loading
Loading