diff --git a/.apigentools-info b/.apigentools-info index c4276b24352..09f5631e1bf 100644 --- a/.apigentools-info +++ b/.apigentools-info @@ -4,13 +4,13 @@ "spec_versions": { "v1": { "apigentools_version": "1.6.6", - "regenerated": "2025-04-24 04:43:27.827629", - "spec_repo_commit": "ab6a0f8c" + "regenerated": "2025-04-24 14:25:48.291618", + "spec_repo_commit": "ff8c84cf" }, "v2": { "apigentools_version": "1.6.6", - "regenerated": "2025-04-24 04:43:27.844051", - "spec_repo_commit": "ab6a0f8c" + "regenerated": "2025-04-24 14:25:48.310803", + "spec_repo_commit": "ff8c84cf" } } } \ No newline at end of file diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 4c3cd21bc9c..4dbe5da7864 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -22502,6 +22502,66 @@ components: required: - data type: object + ObservabilityPipelineAddEnvVarsProcessor: + description: The `add_env_vars` processor adds environment variable values to + log events. + properties: + id: + description: The unique identifier for this component. Used to reference + this processor in the pipeline. + example: add-env-vars-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor + targets. + example: service:my-service + type: string + inputs: + description: A list of component IDs whose output is used as the input for + this processor. + example: + - datadog-agent-source + items: + type: string + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessorType' + variables: + description: A list of environment variable mappings to apply to log fields. + items: + $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessorVariable' + type: array + required: + - id + - type + - include + - inputs + - variables + type: object + ObservabilityPipelineAddEnvVarsProcessorType: + default: add_env_vars + description: The processor type. The value should always be `add_env_vars`. + enum: + - add_env_vars + example: add_env_vars + type: string + x-enum-varnames: + - ADD_ENV_VARS + ObservabilityPipelineAddEnvVarsProcessorVariable: + description: Defines a mapping between an environment variable and a log field. + properties: + field: + description: The target field in the log event. + example: log.environment.region + type: string + name: + description: The name of the environment variable to read. + example: AWS_REGION + type: string + required: + - field + - name + type: object ObservabilityPipelineAddFieldsProcessor: description: The `add_fields` processor adds static key-value fields to logs. properties: @@ -22548,6 +22608,50 @@ components: type: string x-enum-varnames: - ADD_FIELDS + ObservabilityPipelineAmazonDataFirehoseSource: + description: The `amazon_data_firehose` source ingests logs from AWS Data Firehose. + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' + id: + description: The unique identifier for this component. Used to reference + this component in other parts of the pipeline (e.g., as input to downstream + components). + example: amazon-firehose-source + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineAmazonDataFirehoseSourceType' + required: + - id + - type + type: object + ObservabilityPipelineAmazonDataFirehoseSourceType: + default: amazon_data_firehose + description: The source type. The value should always be `amazon_data_firehose`. + enum: + - amazon_data_firehose + example: amazon_data_firehose + type: string + x-enum-varnames: + - AMAZON_DATA_FIREHOSE + ObservabilityPipelineAwsAuth: + description: "AWS authentication credentials used for accessing AWS services + such as S3.\nIf omitted, the system\u2019s default credentials are used (for + example, the IAM role and environment variables).\n" + properties: + assume_role: + description: The Amazon Resource Name (ARN) of the role to assume. + type: string + external_id: + description: A unique identifier for cross-account role assumption. + type: string + session_name: + description: A session identifier used for logging and tracing the assumed + role session. + type: string + type: object ObservabilityPipelineConfig: description: Specifies the pipeline's configuration, including its sources, processors, and destinations. @@ -22590,6 +22694,9 @@ components: description: A destination for the pipeline. oneOf: - $ref: '#/components/schemas/ObservabilityPipelineDatadogLogsDestination' + - $ref: '#/components/schemas/ObservabilityPipelineGoogleChronicleDestination' + - $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestination' + - $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestination' ObservabilityPipelineConfigProcessorItem: description: A processor for the pipeline. oneOf: @@ -22599,11 +22706,21 @@ components: - $ref: '#/components/schemas/ObservabilityPipelineAddFieldsProcessor' - $ref: '#/components/schemas/ObservabilityPipelineRemoveFieldsProcessor' - $ref: '#/components/schemas/ObservabilityPipelineRenameFieldsProcessor' + - $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessor' + - $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessor' + - $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessor' + - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableProcessor' + - $ref: '#/components/schemas/ObservabilityPipelineReduceProcessor' + - $ref: '#/components/schemas/ObservabilityPipelineThrottleProcessor' ObservabilityPipelineConfigSourceItem: description: A data source for the pipeline. oneOf: - $ref: '#/components/schemas/ObservabilityPipelineKafkaSource' - $ref: '#/components/schemas/ObservabilityPipelineDatadogAgentSource' + - $ref: '#/components/schemas/ObservabilityPipelineAmazonDataFirehoseSource' + - $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubSource' + - $ref: '#/components/schemas/ObservabilityPipelineHttpClientSource' + - $ref: '#/components/schemas/ObservabilityPipelineLogstashSource' ObservabilityPipelineCreateRequest: description: Top-level schema representing a pipeline. properties: @@ -22718,6 +22835,259 @@ components: type: string x-enum-varnames: - DATADOG_LOGS + ObservabilityPipelineDecoding: + description: The decoding format used to interpret incoming logs. + enum: + - bytes + - gelf + - json + - syslog + example: json + type: string + x-enum-varnames: + - DECODE_BYTES + - DECODE_GELF + - DECODE_JSON + - DECODE_SYSLOG + ObservabilityPipelineDedupeProcessor: + description: The `dedupe` processor removes duplicate fields in log events. + properties: + fields: + description: A list of log field paths to check for duplicates. + example: + - log.message + - log.error + items: + type: string + type: array + id: + description: The unique identifier for this processor. + example: dedupe-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor + targets. + example: service:my-service + type: string + inputs: + description: A list of component IDs whose output is used as the input for + this processor. + example: + - parse-json-processor + items: + type: string + type: array + mode: + $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorMode' + type: + $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorType' + required: + - id + - type + - include + - inputs + - fields + - mode + type: object + ObservabilityPipelineDedupeProcessorMode: + description: The deduplication mode to apply to the fields. + enum: + - match + - ignore + example: match + type: string + x-enum-varnames: + - MATCH + - IGNORE + ObservabilityPipelineDedupeProcessorType: + default: dedupe + description: The processor type. The value should always be `dedupe`. + enum: + - dedupe + example: dedupe + type: string + x-enum-varnames: + - DEDUPE + ObservabilityPipelineEnrichmentTableFile: + description: Defines a static enrichment table loaded from a CSV file. + properties: + encoding: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileEncoding' + key: + description: Key fields used to look up enrichment values. + items: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItems' + type: array + path: + description: Path to the CSV file. + example: /etc/enrichment/lookup.csv + type: string + schema: + description: Schema defining column names and their types. + items: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItems' + type: array + required: + - encoding + - key + - path + - schema + type: object + ObservabilityPipelineEnrichmentTableFileEncoding: + description: File encoding format. + properties: + delimiter: + description: The `encoding` `delimiter`. + example: ',' + type: string + includes_headers: + description: The `encoding` `includes_headers`. + example: true + type: boolean + type: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileEncodingType' + required: + - type + - delimiter + - includes_headers + type: object + ObservabilityPipelineEnrichmentTableFileEncodingType: + description: The definition of `ObservabilityPipelineEnrichmentTableFileEncodingType` + object. + enum: + - csv + example: csv + type: string + x-enum-varnames: + - CSV + ObservabilityPipelineEnrichmentTableFileKeyItems: + description: The definition of `ObservabilityPipelineEnrichmentTableFileKeyItems` + object. + properties: + column: + description: The `items` `column`. + example: user_id + type: string + comparison: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison' + field: + description: The `items` `field`. + example: log.user.id + type: string + required: + - column + - comparison + - field + type: object + ObservabilityPipelineEnrichmentTableFileKeyItemsComparison: + description: The definition of `ObservabilityPipelineEnrichmentTableFileKeyItemsComparison` + object. + enum: + - equals + example: equals + type: string + x-enum-varnames: + - EQUALS + ObservabilityPipelineEnrichmentTableFileSchemaItems: + description: The definition of `ObservabilityPipelineEnrichmentTableFileSchemaItems` + object. + properties: + column: + description: The `items` `column`. + example: region + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItemsType' + required: + - column + - type + type: object + ObservabilityPipelineEnrichmentTableFileSchemaItemsType: + description: The definition of `ObservabilityPipelineEnrichmentTableFileSchemaItemsType` + object. + enum: + - string + - boolean + - integer + - float + - date + - timestamp + example: string + type: string + x-enum-varnames: + - STRING + - BOOLEAN + - INTEGER + - FLOAT + - DATE + - TIMESTAMP + ObservabilityPipelineEnrichmentTableGeoIp: + description: Uses a GeoIP database to enrich logs based on an IP field. + properties: + key_field: + description: Path to the IP field in the log. + example: log.source.ip + type: string + locale: + description: Locale used to resolve geographical names. + example: en + type: string + path: + description: Path to the GeoIP database file. + example: /etc/geoip/GeoLite2-City.mmdb + type: string + required: + - key_field + - locale + - path + type: object + ObservabilityPipelineEnrichmentTableProcessor: + description: The `enrichment_table` processor enriches logs using a static CSV + file or GeoIP database. + properties: + file: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFile' + geoip: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableGeoIp' + id: + description: The unique identifier for this processor. + example: enrichment-table-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor + targets. + example: source:my-source + type: string + inputs: + description: A list of component IDs whose output is used as the input for + this processor. + example: + - add-fields-processor + items: + type: string + type: array + target: + description: Path where enrichment results should be stored in the log. + example: enriched.geoip + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableProcessorType' + required: + - id + - type + - include + - inputs + - target + type: object + ObservabilityPipelineEnrichmentTableProcessorType: + default: enrichment_table + description: The processor type. The value should always be `enrichment_table`. + enum: + - enrichment_table + example: enrichment_table + type: string + x-enum-varnames: + - ENRICHMENT_TABLE ObservabilityPipelineFieldValue: description: Represents a static key-value pair used in various processors. properties: @@ -22775,6 +23145,168 @@ components: type: string x-enum-varnames: - FILTER + ObservabilityPipelineGcpAuth: + description: 'GCP credentials used to authenticate with Google Cloud Storage. + + ' + properties: + credentials_file: + description: Path to the GCP service account key file. + example: /var/secrets/gcp-credentials.json + type: string + required: + - credentials_file + type: object + ObservabilityPipelineGoogleChronicleDestination: + description: The `google_chronicle` destination sends logs to Google Chronicle. + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' + customer_id: + description: The Google Chronicle customer ID. + example: abcdefg123456789 + type: string + encoding: + $ref: '#/components/schemas/ObservabilityPipelineGoogleChronicleDestinationEncoding' + id: + description: The unique identifier for this component. + example: google-chronicle-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` + for this component. + example: + - parse-json-processor + items: + type: string + type: array + log_type: + description: The log type metadata associated with the Chronicle destination. + example: nginx_logs + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineGoogleChronicleDestinationType' + required: + - id + - type + - inputs + - auth + - customer_id + type: object + ObservabilityPipelineGoogleChronicleDestinationEncoding: + description: The encoding format for the logs sent to Chronicle. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineGoogleChronicleDestinationType: + default: google_chronicle + description: The destination type. The value should always be `google_chronicle`. + enum: + - google_chronicle + example: google_chronicle + type: string + x-enum-varnames: + - GOOGLE_CHRONICLE + ObservabilityPipelineGooglePubSubSource: + description: The `google_pubsub` source ingests logs from a Google Cloud Pub/Sub + subscription. + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' + decoding: + $ref: '#/components/schemas/ObservabilityPipelineDecoding' + id: + description: The unique identifier for this component. Used to reference + this component in other parts of the pipeline (e.g., as input to downstream + components). + example: google-pubsub-source + type: string + project: + description: The GCP project ID that owns the Pub/Sub subscription. + example: my-gcp-project + type: string + subscription: + description: The Pub/Sub subscription name from which messages are consumed. + example: logs-subscription + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubSourceType' + required: + - id + - type + - auth + - decoding + - project + - subscription + type: object + ObservabilityPipelineGooglePubSubSourceType: + default: google_pubsub + description: The source type. The value should always be `google_pubsub`. + enum: + - google_pubsub + example: google_pubsub + type: string + x-enum-varnames: + - GOOGLE_PUBSUB + ObservabilityPipelineHttpClientSource: + description: The `http_client` source scrapes logs from HTTP endpoints at regular + intervals. + properties: + auth_strategy: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientSourceAuthStrategy' + decoding: + $ref: '#/components/schemas/ObservabilityPipelineDecoding' + id: + description: The unique identifier for this component. Used to reference + this component in other parts of the pipeline (e.g., as input to downstream + components). + example: http-client-source + type: string + scrape_interval_secs: + description: The interval (in seconds) between HTTP scrape requests. + example: 60 + format: int64 + type: integer + scrape_timeout_secs: + description: The timeout (in seconds) for each scrape request. + example: 10 + format: int64 + type: integer + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientSourceType' + required: + - id + - type + - decoding + type: object + ObservabilityPipelineHttpClientSourceAuthStrategy: + description: Optional authentication strategy for HTTP requests. + enum: + - basic + - bearer + example: basic + type: string + x-enum-varnames: + - BASIC + - BEARER + ObservabilityPipelineHttpClientSourceType: + default: http_client + description: The source type. The value should always be `http_client`. + enum: + - http_client + example: http_client + type: string + x-enum-varnames: + - HTTP_CLIENT ObservabilityPipelineKafkaSource: description: The `kafka` source ingests data from Apache Kafka topics. properties: @@ -22848,6 +23380,169 @@ components: type: string x-enum-varnames: - KAFKA + ObservabilityPipelineLogstashSource: + description: The `logstash` source ingests logs from a Logstash forwarder. + properties: + id: + description: The unique identifier for this component. Used to reference + this component in other parts of the pipeline (e.g., as input to downstream + components). + example: logstash-source + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineLogstashSourceType' + required: + - id + - type + type: object + ObservabilityPipelineLogstashSourceType: + default: logstash + description: The source type. The value should always be `logstash`. + enum: + - logstash + example: logstash + type: string + x-enum-varnames: + - LOGSTASH + ObservabilityPipelineNewRelicDestination: + description: The `new_relic` destination sends logs to the New Relic platform. + properties: + id: + description: The unique identifier for this component. + example: new-relic-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` + for this component. + example: + - parse-json-processor + items: + type: string + type: array + region: + $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestinationRegion' + type: + $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestinationType' + required: + - id + - type + - inputs + - region + type: object + ObservabilityPipelineNewRelicDestinationRegion: + description: The New Relic region. + enum: + - us + - eu + example: us + type: string + x-enum-varnames: + - US + - EU + ObservabilityPipelineNewRelicDestinationType: + default: new_relic + description: The destination type. The value should always be `new_relic`. + enum: + - new_relic + example: new_relic + type: string + x-enum-varnames: + - NEW_RELIC + ObservabilityPipelineOcsfMapperProcessor: + description: The `ocsf_mapper` processor transforms logs into the OCSF schema + using a predefined mapping configuration. + properties: + id: + description: The unique identifier for this component. Used to reference + this component in other parts of the pipeline. + example: ocsf-mapper-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor + targets. + example: service:my-service + type: string + inputs: + description: A list of component IDs whose output is used as the `input` + for this processor. + example: + - filter-processor + items: + type: string + type: array + mappings: + description: A list of mapping rules to convert events to the OCSF format. + items: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorMapping' + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorType' + required: + - id + - type + - include + - inputs + - mappings + type: object + ObservabilityPipelineOcsfMapperProcessorMapping: + description: Defines how specific events are transformed to OCSF using a mapping + configuration. + properties: + include: + description: A Datadog search query used to select the logs that this mapping + should apply to. + example: service:my-service + type: string + mapping: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorMappingMapping' + required: + - include + - mapping + type: object + ObservabilityPipelineOcsfMapperProcessorMappingMapping: + description: The definition of `ObservabilityPipelineOcsfMapperProcessorMappingMapping` + object. + oneOf: + - $ref: '#/components/schemas/ObservabilityPipelineOcsfMappingLibrary' + ObservabilityPipelineOcsfMapperProcessorType: + default: ocsf_mapper + description: The processor type. The value should always be `ocsf_mapper`. + enum: + - ocsf_mapper + example: ocsf_mapper + type: string + x-enum-varnames: + - OCSF_MAPPER + ObservabilityPipelineOcsfMappingLibrary: + description: Predefined library mappings for common log formats. + enum: + - CloudTrail Account Change + - GCP Cloud Audit CreateBucket + - GCP Cloud Audit CreateSink + - GCP Cloud Audit SetIamPolicy + - GCP Cloud Audit UpdateSink + - Github Audit Log API Activity + - Google Workspace Admin Audit addPrivilege + - Microsoft 365 Defender Incident + - Microsoft 365 Defender UserLoggedIn + - Okta System Log Authentication + - Palo Alto Networks Firewall Traffic + example: CloudTrail Account Change + type: string + x-enum-varnames: + - CLOUDTRAIL_ACCOUNT_CHANGE + - GCP_CLOUD_AUDIT_CREATEBUCKET + - GCP_CLOUD_AUDIT_CREATESINK + - GCP_CLOUD_AUDIT_SETIAMPOLICY + - GCP_CLOUD_AUDIT_UPDATESINK + - GITHUB_AUDIT_LOG_API_ACTIVITY + - GOOGLE_WORKSPACE_ADMIN_AUDIT_ADDPRIVILEGE + - MICROSOFT_365_DEFENDER_INCIDENT + - MICROSOFT_365_DEFENDER_USERLOGGEDIN + - OKTA_SYSTEM_LOG_AUTHENTICATION + - PALO_ALTO_NETWORKS_FIREWALL_TRAFFIC ObservabilityPipelineParseJSONProcessor: description: The `parse_json` processor extracts JSON from a specified field and flattens it into the event. This is useful when logs contain embedded @@ -23022,6 +23717,103 @@ components: type: string x-enum-varnames: - QUOTA + ObservabilityPipelineReduceProcessor: + description: The `reduce` processor aggregates and merges logs based on matching + keys and merge strategies. + properties: + group_by: + description: A list of fields used to group log events for merging. + example: + - log.user.id + - log.device.id + items: + type: string + type: array + id: + description: The unique identifier for this processor. + example: reduce-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor + targets. + example: env:prod + type: string + inputs: + description: A list of component IDs whose output is used as the input for + this processor. + example: + - parse-json-processor + items: + type: string + type: array + merge_strategies: + description: List of merge strategies defining how values from grouped events + should be combined. + items: + $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategy' + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorType' + required: + - id + - type + - include + - inputs + - group_by + - merge_strategies + type: object + ObservabilityPipelineReduceProcessorMergeStrategy: + description: Defines how a specific field should be merged across grouped events. + properties: + path: + description: The field path in the log event. + example: log.user.roles + type: string + strategy: + $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategyStrategy' + required: + - path + - strategy + type: object + ObservabilityPipelineReduceProcessorMergeStrategyStrategy: + description: The merge strategy to apply. + enum: + - discard + - retain + - sum + - max + - min + - array + - concat + - concat_newline + - concat_raw + - shortest_array + - longest_array + - flat_unique + example: flat_unique + type: string + x-enum-varnames: + - DISCARD + - RETAIN + - SUM + - MAX + - MIN + - ARRAY + - CONCAT + - CONCAT_NEWLINE + - CONCAT_RAW + - SHORTEST_ARRAY + - LONGEST_ARRAY + - FLAT_UNIQUE + ObservabilityPipelineReduceProcessorType: + default: reduce + description: The processor type. The value should always be `reduce`. + enum: + - reduce + example: reduce + type: string + x-enum-varnames: + - REDUCE ObservabilityPipelineRemoveFieldsProcessor: description: The `remove_fields` processor deletes specified fields from logs. properties: @@ -23137,6 +23929,112 @@ components: type: string x-enum-varnames: - RENAME_FIELDS + ObservabilityPipelineSentinelOneDestination: + description: The `sentinel_one` destination sends logs to SentinelOne. + properties: + id: + description: The unique identifier for this component. + example: sentinelone-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` + for this component. + example: + - filter-processor + items: + type: string + type: array + region: + $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestinationRegion' + type: + $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestinationType' + required: + - id + - type + - inputs + - region + type: object + ObservabilityPipelineSentinelOneDestinationRegion: + description: The SentinelOne region to send logs to. + enum: + - us + - eu + - ca + - data_set_us + example: us + type: string + x-enum-varnames: + - US + - EU + - CA + - DATA_SET_US + ObservabilityPipelineSentinelOneDestinationType: + default: sentinel_one + description: The destination type. The value should always be `sentinel_one`. + enum: + - sentinel_one + example: sentinel_one + type: string + x-enum-varnames: + - SENTINEL_ONE + ObservabilityPipelineThrottleProcessor: + description: The `throttle` processor limits the number of events that pass + through over a given time window. + properties: + group_by: + description: Optional list of fields used to group events before applying + throttling. + example: + - log.user.id + items: + type: string + type: array + id: + description: The unique identifier for this processor. + example: throttle-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor + targets. + example: env:prod + type: string + inputs: + description: A list of component IDs whose output is used as the input for + this processor. + example: + - datadog-agent-source + items: + type: string + type: array + threshold: + description: The number of events to allow before throttling is applied. + example: 1000 + format: int64 + type: integer + type: + $ref: '#/components/schemas/ObservabilityPipelineThrottleProcessorType' + window: + description: The time window in seconds over which the threshold applies. + example: 60.0 + format: double + type: number + required: + - id + - type + - include + - inputs + - threshold + - window + type: object + ObservabilityPipelineThrottleProcessorType: + default: throttle + description: The processor type. The value should always be `throttle`. + enum: + - throttle + example: throttle + type: string + x-enum-varnames: + - THROTTLE ObservabilityPipelineTls: description: Configuration for enabling TLS encryption. properties: diff --git a/packages/datadog-api-client-v2/index.ts b/packages/datadog-api-client-v2/index.ts index 287ae1b3322..c031b73a430 100644 --- a/packages/datadog-api-client-v2/index.ts +++ b/packages/datadog-api-client-v2/index.ts @@ -2078,8 +2078,14 @@ export { NullableRelationshipToUserData } from "./models/NullableRelationshipToU export { NullableUserRelationship } from "./models/NullableUserRelationship"; export { NullableUserRelationshipData } from "./models/NullableUserRelationshipData"; export { ObservabilityPipeline } from "./models/ObservabilityPipeline"; +export { ObservabilityPipelineAddEnvVarsProcessor } from "./models/ObservabilityPipelineAddEnvVarsProcessor"; +export { ObservabilityPipelineAddEnvVarsProcessorType } from "./models/ObservabilityPipelineAddEnvVarsProcessorType"; +export { ObservabilityPipelineAddEnvVarsProcessorVariable } from "./models/ObservabilityPipelineAddEnvVarsProcessorVariable"; export { ObservabilityPipelineAddFieldsProcessor } from "./models/ObservabilityPipelineAddFieldsProcessor"; export { ObservabilityPipelineAddFieldsProcessorType } from "./models/ObservabilityPipelineAddFieldsProcessorType"; +export { ObservabilityPipelineAmazonDataFirehoseSource } from "./models/ObservabilityPipelineAmazonDataFirehoseSource"; +export { ObservabilityPipelineAmazonDataFirehoseSourceType } from "./models/ObservabilityPipelineAmazonDataFirehoseSourceType"; +export { ObservabilityPipelineAwsAuth } from "./models/ObservabilityPipelineAwsAuth"; export { ObservabilityPipelineConfig } from "./models/ObservabilityPipelineConfig"; export { ObservabilityPipelineConfigDestinationItem } from "./models/ObservabilityPipelineConfigDestinationItem"; export { ObservabilityPipelineConfigProcessorItem } from "./models/ObservabilityPipelineConfigProcessorItem"; @@ -2092,13 +2098,46 @@ export { ObservabilityPipelineDatadogAgentSource } from "./models/ObservabilityP export { ObservabilityPipelineDatadogAgentSourceType } from "./models/ObservabilityPipelineDatadogAgentSourceType"; export { ObservabilityPipelineDatadogLogsDestination } from "./models/ObservabilityPipelineDatadogLogsDestination"; export { ObservabilityPipelineDatadogLogsDestinationType } from "./models/ObservabilityPipelineDatadogLogsDestinationType"; +export { ObservabilityPipelineDecoding } from "./models/ObservabilityPipelineDecoding"; +export { ObservabilityPipelineDedupeProcessor } from "./models/ObservabilityPipelineDedupeProcessor"; +export { ObservabilityPipelineDedupeProcessorMode } from "./models/ObservabilityPipelineDedupeProcessorMode"; +export { ObservabilityPipelineDedupeProcessorType } from "./models/ObservabilityPipelineDedupeProcessorType"; +export { ObservabilityPipelineEnrichmentTableFile } from "./models/ObservabilityPipelineEnrichmentTableFile"; +export { ObservabilityPipelineEnrichmentTableFileEncoding } from "./models/ObservabilityPipelineEnrichmentTableFileEncoding"; +export { ObservabilityPipelineEnrichmentTableFileEncodingType } from "./models/ObservabilityPipelineEnrichmentTableFileEncodingType"; +export { ObservabilityPipelineEnrichmentTableFileKeyItems } from "./models/ObservabilityPipelineEnrichmentTableFileKeyItems"; +export { ObservabilityPipelineEnrichmentTableFileKeyItemsComparison } from "./models/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison"; +export { ObservabilityPipelineEnrichmentTableFileSchemaItems } from "./models/ObservabilityPipelineEnrichmentTableFileSchemaItems"; +export { ObservabilityPipelineEnrichmentTableFileSchemaItemsType } from "./models/ObservabilityPipelineEnrichmentTableFileSchemaItemsType"; +export { ObservabilityPipelineEnrichmentTableGeoIp } from "./models/ObservabilityPipelineEnrichmentTableGeoIp"; +export { ObservabilityPipelineEnrichmentTableProcessor } from "./models/ObservabilityPipelineEnrichmentTableProcessor"; +export { ObservabilityPipelineEnrichmentTableProcessorType } from "./models/ObservabilityPipelineEnrichmentTableProcessorType"; export { ObservabilityPipelineFieldValue } from "./models/ObservabilityPipelineFieldValue"; export { ObservabilityPipelineFilterProcessor } from "./models/ObservabilityPipelineFilterProcessor"; export { ObservabilityPipelineFilterProcessorType } from "./models/ObservabilityPipelineFilterProcessorType"; +export { ObservabilityPipelineGcpAuth } from "./models/ObservabilityPipelineGcpAuth"; +export { ObservabilityPipelineGoogleChronicleDestination } from "./models/ObservabilityPipelineGoogleChronicleDestination"; +export { ObservabilityPipelineGoogleChronicleDestinationEncoding } from "./models/ObservabilityPipelineGoogleChronicleDestinationEncoding"; +export { ObservabilityPipelineGoogleChronicleDestinationType } from "./models/ObservabilityPipelineGoogleChronicleDestinationType"; +export { ObservabilityPipelineGooglePubSubSource } from "./models/ObservabilityPipelineGooglePubSubSource"; +export { ObservabilityPipelineGooglePubSubSourceType } from "./models/ObservabilityPipelineGooglePubSubSourceType"; +export { ObservabilityPipelineHttpClientSource } from "./models/ObservabilityPipelineHttpClientSource"; +export { ObservabilityPipelineHttpClientSourceAuthStrategy } from "./models/ObservabilityPipelineHttpClientSourceAuthStrategy"; +export { ObservabilityPipelineHttpClientSourceType } from "./models/ObservabilityPipelineHttpClientSourceType"; export { ObservabilityPipelineKafkaSource } from "./models/ObservabilityPipelineKafkaSource"; export { ObservabilityPipelineKafkaSourceLibrdkafkaOption } from "./models/ObservabilityPipelineKafkaSourceLibrdkafkaOption"; export { ObservabilityPipelineKafkaSourceSasl } from "./models/ObservabilityPipelineKafkaSourceSasl"; export { ObservabilityPipelineKafkaSourceType } from "./models/ObservabilityPipelineKafkaSourceType"; +export { ObservabilityPipelineLogstashSource } from "./models/ObservabilityPipelineLogstashSource"; +export { ObservabilityPipelineLogstashSourceType } from "./models/ObservabilityPipelineLogstashSourceType"; +export { ObservabilityPipelineNewRelicDestination } from "./models/ObservabilityPipelineNewRelicDestination"; +export { ObservabilityPipelineNewRelicDestinationRegion } from "./models/ObservabilityPipelineNewRelicDestinationRegion"; +export { ObservabilityPipelineNewRelicDestinationType } from "./models/ObservabilityPipelineNewRelicDestinationType"; +export { ObservabilityPipelineOcsfMapperProcessor } from "./models/ObservabilityPipelineOcsfMapperProcessor"; +export { ObservabilityPipelineOcsfMapperProcessorMapping } from "./models/ObservabilityPipelineOcsfMapperProcessorMapping"; +export { ObservabilityPipelineOcsfMapperProcessorMappingMapping } from "./models/ObservabilityPipelineOcsfMapperProcessorMappingMapping"; +export { ObservabilityPipelineOcsfMapperProcessorType } from "./models/ObservabilityPipelineOcsfMapperProcessorType"; +export { ObservabilityPipelineOcsfMappingLibrary } from "./models/ObservabilityPipelineOcsfMappingLibrary"; export { ObservabilityPipelineParseJSONProcessor } from "./models/ObservabilityPipelineParseJSONProcessor"; export { ObservabilityPipelineParseJSONProcessorType } from "./models/ObservabilityPipelineParseJSONProcessorType"; export { ObservabilityPipelinePipelineKafkaSourceSaslMechanism } from "./models/ObservabilityPipelinePipelineKafkaSourceSaslMechanism"; @@ -2107,11 +2146,20 @@ export { ObservabilityPipelineQuotaProcessorLimit } from "./models/Observability export { ObservabilityPipelineQuotaProcessorLimitEnforceType } from "./models/ObservabilityPipelineQuotaProcessorLimitEnforceType"; export { ObservabilityPipelineQuotaProcessorOverride } from "./models/ObservabilityPipelineQuotaProcessorOverride"; export { ObservabilityPipelineQuotaProcessorType } from "./models/ObservabilityPipelineQuotaProcessorType"; +export { ObservabilityPipelineReduceProcessor } from "./models/ObservabilityPipelineReduceProcessor"; +export { ObservabilityPipelineReduceProcessorMergeStrategy } from "./models/ObservabilityPipelineReduceProcessorMergeStrategy"; +export { ObservabilityPipelineReduceProcessorMergeStrategyStrategy } from "./models/ObservabilityPipelineReduceProcessorMergeStrategyStrategy"; +export { ObservabilityPipelineReduceProcessorType } from "./models/ObservabilityPipelineReduceProcessorType"; export { ObservabilityPipelineRemoveFieldsProcessor } from "./models/ObservabilityPipelineRemoveFieldsProcessor"; export { ObservabilityPipelineRemoveFieldsProcessorType } from "./models/ObservabilityPipelineRemoveFieldsProcessorType"; export { ObservabilityPipelineRenameFieldsProcessor } from "./models/ObservabilityPipelineRenameFieldsProcessor"; export { ObservabilityPipelineRenameFieldsProcessorField } from "./models/ObservabilityPipelineRenameFieldsProcessorField"; export { ObservabilityPipelineRenameFieldsProcessorType } from "./models/ObservabilityPipelineRenameFieldsProcessorType"; +export { ObservabilityPipelineSentinelOneDestination } from "./models/ObservabilityPipelineSentinelOneDestination"; +export { ObservabilityPipelineSentinelOneDestinationRegion } from "./models/ObservabilityPipelineSentinelOneDestinationRegion"; +export { ObservabilityPipelineSentinelOneDestinationType } from "./models/ObservabilityPipelineSentinelOneDestinationType"; +export { ObservabilityPipelineThrottleProcessor } from "./models/ObservabilityPipelineThrottleProcessor"; +export { ObservabilityPipelineThrottleProcessorType } from "./models/ObservabilityPipelineThrottleProcessorType"; export { ObservabilityPipelineTls } from "./models/ObservabilityPipelineTls"; export { OktaAccount } from "./models/OktaAccount"; export { OktaAccountAttributes } from "./models/OktaAccountAttributes"; diff --git a/packages/datadog-api-client-v2/models/ObjectSerializer.ts b/packages/datadog-api-client-v2/models/ObjectSerializer.ts index 1892f3fadb3..24ce61bad90 100644 --- a/packages/datadog-api-client-v2/models/ObjectSerializer.ts +++ b/packages/datadog-api-client-v2/models/ObjectSerializer.ts @@ -1056,7 +1056,11 @@ import { NullableRelationshipToUserData } from "./NullableRelationshipToUserData import { NullableUserRelationship } from "./NullableUserRelationship"; import { NullableUserRelationshipData } from "./NullableUserRelationshipData"; import { ObservabilityPipeline } from "./ObservabilityPipeline"; +import { ObservabilityPipelineAddEnvVarsProcessor } from "./ObservabilityPipelineAddEnvVarsProcessor"; +import { ObservabilityPipelineAddEnvVarsProcessorVariable } from "./ObservabilityPipelineAddEnvVarsProcessorVariable"; import { ObservabilityPipelineAddFieldsProcessor } from "./ObservabilityPipelineAddFieldsProcessor"; +import { ObservabilityPipelineAmazonDataFirehoseSource } from "./ObservabilityPipelineAmazonDataFirehoseSource"; +import { ObservabilityPipelineAwsAuth } from "./ObservabilityPipelineAwsAuth"; import { ObservabilityPipelineConfig } from "./ObservabilityPipelineConfig"; import { ObservabilityPipelineCreateRequest } from "./ObservabilityPipelineCreateRequest"; import { ObservabilityPipelineCreateRequestData } from "./ObservabilityPipelineCreateRequestData"; @@ -1064,18 +1068,37 @@ import { ObservabilityPipelineData } from "./ObservabilityPipelineData"; import { ObservabilityPipelineDataAttributes } from "./ObservabilityPipelineDataAttributes"; import { ObservabilityPipelineDatadogAgentSource } from "./ObservabilityPipelineDatadogAgentSource"; import { ObservabilityPipelineDatadogLogsDestination } from "./ObservabilityPipelineDatadogLogsDestination"; +import { ObservabilityPipelineDedupeProcessor } from "./ObservabilityPipelineDedupeProcessor"; +import { ObservabilityPipelineEnrichmentTableFile } from "./ObservabilityPipelineEnrichmentTableFile"; +import { ObservabilityPipelineEnrichmentTableFileEncoding } from "./ObservabilityPipelineEnrichmentTableFileEncoding"; +import { ObservabilityPipelineEnrichmentTableFileKeyItems } from "./ObservabilityPipelineEnrichmentTableFileKeyItems"; +import { ObservabilityPipelineEnrichmentTableFileSchemaItems } from "./ObservabilityPipelineEnrichmentTableFileSchemaItems"; +import { ObservabilityPipelineEnrichmentTableGeoIp } from "./ObservabilityPipelineEnrichmentTableGeoIp"; +import { ObservabilityPipelineEnrichmentTableProcessor } from "./ObservabilityPipelineEnrichmentTableProcessor"; import { ObservabilityPipelineFieldValue } from "./ObservabilityPipelineFieldValue"; import { ObservabilityPipelineFilterProcessor } from "./ObservabilityPipelineFilterProcessor"; +import { ObservabilityPipelineGcpAuth } from "./ObservabilityPipelineGcpAuth"; +import { ObservabilityPipelineGoogleChronicleDestination } from "./ObservabilityPipelineGoogleChronicleDestination"; +import { ObservabilityPipelineGooglePubSubSource } from "./ObservabilityPipelineGooglePubSubSource"; +import { ObservabilityPipelineHttpClientSource } from "./ObservabilityPipelineHttpClientSource"; import { ObservabilityPipelineKafkaSource } from "./ObservabilityPipelineKafkaSource"; import { ObservabilityPipelineKafkaSourceLibrdkafkaOption } from "./ObservabilityPipelineKafkaSourceLibrdkafkaOption"; import { ObservabilityPipelineKafkaSourceSasl } from "./ObservabilityPipelineKafkaSourceSasl"; +import { ObservabilityPipelineLogstashSource } from "./ObservabilityPipelineLogstashSource"; +import { ObservabilityPipelineNewRelicDestination } from "./ObservabilityPipelineNewRelicDestination"; +import { ObservabilityPipelineOcsfMapperProcessor } from "./ObservabilityPipelineOcsfMapperProcessor"; +import { ObservabilityPipelineOcsfMapperProcessorMapping } from "./ObservabilityPipelineOcsfMapperProcessorMapping"; import { ObservabilityPipelineParseJSONProcessor } from "./ObservabilityPipelineParseJSONProcessor"; import { ObservabilityPipelineQuotaProcessor } from "./ObservabilityPipelineQuotaProcessor"; import { ObservabilityPipelineQuotaProcessorLimit } from "./ObservabilityPipelineQuotaProcessorLimit"; import { ObservabilityPipelineQuotaProcessorOverride } from "./ObservabilityPipelineQuotaProcessorOverride"; +import { ObservabilityPipelineReduceProcessor } from "./ObservabilityPipelineReduceProcessor"; +import { ObservabilityPipelineReduceProcessorMergeStrategy } from "./ObservabilityPipelineReduceProcessorMergeStrategy"; import { ObservabilityPipelineRemoveFieldsProcessor } from "./ObservabilityPipelineRemoveFieldsProcessor"; import { ObservabilityPipelineRenameFieldsProcessor } from "./ObservabilityPipelineRenameFieldsProcessor"; import { ObservabilityPipelineRenameFieldsProcessorField } from "./ObservabilityPipelineRenameFieldsProcessorField"; +import { ObservabilityPipelineSentinelOneDestination } from "./ObservabilityPipelineSentinelOneDestination"; +import { ObservabilityPipelineThrottleProcessor } from "./ObservabilityPipelineThrottleProcessor"; import { ObservabilityPipelineTls } from "./ObservabilityPipelineTls"; import { OktaAccount } from "./OktaAccount"; import { OktaAccountAttributes } from "./OktaAccountAttributes"; @@ -2335,11 +2358,52 @@ const enumsMap: { [key: string]: any[] } = { MonitorDowntimeMatchResourceType: ["downtime_match"], MonitorNotificationRuleResourceType: ["monitor-notification-rule"], NotificationRulesType: ["notification_rules"], + ObservabilityPipelineAddEnvVarsProcessorType: ["add_env_vars"], ObservabilityPipelineAddFieldsProcessorType: ["add_fields"], + ObservabilityPipelineAmazonDataFirehoseSourceType: ["amazon_data_firehose"], ObservabilityPipelineDatadogAgentSourceType: ["datadog_agent"], ObservabilityPipelineDatadogLogsDestinationType: ["datadog_logs"], + ObservabilityPipelineDecoding: ["bytes", "gelf", "json", "syslog"], + ObservabilityPipelineDedupeProcessorMode: ["match", "ignore"], + ObservabilityPipelineDedupeProcessorType: ["dedupe"], + ObservabilityPipelineEnrichmentTableFileEncodingType: ["csv"], + ObservabilityPipelineEnrichmentTableFileKeyItemsComparison: ["equals"], + ObservabilityPipelineEnrichmentTableFileSchemaItemsType: [ + "string", + "boolean", + "integer", + "float", + "date", + "timestamp", + ], + ObservabilityPipelineEnrichmentTableProcessorType: ["enrichment_table"], ObservabilityPipelineFilterProcessorType: ["filter"], + ObservabilityPipelineGoogleChronicleDestinationEncoding: [ + "json", + "raw_message", + ], + ObservabilityPipelineGoogleChronicleDestinationType: ["google_chronicle"], + ObservabilityPipelineGooglePubSubSourceType: ["google_pubsub"], + ObservabilityPipelineHttpClientSourceAuthStrategy: ["basic", "bearer"], + ObservabilityPipelineHttpClientSourceType: ["http_client"], ObservabilityPipelineKafkaSourceType: ["kafka"], + ObservabilityPipelineLogstashSourceType: ["logstash"], + ObservabilityPipelineNewRelicDestinationRegion: ["us", "eu"], + ObservabilityPipelineNewRelicDestinationType: ["new_relic"], + ObservabilityPipelineOcsfMapperProcessorType: ["ocsf_mapper"], + ObservabilityPipelineOcsfMappingLibrary: [ + "CloudTrail Account Change", + "GCP Cloud Audit CreateBucket", + "GCP Cloud Audit CreateSink", + "GCP Cloud Audit SetIamPolicy", + "GCP Cloud Audit UpdateSink", + "Github Audit Log API Activity", + "Google Workspace Admin Audit addPrivilege", + "Microsoft 365 Defender Incident", + "Microsoft 365 Defender UserLoggedIn", + "Okta System Log Authentication", + "Palo Alto Networks Firewall Traffic", + ], ObservabilityPipelineParseJSONProcessorType: ["parse_json"], ObservabilityPipelinePipelineKafkaSourceSaslMechanism: [ "PLAIN", @@ -2348,8 +2412,31 @@ const enumsMap: { [key: string]: any[] } = { ], ObservabilityPipelineQuotaProcessorLimitEnforceType: ["bytes", "events"], ObservabilityPipelineQuotaProcessorType: ["quota"], + ObservabilityPipelineReduceProcessorMergeStrategyStrategy: [ + "discard", + "retain", + "sum", + "max", + "min", + "array", + "concat", + "concat_newline", + "concat_raw", + "shortest_array", + "longest_array", + "flat_unique", + ], + ObservabilityPipelineReduceProcessorType: ["reduce"], ObservabilityPipelineRemoveFieldsProcessorType: ["remove_fields"], ObservabilityPipelineRenameFieldsProcessorType: ["rename_fields"], + ObservabilityPipelineSentinelOneDestinationRegion: [ + "us", + "eu", + "ca", + "data_set_us", + ], + ObservabilityPipelineSentinelOneDestinationType: ["sentinel_one"], + ObservabilityPipelineThrottleProcessorType: ["throttle"], OktaAccountType: ["okta-accounts"], OnDemandConcurrencyCapType: ["on_demand_concurrency_cap"], OpsgenieServiceRegionType: ["us", "eu", "custom"], @@ -4072,8 +4159,15 @@ const typeMap: { [index: string]: any } = { NullableUserRelationship: NullableUserRelationship, NullableUserRelationshipData: NullableUserRelationshipData, ObservabilityPipeline: ObservabilityPipeline, + ObservabilityPipelineAddEnvVarsProcessor: + ObservabilityPipelineAddEnvVarsProcessor, + ObservabilityPipelineAddEnvVarsProcessorVariable: + ObservabilityPipelineAddEnvVarsProcessorVariable, ObservabilityPipelineAddFieldsProcessor: ObservabilityPipelineAddFieldsProcessor, + ObservabilityPipelineAmazonDataFirehoseSource: + ObservabilityPipelineAmazonDataFirehoseSource, + ObservabilityPipelineAwsAuth: ObservabilityPipelineAwsAuth, ObservabilityPipelineConfig: ObservabilityPipelineConfig, ObservabilityPipelineCreateRequest: ObservabilityPipelineCreateRequest, ObservabilityPipelineCreateRequestData: @@ -4084,12 +4178,38 @@ const typeMap: { [index: string]: any } = { ObservabilityPipelineDatadogAgentSource, ObservabilityPipelineDatadogLogsDestination: ObservabilityPipelineDatadogLogsDestination, + ObservabilityPipelineDedupeProcessor: ObservabilityPipelineDedupeProcessor, + ObservabilityPipelineEnrichmentTableFile: + ObservabilityPipelineEnrichmentTableFile, + ObservabilityPipelineEnrichmentTableFileEncoding: + ObservabilityPipelineEnrichmentTableFileEncoding, + ObservabilityPipelineEnrichmentTableFileKeyItems: + ObservabilityPipelineEnrichmentTableFileKeyItems, + ObservabilityPipelineEnrichmentTableFileSchemaItems: + ObservabilityPipelineEnrichmentTableFileSchemaItems, + ObservabilityPipelineEnrichmentTableGeoIp: + ObservabilityPipelineEnrichmentTableGeoIp, + ObservabilityPipelineEnrichmentTableProcessor: + ObservabilityPipelineEnrichmentTableProcessor, ObservabilityPipelineFieldValue: ObservabilityPipelineFieldValue, ObservabilityPipelineFilterProcessor: ObservabilityPipelineFilterProcessor, + ObservabilityPipelineGcpAuth: ObservabilityPipelineGcpAuth, + ObservabilityPipelineGoogleChronicleDestination: + ObservabilityPipelineGoogleChronicleDestination, + ObservabilityPipelineGooglePubSubSource: + ObservabilityPipelineGooglePubSubSource, + ObservabilityPipelineHttpClientSource: ObservabilityPipelineHttpClientSource, ObservabilityPipelineKafkaSource: ObservabilityPipelineKafkaSource, ObservabilityPipelineKafkaSourceLibrdkafkaOption: ObservabilityPipelineKafkaSourceLibrdkafkaOption, ObservabilityPipelineKafkaSourceSasl: ObservabilityPipelineKafkaSourceSasl, + ObservabilityPipelineLogstashSource: ObservabilityPipelineLogstashSource, + ObservabilityPipelineNewRelicDestination: + ObservabilityPipelineNewRelicDestination, + ObservabilityPipelineOcsfMapperProcessor: + ObservabilityPipelineOcsfMapperProcessor, + ObservabilityPipelineOcsfMapperProcessorMapping: + ObservabilityPipelineOcsfMapperProcessorMapping, ObservabilityPipelineParseJSONProcessor: ObservabilityPipelineParseJSONProcessor, ObservabilityPipelineQuotaProcessor: ObservabilityPipelineQuotaProcessor, @@ -4097,12 +4217,19 @@ const typeMap: { [index: string]: any } = { ObservabilityPipelineQuotaProcessorLimit, ObservabilityPipelineQuotaProcessorOverride: ObservabilityPipelineQuotaProcessorOverride, + ObservabilityPipelineReduceProcessor: ObservabilityPipelineReduceProcessor, + ObservabilityPipelineReduceProcessorMergeStrategy: + ObservabilityPipelineReduceProcessorMergeStrategy, ObservabilityPipelineRemoveFieldsProcessor: ObservabilityPipelineRemoveFieldsProcessor, ObservabilityPipelineRenameFieldsProcessor: ObservabilityPipelineRenameFieldsProcessor, ObservabilityPipelineRenameFieldsProcessorField: ObservabilityPipelineRenameFieldsProcessorField, + ObservabilityPipelineSentinelOneDestination: + ObservabilityPipelineSentinelOneDestination, + ObservabilityPipelineThrottleProcessor: + ObservabilityPipelineThrottleProcessor, ObservabilityPipelineTls: ObservabilityPipelineTls, OktaAccount: OktaAccount, OktaAccountAttributes: OktaAccountAttributes, @@ -5050,6 +5177,9 @@ const oneOfMap: { [index: string]: string[] } = { MonitorNotificationRuleResponseIncludedItem: ["User"], ObservabilityPipelineConfigDestinationItem: [ "ObservabilityPipelineDatadogLogsDestination", + "ObservabilityPipelineGoogleChronicleDestination", + "ObservabilityPipelineNewRelicDestination", + "ObservabilityPipelineSentinelOneDestination", ], ObservabilityPipelineConfigProcessorItem: [ "ObservabilityPipelineFilterProcessor", @@ -5058,10 +5188,23 @@ const oneOfMap: { [index: string]: string[] } = { "ObservabilityPipelineAddFieldsProcessor", "ObservabilityPipelineRemoveFieldsProcessor", "ObservabilityPipelineRenameFieldsProcessor", + "ObservabilityPipelineOcsfMapperProcessor", + "ObservabilityPipelineAddEnvVarsProcessor", + "ObservabilityPipelineDedupeProcessor", + "ObservabilityPipelineEnrichmentTableProcessor", + "ObservabilityPipelineReduceProcessor", + "ObservabilityPipelineThrottleProcessor", ], ObservabilityPipelineConfigSourceItem: [ "ObservabilityPipelineKafkaSource", "ObservabilityPipelineDatadogAgentSource", + "ObservabilityPipelineAmazonDataFirehoseSource", + "ObservabilityPipelineGooglePubSubSource", + "ObservabilityPipelineHttpClientSource", + "ObservabilityPipelineLogstashSource", + ], + ObservabilityPipelineOcsfMapperProcessorMappingMapping: [ + "ObservabilityPipelineOcsfMappingLibrary", ], Query: ["ActionQuery", "DataTransform", "StateVariable"], RUMAggregateBucketValue: [ diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineAddEnvVarsProcessor.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineAddEnvVarsProcessor.ts new file mode 100644 index 00000000000..f57a602d7e1 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineAddEnvVarsProcessor.ts @@ -0,0 +1,91 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineAddEnvVarsProcessorType } from "./ObservabilityPipelineAddEnvVarsProcessorType"; +import { ObservabilityPipelineAddEnvVarsProcessorVariable } from "./ObservabilityPipelineAddEnvVarsProcessorVariable"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `add_env_vars` processor adds environment variable values to log events. + */ +export class ObservabilityPipelineAddEnvVarsProcessor { + /** + * The unique identifier for this component. Used to reference this processor in the pipeline. + */ + "id": string; + /** + * A Datadog search query used to determine which logs this processor targets. + */ + "include": string; + /** + * A list of component IDs whose output is used as the input for this processor. + */ + "inputs": Array; + /** + * The processor type. The value should always be `add_env_vars`. + */ + "type": ObservabilityPipelineAddEnvVarsProcessorType; + /** + * A list of environment variable mappings to apply to log fields. + */ + "variables": Array; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + id: { + baseName: "id", + type: "string", + required: true, + }, + include: { + baseName: "include", + type: "string", + required: true, + }, + inputs: { + baseName: "inputs", + type: "Array", + required: true, + }, + type: { + baseName: "type", + type: "ObservabilityPipelineAddEnvVarsProcessorType", + required: true, + }, + variables: { + baseName: "variables", + type: "Array", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineAddEnvVarsProcessor.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineAddEnvVarsProcessorType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineAddEnvVarsProcessorType.ts new file mode 100644 index 00000000000..a9c621d6522 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineAddEnvVarsProcessorType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The processor type. The value should always be `add_env_vars`. + */ + +export type ObservabilityPipelineAddEnvVarsProcessorType = + | typeof ADD_ENV_VARS + | UnparsedObject; +export const ADD_ENV_VARS = "add_env_vars"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineAddEnvVarsProcessorVariable.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineAddEnvVarsProcessorVariable.ts new file mode 100644 index 00000000000..a7dbf5113a2 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineAddEnvVarsProcessorVariable.ts @@ -0,0 +1,62 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Defines a mapping between an environment variable and a log field. + */ +export class ObservabilityPipelineAddEnvVarsProcessorVariable { + /** + * The target field in the log event. + */ + "field": string; + /** + * The name of the environment variable to read. + */ + "name": string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + field: { + baseName: "field", + type: "string", + required: true, + }, + name: { + baseName: "name", + type: "string", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineAddEnvVarsProcessorVariable.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonDataFirehoseSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonDataFirehoseSource.ts new file mode 100644 index 00000000000..a90dd008a90 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonDataFirehoseSource.ts @@ -0,0 +1,82 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineAmazonDataFirehoseSourceType } from "./ObservabilityPipelineAmazonDataFirehoseSourceType"; +import { ObservabilityPipelineAwsAuth } from "./ObservabilityPipelineAwsAuth"; +import { ObservabilityPipelineTls } from "./ObservabilityPipelineTls"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `amazon_data_firehose` source ingests logs from AWS Data Firehose. + */ +export class ObservabilityPipelineAmazonDataFirehoseSource { + /** + * AWS authentication credentials used for accessing AWS services such as S3. + * If omitted, the system’s default credentials are used (for example, the IAM role and environment variables). + */ + "auth"?: ObservabilityPipelineAwsAuth; + /** + * The unique identifier for this component. Used to reference this component in other parts of the pipeline (e.g., as input to downstream components). + */ + "id": string; + /** + * Configuration for enabling TLS encryption. + */ + "tls"?: ObservabilityPipelineTls; + /** + * The source type. The value should always be `amazon_data_firehose`. + */ + "type": ObservabilityPipelineAmazonDataFirehoseSourceType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + auth: { + baseName: "auth", + type: "ObservabilityPipelineAwsAuth", + }, + id: { + baseName: "id", + type: "string", + required: true, + }, + tls: { + baseName: "tls", + type: "ObservabilityPipelineTls", + }, + type: { + baseName: "type", + type: "ObservabilityPipelineAmazonDataFirehoseSourceType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineAmazonDataFirehoseSource.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonDataFirehoseSourceType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonDataFirehoseSourceType.ts new file mode 100644 index 00000000000..52875a333c3 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonDataFirehoseSourceType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The source type. The value should always be `amazon_data_firehose`. + */ + +export type ObservabilityPipelineAmazonDataFirehoseSourceType = + | typeof AMAZON_DATA_FIREHOSE + | UnparsedObject; +export const AMAZON_DATA_FIREHOSE = "amazon_data_firehose"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineAwsAuth.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineAwsAuth.ts new file mode 100644 index 00000000000..e5e8679f7e6 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineAwsAuth.ts @@ -0,0 +1,69 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * AWS authentication credentials used for accessing AWS services such as S3. + * If omitted, the system’s default credentials are used (for example, the IAM role and environment variables). + */ +export class ObservabilityPipelineAwsAuth { + /** + * The Amazon Resource Name (ARN) of the role to assume. + */ + "assumeRole"?: string; + /** + * A unique identifier for cross-account role assumption. + */ + "externalId"?: string; + /** + * A session identifier used for logging and tracing the assumed role session. + */ + "sessionName"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + assumeRole: { + baseName: "assume_role", + type: "string", + }, + externalId: { + baseName: "external_id", + type: "string", + }, + sessionName: { + baseName: "session_name", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineAwsAuth.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigDestinationItem.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigDestinationItem.ts index 18d59e1969c..deb2cb0b33e 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigDestinationItem.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigDestinationItem.ts @@ -4,6 +4,9 @@ * Copyright 2020-Present Datadog, Inc. */ import { ObservabilityPipelineDatadogLogsDestination } from "./ObservabilityPipelineDatadogLogsDestination"; +import { ObservabilityPipelineGoogleChronicleDestination } from "./ObservabilityPipelineGoogleChronicleDestination"; +import { ObservabilityPipelineNewRelicDestination } from "./ObservabilityPipelineNewRelicDestination"; +import { ObservabilityPipelineSentinelOneDestination } from "./ObservabilityPipelineSentinelOneDestination"; import { UnparsedObject } from "../../datadog-api-client-common/util"; @@ -13,4 +16,7 @@ import { UnparsedObject } from "../../datadog-api-client-common/util"; export type ObservabilityPipelineConfigDestinationItem = | ObservabilityPipelineDatadogLogsDestination + | ObservabilityPipelineGoogleChronicleDestination + | ObservabilityPipelineNewRelicDestination + | ObservabilityPipelineSentinelOneDestination | UnparsedObject; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigProcessorItem.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigProcessorItem.ts index 57a107624ce..cda1366d270 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigProcessorItem.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigProcessorItem.ts @@ -3,12 +3,18 @@ * This product includes software developed at Datadog (https://www.datadoghq.com/). * Copyright 2020-Present Datadog, Inc. */ +import { ObservabilityPipelineAddEnvVarsProcessor } from "./ObservabilityPipelineAddEnvVarsProcessor"; import { ObservabilityPipelineAddFieldsProcessor } from "./ObservabilityPipelineAddFieldsProcessor"; +import { ObservabilityPipelineDedupeProcessor } from "./ObservabilityPipelineDedupeProcessor"; +import { ObservabilityPipelineEnrichmentTableProcessor } from "./ObservabilityPipelineEnrichmentTableProcessor"; import { ObservabilityPipelineFilterProcessor } from "./ObservabilityPipelineFilterProcessor"; +import { ObservabilityPipelineOcsfMapperProcessor } from "./ObservabilityPipelineOcsfMapperProcessor"; import { ObservabilityPipelineParseJSONProcessor } from "./ObservabilityPipelineParseJSONProcessor"; import { ObservabilityPipelineQuotaProcessor } from "./ObservabilityPipelineQuotaProcessor"; +import { ObservabilityPipelineReduceProcessor } from "./ObservabilityPipelineReduceProcessor"; import { ObservabilityPipelineRemoveFieldsProcessor } from "./ObservabilityPipelineRemoveFieldsProcessor"; import { ObservabilityPipelineRenameFieldsProcessor } from "./ObservabilityPipelineRenameFieldsProcessor"; +import { ObservabilityPipelineThrottleProcessor } from "./ObservabilityPipelineThrottleProcessor"; import { UnparsedObject } from "../../datadog-api-client-common/util"; @@ -23,4 +29,10 @@ export type ObservabilityPipelineConfigProcessorItem = | ObservabilityPipelineAddFieldsProcessor | ObservabilityPipelineRemoveFieldsProcessor | ObservabilityPipelineRenameFieldsProcessor + | ObservabilityPipelineOcsfMapperProcessor + | ObservabilityPipelineAddEnvVarsProcessor + | ObservabilityPipelineDedupeProcessor + | ObservabilityPipelineEnrichmentTableProcessor + | ObservabilityPipelineReduceProcessor + | ObservabilityPipelineThrottleProcessor | UnparsedObject; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigSourceItem.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigSourceItem.ts index b963a300f19..bdf2fe3fedf 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigSourceItem.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineConfigSourceItem.ts @@ -3,8 +3,12 @@ * This product includes software developed at Datadog (https://www.datadoghq.com/). * Copyright 2020-Present Datadog, Inc. */ +import { ObservabilityPipelineAmazonDataFirehoseSource } from "./ObservabilityPipelineAmazonDataFirehoseSource"; import { ObservabilityPipelineDatadogAgentSource } from "./ObservabilityPipelineDatadogAgentSource"; +import { ObservabilityPipelineGooglePubSubSource } from "./ObservabilityPipelineGooglePubSubSource"; +import { ObservabilityPipelineHttpClientSource } from "./ObservabilityPipelineHttpClientSource"; import { ObservabilityPipelineKafkaSource } from "./ObservabilityPipelineKafkaSource"; +import { ObservabilityPipelineLogstashSource } from "./ObservabilityPipelineLogstashSource"; import { UnparsedObject } from "../../datadog-api-client-common/util"; @@ -15,4 +19,8 @@ import { UnparsedObject } from "../../datadog-api-client-common/util"; export type ObservabilityPipelineConfigSourceItem = | ObservabilityPipelineKafkaSource | ObservabilityPipelineDatadogAgentSource + | ObservabilityPipelineAmazonDataFirehoseSource + | ObservabilityPipelineGooglePubSubSource + | ObservabilityPipelineHttpClientSource + | ObservabilityPipelineLogstashSource | UnparsedObject; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineDecoding.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineDecoding.ts new file mode 100644 index 00000000000..6e3d4f2a605 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineDecoding.ts @@ -0,0 +1,22 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The decoding format used to interpret incoming logs. + */ + +export type ObservabilityPipelineDecoding = + | typeof DECODE_BYTES + | typeof DECODE_GELF + | typeof DECODE_JSON + | typeof DECODE_SYSLOG + | UnparsedObject; +export const DECODE_BYTES = "bytes"; +export const DECODE_GELF = "gelf"; +export const DECODE_JSON = "json"; +export const DECODE_SYSLOG = "syslog"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineDedupeProcessor.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineDedupeProcessor.ts new file mode 100644 index 00000000000..54ba13a0a1d --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineDedupeProcessor.ts @@ -0,0 +1,100 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineDedupeProcessorMode } from "./ObservabilityPipelineDedupeProcessorMode"; +import { ObservabilityPipelineDedupeProcessorType } from "./ObservabilityPipelineDedupeProcessorType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `dedupe` processor removes duplicate fields in log events. + */ +export class ObservabilityPipelineDedupeProcessor { + /** + * A list of log field paths to check for duplicates. + */ + "fields": Array; + /** + * The unique identifier for this processor. + */ + "id": string; + /** + * A Datadog search query used to determine which logs this processor targets. + */ + "include": string; + /** + * A list of component IDs whose output is used as the input for this processor. + */ + "inputs": Array; + /** + * The deduplication mode to apply to the fields. + */ + "mode": ObservabilityPipelineDedupeProcessorMode; + /** + * The processor type. The value should always be `dedupe`. + */ + "type": ObservabilityPipelineDedupeProcessorType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + fields: { + baseName: "fields", + type: "Array", + required: true, + }, + id: { + baseName: "id", + type: "string", + required: true, + }, + include: { + baseName: "include", + type: "string", + required: true, + }, + inputs: { + baseName: "inputs", + type: "Array", + required: true, + }, + mode: { + baseName: "mode", + type: "ObservabilityPipelineDedupeProcessorMode", + required: true, + }, + type: { + baseName: "type", + type: "ObservabilityPipelineDedupeProcessorType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineDedupeProcessor.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineDedupeProcessorMode.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineDedupeProcessorMode.ts new file mode 100644 index 00000000000..82c14519a12 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineDedupeProcessorMode.ts @@ -0,0 +1,18 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The deduplication mode to apply to the fields. + */ + +export type ObservabilityPipelineDedupeProcessorMode = + | typeof MATCH + | typeof IGNORE + | UnparsedObject; +export const MATCH = "match"; +export const IGNORE = "ignore"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineDedupeProcessorType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineDedupeProcessorType.ts new file mode 100644 index 00000000000..ef25336f9cd --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineDedupeProcessorType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The processor type. The value should always be `dedupe`. + */ + +export type ObservabilityPipelineDedupeProcessorType = + | typeof DEDUPE + | UnparsedObject; +export const DEDUPE = "dedupe"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFile.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFile.ts new file mode 100644 index 00000000000..af1d4ee0f5d --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFile.ts @@ -0,0 +1,83 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineEnrichmentTableFileEncoding } from "./ObservabilityPipelineEnrichmentTableFileEncoding"; +import { ObservabilityPipelineEnrichmentTableFileKeyItems } from "./ObservabilityPipelineEnrichmentTableFileKeyItems"; +import { ObservabilityPipelineEnrichmentTableFileSchemaItems } from "./ObservabilityPipelineEnrichmentTableFileSchemaItems"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Defines a static enrichment table loaded from a CSV file. + */ +export class ObservabilityPipelineEnrichmentTableFile { + /** + * File encoding format. + */ + "encoding": ObservabilityPipelineEnrichmentTableFileEncoding; + /** + * Key fields used to look up enrichment values. + */ + "key": Array; + /** + * Path to the CSV file. + */ + "path": string; + /** + * Schema defining column names and their types. + */ + "schema": Array; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + encoding: { + baseName: "encoding", + type: "ObservabilityPipelineEnrichmentTableFileEncoding", + required: true, + }, + key: { + baseName: "key", + type: "Array", + required: true, + }, + path: { + baseName: "path", + type: "string", + required: true, + }, + schema: { + baseName: "schema", + type: "Array", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineEnrichmentTableFile.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileEncoding.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileEncoding.ts new file mode 100644 index 00000000000..8653b2814ae --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileEncoding.ts @@ -0,0 +1,72 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineEnrichmentTableFileEncodingType } from "./ObservabilityPipelineEnrichmentTableFileEncodingType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * File encoding format. + */ +export class ObservabilityPipelineEnrichmentTableFileEncoding { + /** + * The `encoding` `delimiter`. + */ + "delimiter": string; + /** + * The `encoding` `includes_headers`. + */ + "includesHeaders": boolean; + /** + * The definition of `ObservabilityPipelineEnrichmentTableFileEncodingType` object. + */ + "type": ObservabilityPipelineEnrichmentTableFileEncodingType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + delimiter: { + baseName: "delimiter", + type: "string", + required: true, + }, + includesHeaders: { + baseName: "includes_headers", + type: "boolean", + required: true, + }, + type: { + baseName: "type", + type: "ObservabilityPipelineEnrichmentTableFileEncodingType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineEnrichmentTableFileEncoding.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileEncodingType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileEncodingType.ts new file mode 100644 index 00000000000..21b44bb8b7c --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileEncodingType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The definition of `ObservabilityPipelineEnrichmentTableFileEncodingType` object. + */ + +export type ObservabilityPipelineEnrichmentTableFileEncodingType = + | typeof CSV + | UnparsedObject; +export const CSV = "csv"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileKeyItems.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileKeyItems.ts new file mode 100644 index 00000000000..c7546f0ddb9 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileKeyItems.ts @@ -0,0 +1,72 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineEnrichmentTableFileKeyItemsComparison } from "./ObservabilityPipelineEnrichmentTableFileKeyItemsComparison"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The definition of `ObservabilityPipelineEnrichmentTableFileKeyItems` object. + */ +export class ObservabilityPipelineEnrichmentTableFileKeyItems { + /** + * The `items` `column`. + */ + "column": string; + /** + * The definition of `ObservabilityPipelineEnrichmentTableFileKeyItemsComparison` object. + */ + "comparison": ObservabilityPipelineEnrichmentTableFileKeyItemsComparison; + /** + * The `items` `field`. + */ + "field": string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + column: { + baseName: "column", + type: "string", + required: true, + }, + comparison: { + baseName: "comparison", + type: "ObservabilityPipelineEnrichmentTableFileKeyItemsComparison", + required: true, + }, + field: { + baseName: "field", + type: "string", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineEnrichmentTableFileKeyItems.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison.ts new file mode 100644 index 00000000000..4702aa4a693 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The definition of `ObservabilityPipelineEnrichmentTableFileKeyItemsComparison` object. + */ + +export type ObservabilityPipelineEnrichmentTableFileKeyItemsComparison = + | typeof EQUALS + | UnparsedObject; +export const EQUALS = "equals"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileSchemaItems.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileSchemaItems.ts new file mode 100644 index 00000000000..2d8989a98ea --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileSchemaItems.ts @@ -0,0 +1,63 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineEnrichmentTableFileSchemaItemsType } from "./ObservabilityPipelineEnrichmentTableFileSchemaItemsType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The definition of `ObservabilityPipelineEnrichmentTableFileSchemaItems` object. + */ +export class ObservabilityPipelineEnrichmentTableFileSchemaItems { + /** + * The `items` `column`. + */ + "column": string; + /** + * The definition of `ObservabilityPipelineEnrichmentTableFileSchemaItemsType` object. + */ + "type": ObservabilityPipelineEnrichmentTableFileSchemaItemsType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + column: { + baseName: "column", + type: "string", + required: true, + }, + type: { + baseName: "type", + type: "ObservabilityPipelineEnrichmentTableFileSchemaItemsType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineEnrichmentTableFileSchemaItems.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileSchemaItemsType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileSchemaItemsType.ts new file mode 100644 index 00000000000..67b19944aba --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableFileSchemaItemsType.ts @@ -0,0 +1,26 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The definition of `ObservabilityPipelineEnrichmentTableFileSchemaItemsType` object. + */ + +export type ObservabilityPipelineEnrichmentTableFileSchemaItemsType = + | typeof STRING + | typeof BOOLEAN + | typeof INTEGER + | typeof FLOAT + | typeof DATE + | typeof TIMESTAMP + | UnparsedObject; +export const STRING = "string"; +export const BOOLEAN = "boolean"; +export const INTEGER = "integer"; +export const FLOAT = "float"; +export const DATE = "date"; +export const TIMESTAMP = "timestamp"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableGeoIp.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableGeoIp.ts new file mode 100644 index 00000000000..7e78ba768a6 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableGeoIp.ts @@ -0,0 +1,71 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Uses a GeoIP database to enrich logs based on an IP field. + */ +export class ObservabilityPipelineEnrichmentTableGeoIp { + /** + * Path to the IP field in the log. + */ + "keyField": string; + /** + * Locale used to resolve geographical names. + */ + "locale": string; + /** + * Path to the GeoIP database file. + */ + "path": string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + keyField: { + baseName: "key_field", + type: "string", + required: true, + }, + locale: { + baseName: "locale", + type: "string", + required: true, + }, + path: { + baseName: "path", + type: "string", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineEnrichmentTableGeoIp.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableProcessor.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableProcessor.ts new file mode 100644 index 00000000000..57de0e644a9 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableProcessor.ts @@ -0,0 +1,108 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineEnrichmentTableFile } from "./ObservabilityPipelineEnrichmentTableFile"; +import { ObservabilityPipelineEnrichmentTableGeoIp } from "./ObservabilityPipelineEnrichmentTableGeoIp"; +import { ObservabilityPipelineEnrichmentTableProcessorType } from "./ObservabilityPipelineEnrichmentTableProcessorType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `enrichment_table` processor enriches logs using a static CSV file or GeoIP database. + */ +export class ObservabilityPipelineEnrichmentTableProcessor { + /** + * Defines a static enrichment table loaded from a CSV file. + */ + "file"?: ObservabilityPipelineEnrichmentTableFile; + /** + * Uses a GeoIP database to enrich logs based on an IP field. + */ + "geoip"?: ObservabilityPipelineEnrichmentTableGeoIp; + /** + * The unique identifier for this processor. + */ + "id": string; + /** + * A Datadog search query used to determine which logs this processor targets. + */ + "include": string; + /** + * A list of component IDs whose output is used as the input for this processor. + */ + "inputs": Array; + /** + * Path where enrichment results should be stored in the log. + */ + "target": string; + /** + * The processor type. The value should always be `enrichment_table`. + */ + "type": ObservabilityPipelineEnrichmentTableProcessorType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + file: { + baseName: "file", + type: "ObservabilityPipelineEnrichmentTableFile", + }, + geoip: { + baseName: "geoip", + type: "ObservabilityPipelineEnrichmentTableGeoIp", + }, + id: { + baseName: "id", + type: "string", + required: true, + }, + include: { + baseName: "include", + type: "string", + required: true, + }, + inputs: { + baseName: "inputs", + type: "Array", + required: true, + }, + target: { + baseName: "target", + type: "string", + required: true, + }, + type: { + baseName: "type", + type: "ObservabilityPipelineEnrichmentTableProcessorType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineEnrichmentTableProcessor.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableProcessorType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableProcessorType.ts new file mode 100644 index 00000000000..b0908b7772a --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableProcessorType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The processor type. The value should always be `enrichment_table`. + */ + +export type ObservabilityPipelineEnrichmentTableProcessorType = + | typeof ENRICHMENT_TABLE + | UnparsedObject; +export const ENRICHMENT_TABLE = "enrichment_table"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineGcpAuth.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineGcpAuth.ts new file mode 100644 index 00000000000..9c409b0e321 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineGcpAuth.ts @@ -0,0 +1,53 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * GCP credentials used to authenticate with Google Cloud Storage. + */ +export class ObservabilityPipelineGcpAuth { + /** + * Path to the GCP service account key file. + */ + "credentialsFile": string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + credentialsFile: { + baseName: "credentials_file", + type: "string", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineGcpAuth.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestination.ts new file mode 100644 index 00000000000..e9f6d3616c1 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestination.ts @@ -0,0 +1,108 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineGcpAuth } from "./ObservabilityPipelineGcpAuth"; +import { ObservabilityPipelineGoogleChronicleDestinationEncoding } from "./ObservabilityPipelineGoogleChronicleDestinationEncoding"; +import { ObservabilityPipelineGoogleChronicleDestinationType } from "./ObservabilityPipelineGoogleChronicleDestinationType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `google_chronicle` destination sends logs to Google Chronicle. + */ +export class ObservabilityPipelineGoogleChronicleDestination { + /** + * GCP credentials used to authenticate with Google Cloud Storage. + */ + "auth": ObservabilityPipelineGcpAuth; + /** + * The Google Chronicle customer ID. + */ + "customerId": string; + /** + * The encoding format for the logs sent to Chronicle. + */ + "encoding"?: ObservabilityPipelineGoogleChronicleDestinationEncoding; + /** + * The unique identifier for this component. + */ + "id": string; + /** + * A list of component IDs whose output is used as the `input` for this component. + */ + "inputs": Array; + /** + * The log type metadata associated with the Chronicle destination. + */ + "logType"?: string; + /** + * The destination type. The value should always be `google_chronicle`. + */ + "type": ObservabilityPipelineGoogleChronicleDestinationType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + auth: { + baseName: "auth", + type: "ObservabilityPipelineGcpAuth", + required: true, + }, + customerId: { + baseName: "customer_id", + type: "string", + required: true, + }, + encoding: { + baseName: "encoding", + type: "ObservabilityPipelineGoogleChronicleDestinationEncoding", + }, + id: { + baseName: "id", + type: "string", + required: true, + }, + inputs: { + baseName: "inputs", + type: "Array", + required: true, + }, + logType: { + baseName: "log_type", + type: "string", + }, + type: { + baseName: "type", + type: "ObservabilityPipelineGoogleChronicleDestinationType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineGoogleChronicleDestination.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestinationEncoding.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestinationEncoding.ts new file mode 100644 index 00000000000..1a9aa1f001c --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestinationEncoding.ts @@ -0,0 +1,18 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The encoding format for the logs sent to Chronicle. + */ + +export type ObservabilityPipelineGoogleChronicleDestinationEncoding = + | typeof JSON + | typeof RAW_MESSAGE + | UnparsedObject; +export const JSON = "json"; +export const RAW_MESSAGE = "raw_message"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestinationType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestinationType.ts new file mode 100644 index 00000000000..4d5d7a9738f --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestinationType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The destination type. The value should always be `google_chronicle`. + */ + +export type ObservabilityPipelineGoogleChronicleDestinationType = + | typeof GOOGLE_CHRONICLE + | UnparsedObject; +export const GOOGLE_CHRONICLE = "google_chronicle"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubSource.ts new file mode 100644 index 00000000000..66afa83fb56 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubSource.ts @@ -0,0 +1,110 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineDecoding } from "./ObservabilityPipelineDecoding"; +import { ObservabilityPipelineGcpAuth } from "./ObservabilityPipelineGcpAuth"; +import { ObservabilityPipelineGooglePubSubSourceType } from "./ObservabilityPipelineGooglePubSubSourceType"; +import { ObservabilityPipelineTls } from "./ObservabilityPipelineTls"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `google_pubsub` source ingests logs from a Google Cloud Pub/Sub subscription. + */ +export class ObservabilityPipelineGooglePubSubSource { + /** + * GCP credentials used to authenticate with Google Cloud Storage. + */ + "auth": ObservabilityPipelineGcpAuth; + /** + * The decoding format used to interpret incoming logs. + */ + "decoding": ObservabilityPipelineDecoding; + /** + * The unique identifier for this component. Used to reference this component in other parts of the pipeline (e.g., as input to downstream components). + */ + "id": string; + /** + * The GCP project ID that owns the Pub/Sub subscription. + */ + "project": string; + /** + * The Pub/Sub subscription name from which messages are consumed. + */ + "subscription": string; + /** + * Configuration for enabling TLS encryption. + */ + "tls"?: ObservabilityPipelineTls; + /** + * The source type. The value should always be `google_pubsub`. + */ + "type": ObservabilityPipelineGooglePubSubSourceType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + auth: { + baseName: "auth", + type: "ObservabilityPipelineGcpAuth", + required: true, + }, + decoding: { + baseName: "decoding", + type: "ObservabilityPipelineDecoding", + required: true, + }, + id: { + baseName: "id", + type: "string", + required: true, + }, + project: { + baseName: "project", + type: "string", + required: true, + }, + subscription: { + baseName: "subscription", + type: "string", + required: true, + }, + tls: { + baseName: "tls", + type: "ObservabilityPipelineTls", + }, + type: { + baseName: "type", + type: "ObservabilityPipelineGooglePubSubSourceType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineGooglePubSubSource.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubSourceType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubSourceType.ts new file mode 100644 index 00000000000..a9824c01571 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubSourceType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The source type. The value should always be `google_pubsub`. + */ + +export type ObservabilityPipelineGooglePubSubSourceType = + | typeof GOOGLE_PUBSUB + | UnparsedObject; +export const GOOGLE_PUBSUB = "google_pubsub"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSource.ts new file mode 100644 index 00000000000..b02515ec6ab --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSource.ts @@ -0,0 +1,109 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineDecoding } from "./ObservabilityPipelineDecoding"; +import { ObservabilityPipelineHttpClientSourceAuthStrategy } from "./ObservabilityPipelineHttpClientSourceAuthStrategy"; +import { ObservabilityPipelineHttpClientSourceType } from "./ObservabilityPipelineHttpClientSourceType"; +import { ObservabilityPipelineTls } from "./ObservabilityPipelineTls"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `http_client` source scrapes logs from HTTP endpoints at regular intervals. + */ +export class ObservabilityPipelineHttpClientSource { + /** + * Optional authentication strategy for HTTP requests. + */ + "authStrategy"?: ObservabilityPipelineHttpClientSourceAuthStrategy; + /** + * The decoding format used to interpret incoming logs. + */ + "decoding": ObservabilityPipelineDecoding; + /** + * The unique identifier for this component. Used to reference this component in other parts of the pipeline (e.g., as input to downstream components). + */ + "id": string; + /** + * The interval (in seconds) between HTTP scrape requests. + */ + "scrapeIntervalSecs"?: number; + /** + * The timeout (in seconds) for each scrape request. + */ + "scrapeTimeoutSecs"?: number; + /** + * Configuration for enabling TLS encryption. + */ + "tls"?: ObservabilityPipelineTls; + /** + * The source type. The value should always be `http_client`. + */ + "type": ObservabilityPipelineHttpClientSourceType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + authStrategy: { + baseName: "auth_strategy", + type: "ObservabilityPipelineHttpClientSourceAuthStrategy", + }, + decoding: { + baseName: "decoding", + type: "ObservabilityPipelineDecoding", + required: true, + }, + id: { + baseName: "id", + type: "string", + required: true, + }, + scrapeIntervalSecs: { + baseName: "scrape_interval_secs", + type: "number", + format: "int64", + }, + scrapeTimeoutSecs: { + baseName: "scrape_timeout_secs", + type: "number", + format: "int64", + }, + tls: { + baseName: "tls", + type: "ObservabilityPipelineTls", + }, + type: { + baseName: "type", + type: "ObservabilityPipelineHttpClientSourceType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineHttpClientSource.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSourceAuthStrategy.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSourceAuthStrategy.ts new file mode 100644 index 00000000000..221585221f1 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSourceAuthStrategy.ts @@ -0,0 +1,18 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * Optional authentication strategy for HTTP requests. + */ + +export type ObservabilityPipelineHttpClientSourceAuthStrategy = + | typeof BASIC + | typeof BEARER + | UnparsedObject; +export const BASIC = "basic"; +export const BEARER = "bearer"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSourceType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSourceType.ts new file mode 100644 index 00000000000..cbe7eaaee8c --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSourceType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The source type. The value should always be `http_client`. + */ + +export type ObservabilityPipelineHttpClientSourceType = + | typeof HTTP_CLIENT + | UnparsedObject; +export const HTTP_CLIENT = "http_client"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineLogstashSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineLogstashSource.ts new file mode 100644 index 00000000000..1a57b43094a --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineLogstashSource.ts @@ -0,0 +1,72 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineLogstashSourceType } from "./ObservabilityPipelineLogstashSourceType"; +import { ObservabilityPipelineTls } from "./ObservabilityPipelineTls"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `logstash` source ingests logs from a Logstash forwarder. + */ +export class ObservabilityPipelineLogstashSource { + /** + * The unique identifier for this component. Used to reference this component in other parts of the pipeline (e.g., as input to downstream components). + */ + "id": string; + /** + * Configuration for enabling TLS encryption. + */ + "tls"?: ObservabilityPipelineTls; + /** + * The source type. The value should always be `logstash`. + */ + "type": ObservabilityPipelineLogstashSourceType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + id: { + baseName: "id", + type: "string", + required: true, + }, + tls: { + baseName: "tls", + type: "ObservabilityPipelineTls", + }, + type: { + baseName: "type", + type: "ObservabilityPipelineLogstashSourceType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineLogstashSource.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineLogstashSourceType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineLogstashSourceType.ts new file mode 100644 index 00000000000..c7bf586cc14 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineLogstashSourceType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The source type. The value should always be `logstash`. + */ + +export type ObservabilityPipelineLogstashSourceType = + | typeof LOGSTASH + | UnparsedObject; +export const LOGSTASH = "logstash"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestination.ts new file mode 100644 index 00000000000..e1b46e1fccc --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestination.ts @@ -0,0 +1,82 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineNewRelicDestinationRegion } from "./ObservabilityPipelineNewRelicDestinationRegion"; +import { ObservabilityPipelineNewRelicDestinationType } from "./ObservabilityPipelineNewRelicDestinationType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `new_relic` destination sends logs to the New Relic platform. + */ +export class ObservabilityPipelineNewRelicDestination { + /** + * The unique identifier for this component. + */ + "id": string; + /** + * A list of component IDs whose output is used as the `input` for this component. + */ + "inputs": Array; + /** + * The New Relic region. + */ + "region": ObservabilityPipelineNewRelicDestinationRegion; + /** + * The destination type. The value should always be `new_relic`. + */ + "type": ObservabilityPipelineNewRelicDestinationType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + id: { + baseName: "id", + type: "string", + required: true, + }, + inputs: { + baseName: "inputs", + type: "Array", + required: true, + }, + region: { + baseName: "region", + type: "ObservabilityPipelineNewRelicDestinationRegion", + required: true, + }, + type: { + baseName: "type", + type: "ObservabilityPipelineNewRelicDestinationType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineNewRelicDestination.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestinationRegion.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestinationRegion.ts new file mode 100644 index 00000000000..f461c4425ee --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestinationRegion.ts @@ -0,0 +1,18 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The New Relic region. + */ + +export type ObservabilityPipelineNewRelicDestinationRegion = + | typeof US + | typeof EU + | UnparsedObject; +export const US = "us"; +export const EU = "eu"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestinationType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestinationType.ts new file mode 100644 index 00000000000..bf6c4007c7d --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestinationType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The destination type. The value should always be `new_relic`. + */ + +export type ObservabilityPipelineNewRelicDestinationType = + | typeof NEW_RELIC + | UnparsedObject; +export const NEW_RELIC = "new_relic"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessor.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessor.ts new file mode 100644 index 00000000000..c9d5b5747ef --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessor.ts @@ -0,0 +1,91 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineOcsfMapperProcessorMapping } from "./ObservabilityPipelineOcsfMapperProcessorMapping"; +import { ObservabilityPipelineOcsfMapperProcessorType } from "./ObservabilityPipelineOcsfMapperProcessorType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `ocsf_mapper` processor transforms logs into the OCSF schema using a predefined mapping configuration. + */ +export class ObservabilityPipelineOcsfMapperProcessor { + /** + * The unique identifier for this component. Used to reference this component in other parts of the pipeline. + */ + "id": string; + /** + * A Datadog search query used to determine which logs this processor targets. + */ + "include": string; + /** + * A list of component IDs whose output is used as the `input` for this processor. + */ + "inputs": Array; + /** + * A list of mapping rules to convert events to the OCSF format. + */ + "mappings": Array; + /** + * The processor type. The value should always be `ocsf_mapper`. + */ + "type": ObservabilityPipelineOcsfMapperProcessorType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + id: { + baseName: "id", + type: "string", + required: true, + }, + include: { + baseName: "include", + type: "string", + required: true, + }, + inputs: { + baseName: "inputs", + type: "Array", + required: true, + }, + mappings: { + baseName: "mappings", + type: "Array", + required: true, + }, + type: { + baseName: "type", + type: "ObservabilityPipelineOcsfMapperProcessorType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineOcsfMapperProcessor.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessorMapping.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessorMapping.ts new file mode 100644 index 00000000000..47985aeda60 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessorMapping.ts @@ -0,0 +1,63 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineOcsfMapperProcessorMappingMapping } from "./ObservabilityPipelineOcsfMapperProcessorMappingMapping"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Defines how specific events are transformed to OCSF using a mapping configuration. + */ +export class ObservabilityPipelineOcsfMapperProcessorMapping { + /** + * A Datadog search query used to select the logs that this mapping should apply to. + */ + "include": string; + /** + * The definition of `ObservabilityPipelineOcsfMapperProcessorMappingMapping` object. + */ + "mapping": ObservabilityPipelineOcsfMapperProcessorMappingMapping; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + include: { + baseName: "include", + type: "string", + required: true, + }, + mapping: { + baseName: "mapping", + type: "ObservabilityPipelineOcsfMapperProcessorMappingMapping", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineOcsfMapperProcessorMapping.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessorMappingMapping.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessorMappingMapping.ts new file mode 100644 index 00000000000..2b4913469c7 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessorMappingMapping.ts @@ -0,0 +1,15 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The definition of `ObservabilityPipelineOcsfMapperProcessorMappingMapping` object. + */ + +export type ObservabilityPipelineOcsfMapperProcessorMappingMapping = + | ObservabilityPipelineOcsfMappingLibrary + | UnparsedObject; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessorType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessorType.ts new file mode 100644 index 00000000000..a6ff538c46a --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMapperProcessorType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The processor type. The value should always be `ocsf_mapper`. + */ + +export type ObservabilityPipelineOcsfMapperProcessorType = + | typeof OCSF_MAPPER + | UnparsedObject; +export const OCSF_MAPPER = "ocsf_mapper"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMappingLibrary.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMappingLibrary.ts new file mode 100644 index 00000000000..ed4af5f6874 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineOcsfMappingLibrary.ts @@ -0,0 +1,40 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * Predefined library mappings for common log formats. + */ + +export type ObservabilityPipelineOcsfMappingLibrary = + | typeof CLOUDTRAIL_ACCOUNT_CHANGE + | typeof GCP_CLOUD_AUDIT_CREATEBUCKET + | typeof GCP_CLOUD_AUDIT_CREATESINK + | typeof GCP_CLOUD_AUDIT_SETIAMPOLICY + | typeof GCP_CLOUD_AUDIT_UPDATESINK + | typeof GITHUB_AUDIT_LOG_API_ACTIVITY + | typeof GOOGLE_WORKSPACE_ADMIN_AUDIT_ADDPRIVILEGE + | typeof MICROSOFT_365_DEFENDER_INCIDENT + | typeof MICROSOFT_365_DEFENDER_USERLOGGEDIN + | typeof OKTA_SYSTEM_LOG_AUTHENTICATION + | typeof PALO_ALTO_NETWORKS_FIREWALL_TRAFFIC + | UnparsedObject; +export const CLOUDTRAIL_ACCOUNT_CHANGE = "CloudTrail Account Change"; +export const GCP_CLOUD_AUDIT_CREATEBUCKET = "GCP Cloud Audit CreateBucket"; +export const GCP_CLOUD_AUDIT_CREATESINK = "GCP Cloud Audit CreateSink"; +export const GCP_CLOUD_AUDIT_SETIAMPOLICY = "GCP Cloud Audit SetIamPolicy"; +export const GCP_CLOUD_AUDIT_UPDATESINK = "GCP Cloud Audit UpdateSink"; +export const GITHUB_AUDIT_LOG_API_ACTIVITY = "Github Audit Log API Activity"; +export const GOOGLE_WORKSPACE_ADMIN_AUDIT_ADDPRIVILEGE = + "Google Workspace Admin Audit addPrivilege"; +export const MICROSOFT_365_DEFENDER_INCIDENT = + "Microsoft 365 Defender Incident"; +export const MICROSOFT_365_DEFENDER_USERLOGGEDIN = + "Microsoft 365 Defender UserLoggedIn"; +export const OKTA_SYSTEM_LOG_AUTHENTICATION = "Okta System Log Authentication"; +export const PALO_ALTO_NETWORKS_FIREWALL_TRAFFIC = + "Palo Alto Networks Firewall Traffic"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessor.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessor.ts new file mode 100644 index 00000000000..a78b57b762a --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessor.ts @@ -0,0 +1,100 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineReduceProcessorMergeStrategy } from "./ObservabilityPipelineReduceProcessorMergeStrategy"; +import { ObservabilityPipelineReduceProcessorType } from "./ObservabilityPipelineReduceProcessorType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `reduce` processor aggregates and merges logs based on matching keys and merge strategies. + */ +export class ObservabilityPipelineReduceProcessor { + /** + * A list of fields used to group log events for merging. + */ + "groupBy": Array; + /** + * The unique identifier for this processor. + */ + "id": string; + /** + * A Datadog search query used to determine which logs this processor targets. + */ + "include": string; + /** + * A list of component IDs whose output is used as the input for this processor. + */ + "inputs": Array; + /** + * List of merge strategies defining how values from grouped events should be combined. + */ + "mergeStrategies": Array; + /** + * The processor type. The value should always be `reduce`. + */ + "type": ObservabilityPipelineReduceProcessorType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + groupBy: { + baseName: "group_by", + type: "Array", + required: true, + }, + id: { + baseName: "id", + type: "string", + required: true, + }, + include: { + baseName: "include", + type: "string", + required: true, + }, + inputs: { + baseName: "inputs", + type: "Array", + required: true, + }, + mergeStrategies: { + baseName: "merge_strategies", + type: "Array", + required: true, + }, + type: { + baseName: "type", + type: "ObservabilityPipelineReduceProcessorType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineReduceProcessor.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessorMergeStrategy.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessorMergeStrategy.ts new file mode 100644 index 00000000000..ffd3b7f41c1 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessorMergeStrategy.ts @@ -0,0 +1,63 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineReduceProcessorMergeStrategyStrategy } from "./ObservabilityPipelineReduceProcessorMergeStrategyStrategy"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Defines how a specific field should be merged across grouped events. + */ +export class ObservabilityPipelineReduceProcessorMergeStrategy { + /** + * The field path in the log event. + */ + "path": string; + /** + * The merge strategy to apply. + */ + "strategy": ObservabilityPipelineReduceProcessorMergeStrategyStrategy; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + path: { + baseName: "path", + type: "string", + required: true, + }, + strategy: { + baseName: "strategy", + type: "ObservabilityPipelineReduceProcessorMergeStrategyStrategy", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineReduceProcessorMergeStrategy.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessorMergeStrategyStrategy.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessorMergeStrategyStrategy.ts new file mode 100644 index 00000000000..f481214c23f --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessorMergeStrategyStrategy.ts @@ -0,0 +1,38 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The merge strategy to apply. + */ + +export type ObservabilityPipelineReduceProcessorMergeStrategyStrategy = + | typeof DISCARD + | typeof RETAIN + | typeof SUM + | typeof MAX + | typeof MIN + | typeof ARRAY + | typeof CONCAT + | typeof CONCAT_NEWLINE + | typeof CONCAT_RAW + | typeof SHORTEST_ARRAY + | typeof LONGEST_ARRAY + | typeof FLAT_UNIQUE + | UnparsedObject; +export const DISCARD = "discard"; +export const RETAIN = "retain"; +export const SUM = "sum"; +export const MAX = "max"; +export const MIN = "min"; +export const ARRAY = "array"; +export const CONCAT = "concat"; +export const CONCAT_NEWLINE = "concat_newline"; +export const CONCAT_RAW = "concat_raw"; +export const SHORTEST_ARRAY = "shortest_array"; +export const LONGEST_ARRAY = "longest_array"; +export const FLAT_UNIQUE = "flat_unique"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessorType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessorType.ts new file mode 100644 index 00000000000..0192fafd270 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineReduceProcessorType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The processor type. The value should always be `reduce`. + */ + +export type ObservabilityPipelineReduceProcessorType = + | typeof REDUCE + | UnparsedObject; +export const REDUCE = "reduce"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestination.ts new file mode 100644 index 00000000000..14bb0ccc9f6 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestination.ts @@ -0,0 +1,82 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineSentinelOneDestinationRegion } from "./ObservabilityPipelineSentinelOneDestinationRegion"; +import { ObservabilityPipelineSentinelOneDestinationType } from "./ObservabilityPipelineSentinelOneDestinationType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `sentinel_one` destination sends logs to SentinelOne. + */ +export class ObservabilityPipelineSentinelOneDestination { + /** + * The unique identifier for this component. + */ + "id": string; + /** + * A list of component IDs whose output is used as the `input` for this component. + */ + "inputs": Array; + /** + * The SentinelOne region to send logs to. + */ + "region": ObservabilityPipelineSentinelOneDestinationRegion; + /** + * The destination type. The value should always be `sentinel_one`. + */ + "type": ObservabilityPipelineSentinelOneDestinationType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + id: { + baseName: "id", + type: "string", + required: true, + }, + inputs: { + baseName: "inputs", + type: "Array", + required: true, + }, + region: { + baseName: "region", + type: "ObservabilityPipelineSentinelOneDestinationRegion", + required: true, + }, + type: { + baseName: "type", + type: "ObservabilityPipelineSentinelOneDestinationType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineSentinelOneDestination.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestinationRegion.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestinationRegion.ts new file mode 100644 index 00000000000..0a9b2cfa850 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestinationRegion.ts @@ -0,0 +1,22 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The SentinelOne region to send logs to. + */ + +export type ObservabilityPipelineSentinelOneDestinationRegion = + | typeof US + | typeof EU + | typeof CA + | typeof DATA_SET_US + | UnparsedObject; +export const US = "us"; +export const EU = "eu"; +export const CA = "ca"; +export const DATA_SET_US = "data_set_us"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestinationType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestinationType.ts new file mode 100644 index 00000000000..9e0cf459fb9 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestinationType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The destination type. The value should always be `sentinel_one`. + */ + +export type ObservabilityPipelineSentinelOneDestinationType = + | typeof SENTINEL_ONE + | UnparsedObject; +export const SENTINEL_ONE = "sentinel_one"; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineThrottleProcessor.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineThrottleProcessor.ts new file mode 100644 index 00000000000..93db90abad5 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineThrottleProcessor.ts @@ -0,0 +1,109 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineThrottleProcessorType } from "./ObservabilityPipelineThrottleProcessorType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The `throttle` processor limits the number of events that pass through over a given time window. + */ +export class ObservabilityPipelineThrottleProcessor { + /** + * Optional list of fields used to group events before applying throttling. + */ + "groupBy"?: Array; + /** + * The unique identifier for this processor. + */ + "id": string; + /** + * A Datadog search query used to determine which logs this processor targets. + */ + "include": string; + /** + * A list of component IDs whose output is used as the input for this processor. + */ + "inputs": Array; + /** + * The number of events to allow before throttling is applied. + */ + "threshold": number; + /** + * The processor type. The value should always be `throttle`. + */ + "type": ObservabilityPipelineThrottleProcessorType; + /** + * The time window in seconds over which the threshold applies. + */ + "window": number; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + groupBy: { + baseName: "group_by", + type: "Array", + }, + id: { + baseName: "id", + type: "string", + required: true, + }, + include: { + baseName: "include", + type: "string", + required: true, + }, + inputs: { + baseName: "inputs", + type: "Array", + required: true, + }, + threshold: { + baseName: "threshold", + type: "number", + required: true, + format: "int64", + }, + type: { + baseName: "type", + type: "ObservabilityPipelineThrottleProcessorType", + required: true, + }, + window: { + baseName: "window", + type: "number", + required: true, + format: "double", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "any", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineThrottleProcessor.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineThrottleProcessorType.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineThrottleProcessorType.ts new file mode 100644 index 00000000000..9b60df3c48a --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineThrottleProcessorType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The processor type. The value should always be `throttle`. + */ + +export type ObservabilityPipelineThrottleProcessorType = + | typeof THROTTLE + | UnparsedObject; +export const THROTTLE = "throttle";