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
69 changes: 69 additions & 0 deletions .generator/schemas/v2/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46522,6 +46522,7 @@ components:
- $ref: "#/components/schemas/ObservabilityPipelineSplunkHecDestination"
- $ref: "#/components/schemas/ObservabilityPipelineSumoLogicDestination"
- $ref: "#/components/schemas/ObservabilityPipelineSyslogNgDestination"
- $ref: "#/components/schemas/ObservabilityPipelineDatabricksZerobusDestination"
- $ref: "#/components/schemas/ObservabilityPipelineDatadogMetricsDestination"
ObservabilityPipelineConfigPipelineType:
default: logs
Expand Down Expand Up @@ -46806,6 +46807,74 @@ components:
- name
- config
type: object
ObservabilityPipelineDatabricksZerobusDestination:
description: |-
The `databricks_zerobus` destination sends logs to Databricks using the Zerobus ingestion API, streaming data directly into your Databricks Lakehouse.

**Supported pipeline types:** Logs, rehydration
properties:
auth:
$ref: "#/components/schemas/ObservabilityPipelineDatabricksZerobusDestinationAuth"
buffer:
$ref: "#/components/schemas/ObservabilityPipelineBufferOptions"
id:
description: The unique identifier for this component.
example: databricks-zerobus-destination
type: string
ingestion_endpoint:
description: Your Databricks Zerobus ingestion endpoint. This is the endpoint used to stream data directly into your Databricks Lakehouse.
example: https://my-workspace-id.zerobus.us-east-1.cloud.databricks.com
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
table_name:
description: The fully qualified name of your target Databricks table. Make sure this table already exists in your Databricks workspace before deploying.
example: catalog.schema.table
type: string
type:
$ref: "#/components/schemas/ObservabilityPipelineDatabricksZerobusDestinationType"
unity_catalog_endpoint:
description: Your Databricks workspace URL. This is used to communicate with the Unity Catalog API.
example: https://my-workspace.cloud.databricks.com
type: string
required:
- id
- type
- inputs
- ingestion_endpoint
- table_name
- unity_catalog_endpoint
- auth
type: object
x-pipeline-types: [logs, rehydration]
ObservabilityPipelineDatabricksZerobusDestinationAuth:
description: OAuth credentials for authenticating with the Databricks Zerobus ingestion API.
properties:
client_id:
description: Your service principal application ID (UUID).
example: 9a8b7c6d-1234-5678-abcd-ef0123456789
type: string
client_secret_key:
description: Name of the environment variable or secret that holds the OAuth client secret used to authenticate with the Databricks ingestion endpoint.
example: DD_OP_DESTINATION_DATABRICKS_ZEROBUS_OAUTH_CLIENT_SECRET
type: string
required:
- client_id
type: object
ObservabilityPipelineDatabricksZerobusDestinationType:
default: databricks_zerobus
description: The destination type. The value must be `databricks_zerobus`.
enum:
- databricks_zerobus
example: databricks_zerobus
type: string
x-enum-varnames:
- DATABRICKS_ZEROBUS
ObservabilityPipelineDatadogAgentSource:
description: |-
The `datadog_agent` source collects logs/metrics from the Datadog Agent.
Expand Down
21 changes: 21 additions & 0 deletions docs/datadog_api_client.v2.model.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20486,6 +20486,27 @@ datadog\_api\_client.v2.model.observability\_pipeline\_data\_attributes module
:members:
:show-inheritance:

datadog\_api\_client.v2.model.observability\_pipeline\_databricks\_zerobus\_destination module
----------------------------------------------------------------------------------------------

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

datadog\_api\_client.v2.model.observability\_pipeline\_databricks\_zerobus\_destination\_auth module
----------------------------------------------------------------------------------------------------

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

datadog\_api\_client.v2.model.observability\_pipeline\_databricks\_zerobus\_destination\_type module
----------------------------------------------------------------------------------------------------

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

datadog\_api\_client.v2.model.observability\_pipeline\_datadog\_agent\_source module
------------------------------------------------------------------------------------

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,9 @@
from datadog_api_client.v2.model.observability_pipeline_syslog_ng_destination import (
ObservabilityPipelineSyslogNgDestination,
)
from datadog_api_client.v2.model.observability_pipeline_databricks_zerobus_destination import (
ObservabilityPipelineDatabricksZerobusDestination,
)
from datadog_api_client.v2.model.observability_pipeline_datadog_metrics_destination import (
ObservabilityPipelineDatadogMetricsDestination,
)
Expand Down Expand Up @@ -195,6 +198,7 @@ def __init__(
ObservabilityPipelineSplunkHecDestination,
ObservabilityPipelineSumoLogicDestination,
ObservabilityPipelineSyslogNgDestination,
ObservabilityPipelineDatabricksZerobusDestination,
ObservabilityPipelineDatadogMetricsDestination,
]
],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,15 @@ def __init__(self, **kwargs):

:param header_source_name: Optional override for the source name header.
:type header_source_name: str, optional

:param ingestion_endpoint: Your Databricks Zerobus ingestion endpoint. This is the endpoint used to stream data directly into your Databricks Lakehouse.
:type ingestion_endpoint: str

:param table_name: The fully qualified name of your target Databricks table. Make sure this table already exists in your Databricks workspace before deploying.
:type table_name: str

:param unity_catalog_endpoint: Your Databricks workspace URL. This is used to communicate with the Unity Catalog API.
:type unity_catalog_endpoint: str
"""
super().__init__(kwargs)

Expand Down Expand Up @@ -294,6 +303,9 @@ def _composed_schemas(_):
from datadog_api_client.v2.model.observability_pipeline_syslog_ng_destination import (
ObservabilityPipelineSyslogNgDestination,
)
from datadog_api_client.v2.model.observability_pipeline_databricks_zerobus_destination import (
ObservabilityPipelineDatabricksZerobusDestination,
)
from datadog_api_client.v2.model.observability_pipeline_datadog_metrics_destination import (
ObservabilityPipelineDatadogMetricsDestination,
)
Expand Down Expand Up @@ -323,6 +335,7 @@ def _composed_schemas(_):
ObservabilityPipelineSplunkHecDestination,
ObservabilityPipelineSumoLogicDestination,
ObservabilityPipelineSyslogNgDestination,
ObservabilityPipelineDatabricksZerobusDestination,
ObservabilityPipelineDatadogMetricsDestination,
],
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
# This product includes software developed at Datadog (https://www.datadoghq.com/).
# Copyright 2019-Present Datadog, Inc.
from __future__ import annotations

from typing import List, Union, TYPE_CHECKING

from datadog_api_client.model_utils import (
ModelNormal,
cached_property,
unset,
UnsetType,
)


if TYPE_CHECKING:
from datadog_api_client.v2.model.observability_pipeline_databricks_zerobus_destination_auth import (
ObservabilityPipelineDatabricksZerobusDestinationAuth,
)
from datadog_api_client.v2.model.observability_pipeline_buffer_options import ObservabilityPipelineBufferOptions
from datadog_api_client.v2.model.observability_pipeline_databricks_zerobus_destination_type import (
ObservabilityPipelineDatabricksZerobusDestinationType,
)
from datadog_api_client.v2.model.observability_pipeline_disk_buffer_options import (
ObservabilityPipelineDiskBufferOptions,
)
from datadog_api_client.v2.model.observability_pipeline_memory_buffer_options import (
ObservabilityPipelineMemoryBufferOptions,
)
from datadog_api_client.v2.model.observability_pipeline_memory_buffer_size_options import (
ObservabilityPipelineMemoryBufferSizeOptions,
)


class ObservabilityPipelineDatabricksZerobusDestination(ModelNormal):
@cached_property
def openapi_types(_):
from datadog_api_client.v2.model.observability_pipeline_databricks_zerobus_destination_auth import (
ObservabilityPipelineDatabricksZerobusDestinationAuth,
)
from datadog_api_client.v2.model.observability_pipeline_buffer_options import ObservabilityPipelineBufferOptions
from datadog_api_client.v2.model.observability_pipeline_databricks_zerobus_destination_type import (
ObservabilityPipelineDatabricksZerobusDestinationType,
)

return {
"auth": (ObservabilityPipelineDatabricksZerobusDestinationAuth,),
"buffer": (ObservabilityPipelineBufferOptions,),
"id": (str,),
"ingestion_endpoint": (str,),
"inputs": ([str],),
"table_name": (str,),
"type": (ObservabilityPipelineDatabricksZerobusDestinationType,),
"unity_catalog_endpoint": (str,),
}

attribute_map = {
"auth": "auth",
"buffer": "buffer",
"id": "id",
"ingestion_endpoint": "ingestion_endpoint",
"inputs": "inputs",
"table_name": "table_name",
"type": "type",
"unity_catalog_endpoint": "unity_catalog_endpoint",
}

def __init__(
self_,
auth: ObservabilityPipelineDatabricksZerobusDestinationAuth,
id: str,
ingestion_endpoint: str,
inputs: List[str],
table_name: str,
type: ObservabilityPipelineDatabricksZerobusDestinationType,
unity_catalog_endpoint: str,
buffer: Union[
ObservabilityPipelineBufferOptions,
ObservabilityPipelineDiskBufferOptions,
ObservabilityPipelineMemoryBufferOptions,
ObservabilityPipelineMemoryBufferSizeOptions,
UnsetType,
] = unset,
**kwargs,
):
"""
The ``databricks_zerobus`` destination sends logs to Databricks using the Zerobus ingestion API, streaming data directly into your Databricks Lakehouse.

**Supported pipeline types:** Logs, rehydration

:param auth: OAuth credentials for authenticating with the Databricks Zerobus ingestion API.
:type auth: ObservabilityPipelineDatabricksZerobusDestinationAuth

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

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

:param ingestion_endpoint: Your Databricks Zerobus ingestion endpoint. This is the endpoint used to stream data directly into your Databricks Lakehouse.
:type ingestion_endpoint: str

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

:param table_name: The fully qualified name of your target Databricks table. Make sure this table already exists in your Databricks workspace before deploying.
:type table_name: str

:param type: The destination type. The value must be ``databricks_zerobus``.
:type type: ObservabilityPipelineDatabricksZerobusDestinationType

:param unity_catalog_endpoint: Your Databricks workspace URL. This is used to communicate with the Unity Catalog API.
:type unity_catalog_endpoint: str
"""
if buffer is not unset:
kwargs["buffer"] = buffer
super().__init__(kwargs)

self_.auth = auth
self_.id = id
self_.ingestion_endpoint = ingestion_endpoint
self_.inputs = inputs
self_.table_name = table_name
self_.type = type
self_.unity_catalog_endpoint = unity_catalog_endpoint
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
# This product includes software developed at Datadog (https://www.datadoghq.com/).
# Copyright 2019-Present Datadog, Inc.
from __future__ import annotations

from typing import Union

from datadog_api_client.model_utils import (
ModelNormal,
cached_property,
unset,
UnsetType,
)


class ObservabilityPipelineDatabricksZerobusDestinationAuth(ModelNormal):
@cached_property
def openapi_types(_):
return {
"client_id": (str,),
"client_secret_key": (str,),
}

attribute_map = {
"client_id": "client_id",
"client_secret_key": "client_secret_key",
}

def __init__(self_, client_id: str, client_secret_key: Union[str, UnsetType] = unset, **kwargs):
"""
OAuth credentials for authenticating with the Databricks Zerobus ingestion API.

:param client_id: Your service principal application ID (UUID).
:type client_id: str

:param client_secret_key: Name of the environment variable or secret that holds the OAuth client secret used to authenticate with the Databricks ingestion endpoint.
:type client_secret_key: str, optional
"""
if client_secret_key is not unset:
kwargs["client_secret_key"] = client_secret_key
super().__init__(kwargs)

self_.client_id = client_id
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
# This product includes software developed at Datadog (https://www.datadoghq.com/).
# Copyright 2019-Present Datadog, Inc.
from __future__ import annotations


from datadog_api_client.model_utils import (
ModelSimple,
cached_property,
)

from typing import ClassVar


class ObservabilityPipelineDatabricksZerobusDestinationType(ModelSimple):
"""
The destination type. The value must be `databricks_zerobus`.

:param value: If omitted defaults to "databricks_zerobus". Must be one of ["databricks_zerobus"].
:type value: str
"""

allowed_values = {
"databricks_zerobus",
}
DATABRICKS_ZEROBUS: ClassVar["ObservabilityPipelineDatabricksZerobusDestinationType"]

@cached_property
def openapi_types(_):
return {
"value": (str,),
}


ObservabilityPipelineDatabricksZerobusDestinationType.DATABRICKS_ZEROBUS = (
ObservabilityPipelineDatabricksZerobusDestinationType("databricks_zerobus")
)
12 changes: 12 additions & 0 deletions src/datadog_api_client/v2/models/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -3963,6 +3963,15 @@
)
from datadog_api_client.v2.model.observability_pipeline_data import ObservabilityPipelineData
from datadog_api_client.v2.model.observability_pipeline_data_attributes import ObservabilityPipelineDataAttributes
from datadog_api_client.v2.model.observability_pipeline_databricks_zerobus_destination import (
ObservabilityPipelineDatabricksZerobusDestination,
)
from datadog_api_client.v2.model.observability_pipeline_databricks_zerobus_destination_auth import (
ObservabilityPipelineDatabricksZerobusDestinationAuth,
)
from datadog_api_client.v2.model.observability_pipeline_databricks_zerobus_destination_type import (
ObservabilityPipelineDatabricksZerobusDestinationType,
)
from datadog_api_client.v2.model.observability_pipeline_datadog_agent_source import (
ObservabilityPipelineDatadogAgentSource,
)
Expand Down Expand Up @@ -10375,6 +10384,9 @@
"ObservabilityPipelineCustomProcessorType",
"ObservabilityPipelineData",
"ObservabilityPipelineDataAttributes",
"ObservabilityPipelineDatabricksZerobusDestination",
"ObservabilityPipelineDatabricksZerobusDestinationAuth",
"ObservabilityPipelineDatabricksZerobusDestinationType",
"ObservabilityPipelineDatadogAgentSource",
"ObservabilityPipelineDatadogAgentSourceType",
"ObservabilityPipelineDatadogLogsDestination",
Expand Down
Loading