diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 615b42d5e7..54f373eaba 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -80705,191 +80705,6 @@ components: - type - attributes type: object - NetworkHealthInsight: - description: A single network health insight describing a service-to-service connectivity issue. - properties: - attributes: - $ref: "#/components/schemas/NetworkHealthInsightAttributes" - id: - description: Unique identifier for this network health insight. - example: example-insight-id - type: string - type: - $ref: "#/components/schemas/NetworkHealthInsightsType" - required: - - type - - id - - attributes - type: object - NetworkHealthInsightAttributes: - description: Detailed attributes of a network health insight. - properties: - account_id: - description: AWS account identifier where the certificate is located. Only set for `tls-cert` insights. - example: "123456789012" - type: string - certificate_id: - description: ARN or identifier of the certificate. Only set for `tls-cert` insights. - example: "arn:aws:acm:us-east-1:123456789012:certificate/abcd1234-a123-456b-a123-12345678901f" - type: string - certificate_lifetime_percent: - description: |- - Percentage of the certificate's validity period that has elapsed, ranging from 0 to 100. - Only set for `tls-cert` insights. - example: 96.7 - format: double - type: number - client_region: - description: AWS region where the client is located. Only set for `tls-cert` insights. - example: us-west-2 - type: string - client_service: - description: |- - Name of the service making the request (DNS query or TLS-secured connection). - Set to `N/A` when the client service cannot be determined. - example: network-logger - type: string - days_until_expiration: - description: |- - Number of days remaining until the certificate expires. Negative values indicate the - certificate has already expired. Only set for `tls-cert` insights. - example: 3 - format: int64 - type: integer - dns_query: - description: Domain name that was being resolved when the DNS failure occurred. Only set for `dns` insights. - example: kafka-broker.internal.domain.com - type: string - dns_server: - description: DNS server that received the failing query. Only set for `dns` insights. - example: cluster-dns - type: string - domain_name: - description: Domain name covered by the certificate. Only set for `tls-cert` insights. - example: api.example.com - type: string - failure_magnitude: - description: |- - Count of failed events observed during the query window. Only set for `dns`, `tcp`, - and `security-group` insights. - example: 150 - format: int64 - minimum: 0 - type: integer - failure_rate: - description: |- - Percentage of requests that failed during the query window, ranging from 0 to 100. - Only set for `dns`, `tcp`, and `security-group` insights. - example: 91 - format: double - maximum: 100 - minimum: 0 - type: number - failure_type: - $ref: "#/components/schemas/NetworkHealthInsightFailureType" - loadbalancer_id: - description: ARN of the load balancer using the certificate. Only set for `tls-cert` insights. - example: "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-lb/50dc6c495c0c9188" - type: string - server_region: - description: AWS region where the server or load balancer is located. Only set for `tls-cert` insights. - example: us-east-1 - type: string - server_service: - description: Name of the target service the client was trying to reach. - example: kafka - type: string - total_requests: - description: |- - Total number of requests observed during the query window. Provides context for - `failure_magnitude` and `failure_rate`. Only set for `dns`, `tcp`, and `security-group` insights. - example: 1200 - format: int64 - minimum: 0 - type: integer - traffic_volume: - $ref: "#/components/schemas/NetworkHealthInsightTrafficVolume" - type: - $ref: "#/components/schemas/NetworkHealthInsightCategory" - type: object - NetworkHealthInsightCategory: - description: |- - Category of network health insight. Indicates whether the insight relates to a DNS issue (`dns`), - a TCP issue (`tcp`), a TLS certificate issue (`tls-cert`), or a security group denial (`security-group`). - enum: - - dns - - tcp - - tls-cert - - security-group - example: dns - type: string - x-enum-varnames: - - DNS - - TCP - - TLS_CERT - - SECURITY_GROUP - NetworkHealthInsightFailureType: - description: |- - Specific failure type within the insight category. For DNS insights: `timeout`, `nxdomain`, - `servfail`, or `general_failure`. For TLS certificate insights: `expired` or `expiring_soon`. - For security group insights: `denied`. - enum: - - timeout - - nxdomain - - servfail - - general_failure - - expired - - expiring_soon - - denied - example: nxdomain - type: string - x-enum-varnames: - - TIMEOUT - - NXDOMAIN - - SERVFAIL - - GENERAL_FAILURE - - EXPIRED - - EXPIRING_SOON - - DENIED - NetworkHealthInsightTrafficVolume: - description: Network traffic volume metrics between the client and server services during the query window. - properties: - bytes_read: - description: Total bytes read from the server to the client during the query window. - example: 1800000 - format: int64 - type: integer - bytes_written: - description: Total bytes written from the client to the server during the query window. - example: 2500000 - format: int64 - type: integer - total_traffic: - description: Sum of bytes written and bytes read across the query window. - example: 4300000 - format: int64 - type: integer - type: object - NetworkHealthInsightsResponse: - description: Response containing a list of network health insights for the organization. - properties: - data: - description: Array of network health insights returned for the query window. - items: - $ref: "#/components/schemas/NetworkHealthInsight" - type: array - required: - - data - type: object - NetworkHealthInsightsType: - default: network-health-insights - description: The resource type for network health insights. Always `network-health-insights`. - enum: - - network-health-insights - example: network-health-insights - type: string - x-enum-varnames: - - NETWORK_HEALTH_INSIGHTS NodeType: additionalProperties: {} description: A tree-sitter node type definition for a given language, describing the node's structure, subtypes, and fields. @@ -198821,118 +198636,6 @@ paths: summary: Update the tags for an interface tags: - Network Device Monitoring - /api/v2/network-health-insights: - get: - description: |- - Return network health insights for the organization within the given time window. - Insights are produced by analyzing DNS failures pre-classified by `network-dns-logger`, - TLS certificate metrics, and denied security group connections. Each insight - identifies the client and server services involved, the type of issue, and the - magnitude of the failure observed during the query window. - operationId: ListNetworkHealthInsights - parameters: - - description: |- - Unix timestamp (number of seconds since epoch) of the start of the query window. - If not provided, the start of the query window will be 15 minutes before the `to` timestamp. - If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. - example: "1716800000" - in: query - name: from - required: false - schema: - type: string - - description: |- - Unix timestamp (number of seconds since epoch) of the end of the query window. - If not provided, the end of the query window will be the current time. - If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. - example: "1716800900" - in: query - name: to - required: false - schema: - type: string - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - - attributes: - client_service: "network-logger" - dns_query: "kafka-broker.internal.domain.com" - dns_server: "cluster-dns" - failure_magnitude: 150 - failure_rate: 91 - failure_type: "nxdomain" - server_service: "kafka" - total_requests: 1200 - traffic_volume: - bytes_read: 1800000 - bytes_written: 2500000 - total_traffic: 4300000 - type: "dns" - id: "example-insight-id" - type: "network-health-insights" - - attributes: - account_id: "123456789012" - certificate_id: "arn:aws:acm:us-east-1:123456789012:certificate/abcd1234-a123-456b-a123-12345678901f" - certificate_lifetime_percent: 96.7 - client_region: "us-west-2" - client_service: "N/A" - days_until_expiration: 3 - domain_name: "api.example.com" - failure_type: "expiring_soon" - loadbalancer_id: "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-lb/50dc6c495c0c9188" - server_region: "us-east-1" - server_service: "web-frontend" - type: "tls-cert" - id: "example-cert-insight-id" - type: "network-health-insights" - - attributes: - client_service: "web-frontend" - failure_magnitude: 85 - failure_rate: 68.5 - failure_type: "denied" - server_service: "database" - total_requests: 124 - type: "security-group" - id: "example-security-group-insight-id" - type: "network-health-insights" - schema: - $ref: "#/components/schemas/NetworkHealthInsightsResponse" - description: OK - "400": - content: - application/json: - schema: - $ref: "#/components/schemas/JSONAPIErrorResponse" - description: Bad Request - "403": - content: - application/json: - schema: - $ref: "#/components/schemas/JSONAPIErrorResponse" - description: Forbidden - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - "500": - content: - application/json: - schema: - $ref: "#/components/schemas/JSONAPIErrorResponse" - description: Internal Server Error - summary: List network health insights - tags: - - Network Health Insights - x-permission: - operator: OR - permissions: - - network_health_insights_read - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/network/connections/aggregate: get: description: Get all aggregated connections. @@ -245118,11 +244821,6 @@ tags: - description: |- The Network Device Monitoring API allows you to fetch devices and interfaces and their attributes. See the [Network Device Monitoring page](https://docs.datadoghq.com/network_monitoring/) for more information. name: Network Device Monitoring - - description: |- - Analyze network health by surfacing actionable insights for services experiencing connectivity issues. - Insights are derived from DNS failure data (timeouts, NXDOMAIN, SERVFAIL, general failures), - TLS certificate health (expired, expiring soon), and security group denials. - name: Network Health Insights - description: |- Configure OAuth2 clients for Datadog. Supports RFC 7591 Dynamic Client Registration and management of OAuth2 client scopes restrictions. diff --git a/examples/v2/network-health-insights/ListNetworkHealthInsights.py b/examples/v2/network-health-insights/ListNetworkHealthInsights.py deleted file mode 100644 index 77d3597c49..0000000000 --- a/examples/v2/network-health-insights/ListNetworkHealthInsights.py +++ /dev/null @@ -1,16 +0,0 @@ -""" -List network health insights returns "OK" response -""" - -from os import environ -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.network_health_insights_api import NetworkHealthInsightsApi - -configuration = Configuration() -configuration.access_token = environ["DD_BEARER_TOKEN"] -configuration.unstable_operations["list_network_health_insights"] = True -with ApiClient(configuration) as api_client: - api_instance = NetworkHealthInsightsApi(api_client) - response = api_instance.list_network_health_insights() - - print(response) diff --git a/src/datadog_api_client/configuration.py b/src/datadog_api_client/configuration.py index 7052b123a6..bd80d32478 100644 --- a/src/datadog_api_client/configuration.py +++ b/src/datadog_api_client/configuration.py @@ -738,7 +738,6 @@ def __init__( "v2.update_monitor_user_template": False, "v2.validate_existing_monitor_user_template": False, "v2.validate_monitor_user_template": False, - "v2.list_network_health_insights": False, "v2.delete_scopes_restriction": False, "v2.get_o_auth2_well_known_sites": False, "v2.get_oidc_discovery_document": False, diff --git a/src/datadog_api_client/v2/api/network_health_insights_api.py b/src/datadog_api_client/v2/api/network_health_insights_api.py deleted file mode 100644 index 13bc1738cf..0000000000 --- a/src/datadog_api_client/v2/api/network_health_insights_api.py +++ /dev/null @@ -1,87 +0,0 @@ -# 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 Any, Dict, Union - -from datadog_api_client.api_client import ApiClient, Endpoint as _Endpoint -from datadog_api_client.configuration import Configuration -from datadog_api_client.model_utils import ( - UnsetType, - unset, -) -from datadog_api_client.v2.model.network_health_insights_response import NetworkHealthInsightsResponse - - -class NetworkHealthInsightsApi: - """ - Analyze network health by surfacing actionable insights for services experiencing connectivity issues. - Insights are derived from DNS failure data (timeouts, NXDOMAIN, SERVFAIL, general failures), - TLS certificate health (expired, expiring soon), and security group denials. - """ - - def __init__(self, api_client=None): - if api_client is None: - api_client = ApiClient(Configuration()) - self.api_client = api_client - - self._list_network_health_insights_endpoint = _Endpoint( - settings={ - "response_type": (NetworkHealthInsightsResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/network-health-insights", - "operation_id": "list_network_health_insights", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "_from": { - "openapi_types": (str,), - "attribute": "from", - "location": "query", - }, - "to": { - "openapi_types": (str,), - "attribute": "to", - "location": "query", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - def list_network_health_insights( - self, - *, - _from: Union[str, UnsetType] = unset, - to: Union[str, UnsetType] = unset, - ) -> NetworkHealthInsightsResponse: - """List network health insights. - - Return network health insights for the organization within the given time window. - Insights are produced by analyzing DNS failures pre-classified by ``network-dns-logger`` , - TLS certificate metrics, and denied security group connections. Each insight - identifies the client and server services involved, the type of issue, and the - magnitude of the failure observed during the query window. - - :param _from: Unix timestamp (number of seconds since epoch) of the start of the query window. - If not provided, the start of the query window will be 15 minutes before the ``to`` timestamp. - If neither ``from`` nor ``to`` are provided, the query window will be ``[now - 15m, now]``. - :type _from: str, optional - :param to: Unix timestamp (number of seconds since epoch) of the end of the query window. - If not provided, the end of the query window will be the current time. - If neither ``from`` nor ``to`` are provided, the query window will be ``[now - 15m, now]``. - :type to: str, optional - :rtype: NetworkHealthInsightsResponse - """ - kwargs: Dict[str, Any] = {} - if _from is not unset: - kwargs["_from"] = _from - - if to is not unset: - kwargs["to"] = to - - return self._list_network_health_insights_endpoint.call_with_http_info(**kwargs) diff --git a/src/datadog_api_client/v2/apis/__init__.py b/src/datadog_api_client/v2/apis/__init__.py index 2fde805f3c..92e9c68e5d 100644 --- a/src/datadog_api_client/v2/apis/__init__.py +++ b/src/datadog_api_client/v2/apis/__init__.py @@ -83,7 +83,6 @@ from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi from datadog_api_client.v2.api.monitors_api import MonitorsApi from datadog_api_client.v2.api.network_device_monitoring_api import NetworkDeviceMonitoringApi -from datadog_api_client.v2.api.network_health_insights_api import NetworkHealthInsightsApi from datadog_api_client.v2.api.o_auth2_client_public_api import OAuth2ClientPublicApi from datadog_api_client.v2.api.oci_integration_api import OCIIntegrationApi from datadog_api_client.v2.api.observability_pipelines_api import ObservabilityPipelinesApi @@ -240,7 +239,6 @@ "ModelLabAPIApi", "MonitorsApi", "NetworkDeviceMonitoringApi", - "NetworkHealthInsightsApi", "OAuth2ClientPublicApi", "OCIIntegrationApi", "ObservabilityPipelinesApi", diff --git a/src/datadog_api_client/v2/model/network_health_insight.py b/src/datadog_api_client/v2/model/network_health_insight.py deleted file mode 100644 index 2f9a7ca052..0000000000 --- a/src/datadog_api_client/v2/model/network_health_insight.py +++ /dev/null @@ -1,54 +0,0 @@ -# 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 TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.network_health_insight_attributes import NetworkHealthInsightAttributes - from datadog_api_client.v2.model.network_health_insights_type import NetworkHealthInsightsType - - -class NetworkHealthInsight(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.network_health_insight_attributes import NetworkHealthInsightAttributes - from datadog_api_client.v2.model.network_health_insights_type import NetworkHealthInsightsType - - return { - "attributes": (NetworkHealthInsightAttributes,), - "id": (str,), - "type": (NetworkHealthInsightsType,), - } - - attribute_map = { - "attributes": "attributes", - "id": "id", - "type": "type", - } - - def __init__(self_, attributes: NetworkHealthInsightAttributes, id: str, type: NetworkHealthInsightsType, **kwargs): - """ - A single network health insight describing a service-to-service connectivity issue. - - :param attributes: Detailed attributes of a network health insight. - :type attributes: NetworkHealthInsightAttributes - - :param id: Unique identifier for this network health insight. - :type id: str - - :param type: The resource type for network health insights. Always ``network-health-insights``. - :type type: NetworkHealthInsightsType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.id = id - self_.type = type diff --git a/src/datadog_api_client/v2/model/network_health_insight_attributes.py b/src/datadog_api_client/v2/model/network_health_insight_attributes.py deleted file mode 100644 index 8719136fd6..0000000000 --- a/src/datadog_api_client/v2/model/network_health_insight_attributes.py +++ /dev/null @@ -1,208 +0,0 @@ -# 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, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.network_health_insight_failure_type import NetworkHealthInsightFailureType - from datadog_api_client.v2.model.network_health_insight_traffic_volume import NetworkHealthInsightTrafficVolume - from datadog_api_client.v2.model.network_health_insight_category import NetworkHealthInsightCategory - - -class NetworkHealthInsightAttributes(ModelNormal): - validations = { - "failure_magnitude": { - "inclusive_minimum": 0, - }, - "failure_rate": { - "inclusive_maximum": 100, - "inclusive_minimum": 0, - }, - "total_requests": { - "inclusive_minimum": 0, - }, - } - - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.network_health_insight_failure_type import NetworkHealthInsightFailureType - from datadog_api_client.v2.model.network_health_insight_traffic_volume import NetworkHealthInsightTrafficVolume - from datadog_api_client.v2.model.network_health_insight_category import NetworkHealthInsightCategory - - return { - "account_id": (str,), - "certificate_id": (str,), - "certificate_lifetime_percent": (float,), - "client_region": (str,), - "client_service": (str,), - "days_until_expiration": (int,), - "dns_query": (str,), - "dns_server": (str,), - "domain_name": (str,), - "failure_magnitude": (int,), - "failure_rate": (float,), - "failure_type": (NetworkHealthInsightFailureType,), - "loadbalancer_id": (str,), - "server_region": (str,), - "server_service": (str,), - "total_requests": (int,), - "traffic_volume": (NetworkHealthInsightTrafficVolume,), - "type": (NetworkHealthInsightCategory,), - } - - attribute_map = { - "account_id": "account_id", - "certificate_id": "certificate_id", - "certificate_lifetime_percent": "certificate_lifetime_percent", - "client_region": "client_region", - "client_service": "client_service", - "days_until_expiration": "days_until_expiration", - "dns_query": "dns_query", - "dns_server": "dns_server", - "domain_name": "domain_name", - "failure_magnitude": "failure_magnitude", - "failure_rate": "failure_rate", - "failure_type": "failure_type", - "loadbalancer_id": "loadbalancer_id", - "server_region": "server_region", - "server_service": "server_service", - "total_requests": "total_requests", - "traffic_volume": "traffic_volume", - "type": "type", - } - - def __init__( - self_, - account_id: Union[str, UnsetType] = unset, - certificate_id: Union[str, UnsetType] = unset, - certificate_lifetime_percent: Union[float, UnsetType] = unset, - client_region: Union[str, UnsetType] = unset, - client_service: Union[str, UnsetType] = unset, - days_until_expiration: Union[int, UnsetType] = unset, - dns_query: Union[str, UnsetType] = unset, - dns_server: Union[str, UnsetType] = unset, - domain_name: Union[str, UnsetType] = unset, - failure_magnitude: Union[int, UnsetType] = unset, - failure_rate: Union[float, UnsetType] = unset, - failure_type: Union[NetworkHealthInsightFailureType, UnsetType] = unset, - loadbalancer_id: Union[str, UnsetType] = unset, - server_region: Union[str, UnsetType] = unset, - server_service: Union[str, UnsetType] = unset, - total_requests: Union[int, UnsetType] = unset, - traffic_volume: Union[NetworkHealthInsightTrafficVolume, UnsetType] = unset, - type: Union[NetworkHealthInsightCategory, UnsetType] = unset, - **kwargs, - ): - """ - Detailed attributes of a network health insight. - - :param account_id: AWS account identifier where the certificate is located. Only set for ``tls-cert`` insights. - :type account_id: str, optional - - :param certificate_id: ARN or identifier of the certificate. Only set for ``tls-cert`` insights. - :type certificate_id: str, optional - - :param certificate_lifetime_percent: Percentage of the certificate's validity period that has elapsed, ranging from 0 to 100. - Only set for ``tls-cert`` insights. - :type certificate_lifetime_percent: float, optional - - :param client_region: AWS region where the client is located. Only set for ``tls-cert`` insights. - :type client_region: str, optional - - :param client_service: Name of the service making the request (DNS query or TLS-secured connection). - Set to ``N/A`` when the client service cannot be determined. - :type client_service: str, optional - - :param days_until_expiration: Number of days remaining until the certificate expires. Negative values indicate the - certificate has already expired. Only set for ``tls-cert`` insights. - :type days_until_expiration: int, optional - - :param dns_query: Domain name that was being resolved when the DNS failure occurred. Only set for ``dns`` insights. - :type dns_query: str, optional - - :param dns_server: DNS server that received the failing query. Only set for ``dns`` insights. - :type dns_server: str, optional - - :param domain_name: Domain name covered by the certificate. Only set for ``tls-cert`` insights. - :type domain_name: str, optional - - :param failure_magnitude: Count of failed events observed during the query window. Only set for ``dns`` , ``tcp`` , - and ``security-group`` insights. - :type failure_magnitude: int, optional - - :param failure_rate: Percentage of requests that failed during the query window, ranging from 0 to 100. - Only set for ``dns`` , ``tcp`` , and ``security-group`` insights. - :type failure_rate: float, optional - - :param failure_type: Specific failure type within the insight category. For DNS insights: ``timeout`` , ``nxdomain`` , - ``servfail`` , or ``general_failure``. For TLS certificate insights: ``expired`` or ``expiring_soon``. - For security group insights: ``denied``. - :type failure_type: NetworkHealthInsightFailureType, optional - - :param loadbalancer_id: ARN of the load balancer using the certificate. Only set for ``tls-cert`` insights. - :type loadbalancer_id: str, optional - - :param server_region: AWS region where the server or load balancer is located. Only set for ``tls-cert`` insights. - :type server_region: str, optional - - :param server_service: Name of the target service the client was trying to reach. - :type server_service: str, optional - - :param total_requests: Total number of requests observed during the query window. Provides context for - ``failure_magnitude`` and ``failure_rate``. Only set for ``dns`` , ``tcp`` , and ``security-group`` insights. - :type total_requests: int, optional - - :param traffic_volume: Network traffic volume metrics between the client and server services during the query window. - :type traffic_volume: NetworkHealthInsightTrafficVolume, optional - - :param type: Category of network health insight. Indicates whether the insight relates to a DNS issue ( ``dns`` ), - a TCP issue ( ``tcp`` ), a TLS certificate issue ( ``tls-cert`` ), or a security group denial ( ``security-group`` ). - :type type: NetworkHealthInsightCategory, optional - """ - if account_id is not unset: - kwargs["account_id"] = account_id - if certificate_id is not unset: - kwargs["certificate_id"] = certificate_id - if certificate_lifetime_percent is not unset: - kwargs["certificate_lifetime_percent"] = certificate_lifetime_percent - if client_region is not unset: - kwargs["client_region"] = client_region - if client_service is not unset: - kwargs["client_service"] = client_service - if days_until_expiration is not unset: - kwargs["days_until_expiration"] = days_until_expiration - if dns_query is not unset: - kwargs["dns_query"] = dns_query - if dns_server is not unset: - kwargs["dns_server"] = dns_server - if domain_name is not unset: - kwargs["domain_name"] = domain_name - if failure_magnitude is not unset: - kwargs["failure_magnitude"] = failure_magnitude - if failure_rate is not unset: - kwargs["failure_rate"] = failure_rate - if failure_type is not unset: - kwargs["failure_type"] = failure_type - if loadbalancer_id is not unset: - kwargs["loadbalancer_id"] = loadbalancer_id - if server_region is not unset: - kwargs["server_region"] = server_region - if server_service is not unset: - kwargs["server_service"] = server_service - if total_requests is not unset: - kwargs["total_requests"] = total_requests - if traffic_volume is not unset: - kwargs["traffic_volume"] = traffic_volume - if type is not unset: - kwargs["type"] = type - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/network_health_insight_category.py b/src/datadog_api_client/v2/model/network_health_insight_category.py deleted file mode 100644 index 59854f9b80..0000000000 --- a/src/datadog_api_client/v2/model/network_health_insight_category.py +++ /dev/null @@ -1,45 +0,0 @@ -# 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 NetworkHealthInsightCategory(ModelSimple): - """ - Category of network health insight. Indicates whether the insight relates to a DNS issue (`dns`), - a TCP issue (`tcp`), a TLS certificate issue (`tls-cert`), or a security group denial (`security-group`). - - :param value: Must be one of ["dns", "tcp", "tls-cert", "security-group"]. - :type value: str - """ - - allowed_values = { - "dns", - "tcp", - "tls-cert", - "security-group", - } - DNS: ClassVar["NetworkHealthInsightCategory"] - TCP: ClassVar["NetworkHealthInsightCategory"] - TLS_CERT: ClassVar["NetworkHealthInsightCategory"] - SECURITY_GROUP: ClassVar["NetworkHealthInsightCategory"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -NetworkHealthInsightCategory.DNS = NetworkHealthInsightCategory("dns") -NetworkHealthInsightCategory.TCP = NetworkHealthInsightCategory("tcp") -NetworkHealthInsightCategory.TLS_CERT = NetworkHealthInsightCategory("tls-cert") -NetworkHealthInsightCategory.SECURITY_GROUP = NetworkHealthInsightCategory("security-group") diff --git a/src/datadog_api_client/v2/model/network_health_insight_failure_type.py b/src/datadog_api_client/v2/model/network_health_insight_failure_type.py deleted file mode 100644 index 7ff4b63c19..0000000000 --- a/src/datadog_api_client/v2/model/network_health_insight_failure_type.py +++ /dev/null @@ -1,55 +0,0 @@ -# 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 NetworkHealthInsightFailureType(ModelSimple): - """ - Specific failure type within the insight category. For DNS insights: `timeout`, `nxdomain`, - `servfail`, or `general_failure`. For TLS certificate insights: `expired` or `expiring_soon`. - For security group insights: `denied`. - - :param value: Must be one of ["timeout", "nxdomain", "servfail", "general_failure", "expired", "expiring_soon", "denied"]. - :type value: str - """ - - allowed_values = { - "timeout", - "nxdomain", - "servfail", - "general_failure", - "expired", - "expiring_soon", - "denied", - } - TIMEOUT: ClassVar["NetworkHealthInsightFailureType"] - NXDOMAIN: ClassVar["NetworkHealthInsightFailureType"] - SERVFAIL: ClassVar["NetworkHealthInsightFailureType"] - GENERAL_FAILURE: ClassVar["NetworkHealthInsightFailureType"] - EXPIRED: ClassVar["NetworkHealthInsightFailureType"] - EXPIRING_SOON: ClassVar["NetworkHealthInsightFailureType"] - DENIED: ClassVar["NetworkHealthInsightFailureType"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -NetworkHealthInsightFailureType.TIMEOUT = NetworkHealthInsightFailureType("timeout") -NetworkHealthInsightFailureType.NXDOMAIN = NetworkHealthInsightFailureType("nxdomain") -NetworkHealthInsightFailureType.SERVFAIL = NetworkHealthInsightFailureType("servfail") -NetworkHealthInsightFailureType.GENERAL_FAILURE = NetworkHealthInsightFailureType("general_failure") -NetworkHealthInsightFailureType.EXPIRED = NetworkHealthInsightFailureType("expired") -NetworkHealthInsightFailureType.EXPIRING_SOON = NetworkHealthInsightFailureType("expiring_soon") -NetworkHealthInsightFailureType.DENIED = NetworkHealthInsightFailureType("denied") diff --git a/src/datadog_api_client/v2/model/network_health_insight_traffic_volume.py b/src/datadog_api_client/v2/model/network_health_insight_traffic_volume.py deleted file mode 100644 index d47299f37c..0000000000 --- a/src/datadog_api_client/v2/model/network_health_insight_traffic_volume.py +++ /dev/null @@ -1,56 +0,0 @@ -# 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 NetworkHealthInsightTrafficVolume(ModelNormal): - @cached_property - def openapi_types(_): - return { - "bytes_read": (int,), - "bytes_written": (int,), - "total_traffic": (int,), - } - - attribute_map = { - "bytes_read": "bytes_read", - "bytes_written": "bytes_written", - "total_traffic": "total_traffic", - } - - def __init__( - self_, - bytes_read: Union[int, UnsetType] = unset, - bytes_written: Union[int, UnsetType] = unset, - total_traffic: Union[int, UnsetType] = unset, - **kwargs, - ): - """ - Network traffic volume metrics between the client and server services during the query window. - - :param bytes_read: Total bytes read from the server to the client during the query window. - :type bytes_read: int, optional - - :param bytes_written: Total bytes written from the client to the server during the query window. - :type bytes_written: int, optional - - :param total_traffic: Sum of bytes written and bytes read across the query window. - :type total_traffic: int, optional - """ - if bytes_read is not unset: - kwargs["bytes_read"] = bytes_read - if bytes_written is not unset: - kwargs["bytes_written"] = bytes_written - if total_traffic is not unset: - kwargs["total_traffic"] = total_traffic - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/network_health_insights_response.py b/src/datadog_api_client/v2/model/network_health_insights_response.py deleted file mode 100644 index e12c957359..0000000000 --- a/src/datadog_api_client/v2/model/network_health_insights_response.py +++ /dev/null @@ -1,40 +0,0 @@ -# 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, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.network_health_insight import NetworkHealthInsight - - -class NetworkHealthInsightsResponse(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.network_health_insight import NetworkHealthInsight - - return { - "data": ([NetworkHealthInsight],), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: List[NetworkHealthInsight], **kwargs): - """ - Response containing a list of network health insights for the organization. - - :param data: Array of network health insights returned for the query window. - :type data: [NetworkHealthInsight] - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/network_health_insights_type.py b/src/datadog_api_client/v2/model/network_health_insights_type.py deleted file mode 100644 index b2aaaf1f7e..0000000000 --- a/src/datadog_api_client/v2/model/network_health_insights_type.py +++ /dev/null @@ -1,35 +0,0 @@ -# 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 NetworkHealthInsightsType(ModelSimple): - """ - The resource type for network health insights. Always `network-health-insights`. - - :param value: If omitted defaults to "network-health-insights". Must be one of ["network-health-insights"]. - :type value: str - """ - - allowed_values = { - "network-health-insights", - } - NETWORK_HEALTH_INSIGHTS: ClassVar["NetworkHealthInsightsType"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -NetworkHealthInsightsType.NETWORK_HEALTH_INSIGHTS = NetworkHealthInsightsType("network-health-insights") diff --git a/src/datadog_api_client/v2/models/__init__.py b/src/datadog_api_client/v2/models/__init__.py index 4cae299725..242f1d1eed 100644 --- a/src/datadog_api_client/v2/models/__init__.py +++ b/src/datadog_api_client/v2/models/__init__.py @@ -6547,13 +6547,6 @@ from datadog_api_client.v2.model.mute_rules_response import MuteRulesResponse from datadog_api_client.v2.model.ndk_sourcemap_attributes import NDKSourcemapAttributes from datadog_api_client.v2.model.ndk_sourcemap_data import NDKSourcemapData -from datadog_api_client.v2.model.network_health_insight import NetworkHealthInsight -from datadog_api_client.v2.model.network_health_insight_attributes import NetworkHealthInsightAttributes -from datadog_api_client.v2.model.network_health_insight_category import NetworkHealthInsightCategory -from datadog_api_client.v2.model.network_health_insight_failure_type import NetworkHealthInsightFailureType -from datadog_api_client.v2.model.network_health_insight_traffic_volume import NetworkHealthInsightTrafficVolume -from datadog_api_client.v2.model.network_health_insights_response import NetworkHealthInsightsResponse -from datadog_api_client.v2.model.network_health_insights_type import NetworkHealthInsightsType from datadog_api_client.v2.model.node_type import NodeType from datadog_api_client.v2.model.node_types_response import NodeTypesResponse from datadog_api_client.v2.model.node_types_response_data import NodeTypesResponseData @@ -17154,13 +17147,6 @@ "MuteRulesResponse", "NDKSourcemapAttributes", "NDKSourcemapData", - "NetworkHealthInsight", - "NetworkHealthInsightAttributes", - "NetworkHealthInsightCategory", - "NetworkHealthInsightFailureType", - "NetworkHealthInsightTrafficVolume", - "NetworkHealthInsightsResponse", - "NetworkHealthInsightsType", "NodeType", "NodeTypesResponse", "NodeTypesResponseData", diff --git a/tests/v2/features/network_health_insights.feature b/tests/v2/features/network_health_insights.feature deleted file mode 100644 index 0ddd8476f9..0000000000 --- a/tests/v2/features/network_health_insights.feature +++ /dev/null @@ -1,23 +0,0 @@ -@endpoint(network-health-insights) @endpoint(network-health-insights-v2) -Feature: Network Health Insights - Analyze network health by surfacing actionable insights for services - experiencing connectivity issues. Insights are derived from DNS failure - data (timeouts, NXDOMAIN, SERVFAIL, general failures), TLS certificate - health (expired, expiring soon), and security group denials. - - Background: - Given a valid "apiKeyAuth" key in the system - And a valid "appKeyAuth" key in the system - And an instance of "NetworkHealthInsights" API - And operation "ListNetworkHealthInsights" enabled - And new "ListNetworkHealthInsights" request - - @generated @skip @team:ddoghq/cloud-network-monitoring - Scenario: List network health insights returns "Bad Request" response - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:ddoghq/cloud-network-monitoring - Scenario: List network health insights returns "OK" response - When the request is sent - Then the response status is 200 OK diff --git a/tests/v2/features/undo.json b/tests/v2/features/undo.json index 6b0fafaa06..7503e3bae3 100644 --- a/tests/v2/features/undo.json +++ b/tests/v2/features/undo.json @@ -6436,12 +6436,6 @@ "type": "idempotent" } }, - "ListNetworkHealthInsights": { - "tag": "Network Health Insights", - "undo": { - "type": "safe" - } - }, "GetAggregatedConnections": { "tag": "Cloud Network Monitoring", "undo": {