datadog_api_client 2.48.0 → 2.49.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +424 -44
  3. data/.generator/schemas/v2/openapi.yaml +2290 -500
  4. data/CHANGELOG.md +25 -0
  5. data/examples/v1/dashboards/CreateDashboard_1093147852.rb +66 -0
  6. data/examples/v1/dashboards/CreateDashboard_1442588603.rb +1 -1
  7. data/examples/v1/dashboards/CreateDashboard_1617893815.rb +61 -0
  8. data/examples/v1/dashboards/CreateDashboard_1712853070.rb +66 -0
  9. data/examples/v1/dashboards/CreateDashboard_2345541687.rb +65 -0
  10. data/examples/v1/dashboards/CreateDashboard_252716965.rb +1 -1
  11. data/examples/v1/dashboards/CreateDashboard_2617251399.rb +66 -0
  12. data/examples/v1/dashboards/CreateDashboard_2823363212.rb +55 -0
  13. data/examples/v1/dashboards/CreateDashboard_3882428227.rb +1 -1
  14. data/examples/v1/monitors/CreateMonitor_3626832481.rb +33 -0
  15. data/examples/v1/synthetics/CreateSyntheticsAPITest_2106135939.rb +49 -0
  16. data/examples/v1/tags/GetHostTags.rb +1 -1
  17. data/examples/v1/tags/ListHostTags.rb +1 -1
  18. data/examples/v2/aws-integration/CreateAWSAccount.rb +0 -11
  19. data/examples/v2/aws-integration/CreateAWSAccount_1716720881.rb +0 -11
  20. data/examples/v2/aws-integration/UpdateAWSAccount.rb +0 -11
  21. data/examples/v2/observability-pipelines/CreatePipeline.rb +1 -1
  22. data/examples/v2/observability-pipelines/UpdatePipeline.rb +1 -1
  23. data/examples/v2/observability-pipelines/ValidatePipeline.rb +1 -1
  24. data/examples/v2/reference-tables/UpdateReferenceTable.rb +0 -1
  25. data/examples/v2/reference-tables/UpsertRows.rb +1 -3
  26. data/examples/v2/security-monitoring/CreateSecurityMonitoringCriticalAsset.rb +20 -0
  27. data/examples/v2/security-monitoring/DeleteSecurityMonitoringCriticalAsset.rb +8 -0
  28. data/examples/v2/security-monitoring/GetCriticalAssetsAffectingRule.rb +8 -0
  29. data/examples/v2/security-monitoring/GetSecurityMonitoringCriticalAsset.rb +8 -0
  30. data/examples/v2/security-monitoring/ListSecurityFindings.rb +5 -0
  31. data/examples/v2/security-monitoring/ListSecurityFindings_2925663885.rb +8 -0
  32. data/examples/v2/security-monitoring/ListSecurityMonitoringCriticalAssets.rb +5 -0
  33. data/examples/v2/security-monitoring/SearchSecurityFindings.rb +13 -0
  34. data/examples/v2/security-monitoring/SearchSecurityFindings_3678541639.rb +16 -0
  35. data/examples/v2/security-monitoring/UpdateSecurityMonitoringCriticalAsset.rb +24 -0
  36. data/examples/v2/spa/GetSPARecommendations.rb +1 -1
  37. data/examples/v2/spa/GetSPARecommendationsWithShard.rb +8 -0
  38. data/lib/datadog_api_client/configuration.rb +7 -6
  39. data/lib/datadog_api_client/inflector.rb +79 -6
  40. data/lib/datadog_api_client/v1/api/tags_api.rb +17 -17
  41. data/lib/datadog_api_client/v1/models/bar_chart_widget_definition.rb +216 -0
  42. data/lib/datadog_api_client/v1/models/bar_chart_widget_definition_type.rb +26 -0
  43. data/lib/datadog_api_client/v1/models/bar_chart_widget_display.rb +63 -0
  44. data/lib/datadog_api_client/v1/models/bar_chart_widget_flat.rb +123 -0
  45. data/lib/datadog_api_client/v1/models/bar_chart_widget_flat_type.rb +26 -0
  46. data/lib/datadog_api_client/v1/models/bar_chart_widget_legend.rb +28 -0
  47. data/lib/datadog_api_client/v1/models/bar_chart_widget_request.rb +261 -0
  48. data/lib/datadog_api_client/v1/models/bar_chart_widget_scaling.rb +27 -0
  49. data/lib/datadog_api_client/v1/models/bar_chart_widget_stacked.rb +133 -0
  50. data/lib/datadog_api_client/v1/models/bar_chart_widget_stacked_type.rb +26 -0
  51. data/lib/datadog_api_client/v1/models/bar_chart_widget_style.rb +125 -0
  52. data/lib/datadog_api_client/v1/models/distribution_widget_request.rb +36 -2
  53. data/lib/datadog_api_client/v1/models/distribution_widget_x_axis.rb +29 -1
  54. data/lib/datadog_api_client/v1/models/heat_map_widget_definition.rb +23 -1
  55. data/lib/datadog_api_client/v1/models/heat_map_widget_request.rb +21 -1
  56. data/lib/datadog_api_client/v1/models/heat_map_widget_x_axis.rb +107 -0
  57. data/lib/datadog_api_client/v1/models/host_tags.rb +2 -2
  58. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_data_quality_data_source.rb +26 -0
  59. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_data_quality_model_type_override.rb +28 -0
  60. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_data_quality_monitor_options.rb +147 -0
  61. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_data_quality_query_definition.rb +232 -0
  62. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_query_definition.rb +2 -1
  63. data/lib/datadog_api_client/v1/models/monitor_type.rb +1 -0
  64. data/lib/datadog_api_client/v1/models/split_graph_source_widget_definition.rb +1 -0
  65. data/lib/datadog_api_client/v1/models/synthetics_api_step.rb +2 -1
  66. data/lib/datadog_api_client/v1/models/synthetics_api_subtest_step.rb +236 -0
  67. data/lib/datadog_api_client/v1/models/synthetics_api_subtest_step_subtype.rb +26 -0
  68. data/lib/datadog_api_client/v1/models/tag_to_hosts.rb +2 -2
  69. data/lib/datadog_api_client/v1/models/widget_definition.rb +1 -0
  70. data/lib/datadog_api_client/v1/models/{distribution_widget_histogram_request_type.rb → widget_histogram_request_type.rb} +1 -1
  71. data/lib/datadog_api_client/v1/models/widget_marker.rb +3 -1
  72. data/lib/datadog_api_client/v2/api/events_api.rb +0 -2
  73. data/lib/datadog_api_client/v2/api/fleet_automation_api.rb +3 -3
  74. data/lib/datadog_api_client/v2/api/observability_pipelines_api.rb +6 -6
  75. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +597 -0
  76. data/lib/datadog_api_client/v2/api/spa_api.rb +86 -11
  77. data/lib/datadog_api_client/v2/models/aws_account_create_request_attributes.rb +1 -11
  78. data/lib/datadog_api_client/v2/models/aws_account_response_attributes.rb +1 -11
  79. data/lib/datadog_api_client/v2/models/aws_account_update_request_attributes.rb +1 -11
  80. data/lib/datadog_api_client/v2/models/azure_storage_destination.rb +2 -0
  81. data/lib/datadog_api_client/v2/models/batch_upsert_rows_request_data_attributes.rb +2 -2
  82. data/lib/datadog_api_client/v2/models/batch_upsert_rows_request_data_attributes_value.rb +63 -0
  83. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +23 -1
  84. data/lib/datadog_api_client/v2/models/list_security_findings_response.rb +127 -0
  85. data/lib/datadog_api_client/v2/models/microsoft_sentinel_destination.rb +2 -0
  86. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor.rb +3 -1
  87. data/lib/datadog_api_client/v2/models/observability_pipeline_add_fields_processor.rb +4 -2
  88. data/lib/datadog_api_client/v2/models/observability_pipeline_add_hostname_processor.rb +198 -0
  89. data/lib/datadog_api_client/v2/models/observability_pipeline_add_hostname_processor_type.rb +26 -0
  90. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_data_firehose_source.rb +3 -1
  91. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination.rb +2 -0
  92. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_destination.rb +2 -0
  93. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_source.rb +3 -1
  94. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_security_lake_destination.rb +2 -0
  95. data/lib/datadog_api_client/v2/models/observability_pipeline_cloud_prem_destination.rb +169 -0
  96. data/lib/datadog_api_client/v2/models/observability_pipeline_cloud_prem_destination_type.rb +26 -0
  97. data/lib/datadog_api_client/v2/models/observability_pipeline_config.rb +25 -1
  98. data/lib/datadog_api_client/v2/models/observability_pipeline_config_destination_item.rb +17 -13
  99. data/lib/datadog_api_client/v2/models/observability_pipeline_config_pipeline_type.rb +27 -0
  100. data/lib/datadog_api_client/v2/models/observability_pipeline_config_processor_item.rb +14 -10
  101. data/lib/datadog_api_client/v2/models/observability_pipeline_config_source_item.rb +11 -10
  102. data/lib/datadog_api_client/v2/models/observability_pipeline_crowd_strike_next_gen_siem_destination.rb +2 -0
  103. data/lib/datadog_api_client/v2/models/observability_pipeline_custom_processor.rb +3 -1
  104. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_agent_source.rb +4 -2
  105. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_logs_destination.rb +2 -0
  106. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_metrics_destination.rb +169 -0
  107. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_metrics_destination_type.rb +26 -0
  108. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_tags_processor.rb +4 -2
  109. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor.rb +3 -1
  110. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination.rb +13 -1
  111. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination_data_stream.rb +125 -0
  112. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_processor.rb +15 -3
  113. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_reference_table.rb +156 -0
  114. data/lib/datadog_api_client/v2/models/observability_pipeline_filter_processor.rb +6 -4
  115. data/lib/datadog_api_client/v2/models/observability_pipeline_fluent_bit_source.rb +3 -1
  116. data/lib/datadog_api_client/v2/models/observability_pipeline_fluentd_source.rb +3 -1
  117. data/lib/datadog_api_client/v2/models/observability_pipeline_generate_metrics_processor.rb +3 -1
  118. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination.rb +2 -0
  119. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination.rb +2 -0
  120. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_destination.rb +2 -0
  121. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_source.rb +3 -1
  122. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_destination.rb +220 -0
  123. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_destination_auth_strategy.rb +28 -0
  124. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_destination_compression.rb +123 -0
  125. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_destination_compression_algorithm.rb +26 -0
  126. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_destination_encoding.rb +26 -0
  127. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_destination_type.rb +26 -0
  128. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source.rb +3 -1
  129. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source_auth_strategy.rb +1 -0
  130. data/lib/datadog_api_client/v2/models/observability_pipeline_http_server_source.rb +2 -0
  131. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_destination.rb +361 -0
  132. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_destination_compression.rb +30 -0
  133. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_destination_encoding.rb +27 -0
  134. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_destination_type.rb +26 -0
  135. data/lib/datadog_api_client/v2/models/{observability_pipeline_kafka_source_librdkafka_option.rb → observability_pipeline_kafka_librdkafka_option.rb} +3 -3
  136. data/lib/datadog_api_client/v2/models/{observability_pipeline_kafka_source_sasl.rb → observability_pipeline_kafka_sasl.rb} +3 -3
  137. data/lib/datadog_api_client/v2/models/{observability_pipeline_pipeline_kafka_source_sasl_mechanism.rb → observability_pipeline_kafka_sasl_mechanism.rb} +1 -1
  138. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_source.rb +5 -3
  139. data/lib/datadog_api_client/v2/models/observability_pipeline_logstash_source.rb +3 -1
  140. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_tags_processor.rb +229 -0
  141. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_tags_processor_rule.rb +188 -0
  142. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_tags_processor_rule_action.rb +27 -0
  143. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_tags_processor_rule_mode.rb +26 -0
  144. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_tags_processor_type.rb +26 -0
  145. data/lib/datadog_api_client/v2/models/observability_pipeline_new_relic_destination.rb +2 -0
  146. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor.rb +3 -1
  147. data/lib/datadog_api_client/v2/models/observability_pipeline_open_search_destination.rb +2 -0
  148. data/lib/datadog_api_client/v2/models/observability_pipeline_opentelemetry_source.rb +176 -0
  149. data/lib/datadog_api_client/v2/models/observability_pipeline_opentelemetry_source_type.rb +26 -0
  150. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor.rb +3 -1
  151. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_json_processor.rb +3 -1
  152. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_xml_processor.rb +300 -0
  153. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_xml_processor_type.rb +26 -0
  154. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor.rb +21 -6
  155. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor_overflow_action.rb +1 -1
  156. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor.rb +3 -1
  157. data/lib/datadog_api_client/v2/models/observability_pipeline_remove_fields_processor.rb +4 -2
  158. data/lib/datadog_api_client/v2/models/observability_pipeline_rename_fields_processor.rb +3 -1
  159. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_destination.rb +2 -0
  160. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_source.rb +3 -1
  161. data/lib/datadog_api_client/v2/models/observability_pipeline_sample_processor.rb +35 -20
  162. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor.rb +4 -2
  163. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_custom_pattern_options.rb +11 -1
  164. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_library_pattern_options.rb +11 -1
  165. data/lib/datadog_api_client/v2/models/observability_pipeline_sentinel_one_destination.rb +2 -0
  166. data/lib/datadog_api_client/v2/models/observability_pipeline_socket_destination.rb +2 -0
  167. data/lib/datadog_api_client/v2/models/observability_pipeline_socket_source.rb +3 -1
  168. data/lib/datadog_api_client/v2/models/observability_pipeline_split_array_processor.rb +229 -0
  169. data/lib/datadog_api_client/v2/models/observability_pipeline_split_array_processor_array_config.rb +144 -0
  170. data/lib/datadog_api_client/v2/models/observability_pipeline_split_array_processor_type.rb +26 -0
  171. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_destination.rb +3 -1
  172. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_source.rb +3 -1
  173. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_tcp_source.rb +3 -1
  174. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination.rb +2 -0
  175. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_source.rb +3 -1
  176. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_destination.rb +2 -0
  177. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_source.rb +3 -1
  178. data/lib/datadog_api_client/v2/models/observability_pipeline_throttle_processor.rb +3 -1
  179. data/lib/datadog_api_client/v2/models/patch_table_request_data_attributes.rb +1 -11
  180. data/lib/datadog_api_client/v2/models/recommendation_attributes.rb +11 -1
  181. data/lib/datadog_api_client/v2/models/security_findings_attributes.rb +127 -0
  182. data/lib/datadog_api_client/v2/models/security_findings_data.rb +125 -0
  183. data/lib/datadog_api_client/v2/models/security_findings_data_type.rb +26 -0
  184. data/lib/datadog_api_client/v2/models/security_findings_links.rb +105 -0
  185. data/lib/datadog_api_client/v2/models/{data_export_config.rb → security_findings_meta.rb} +32 -42
  186. data/lib/datadog_api_client/v2/models/security_findings_page.rb +105 -0
  187. data/lib/datadog_api_client/v2/models/security_findings_search_request.rb +105 -0
  188. data/lib/datadog_api_client/v2/models/security_findings_search_request_data.rb +105 -0
  189. data/lib/datadog_api_client/v2/models/security_findings_search_request_data_attributes.rb +125 -0
  190. data/lib/datadog_api_client/v2/models/security_findings_search_request_page.rb +137 -0
  191. data/lib/datadog_api_client/v2/models/security_findings_sort.rb +27 -0
  192. data/lib/datadog_api_client/v2/models/security_findings_status.rb +27 -0
  193. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset.rb +125 -0
  194. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_attributes.rb +235 -0
  195. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_create_attributes.rb +187 -0
  196. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_create_data.rb +144 -0
  197. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_create_request.rb +123 -0
  198. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_response.rb +105 -0
  199. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_severity.rb +32 -0
  200. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_type.rb +26 -0
  201. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_update_attributes.rb +175 -0
  202. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_update_data.rb +144 -0
  203. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_update_request.rb +123 -0
  204. data/lib/datadog_api_client/v2/models/{awsccm_config.rb → security_monitoring_critical_assets_response.rb} +12 -12
  205. data/lib/datadog_api_client/version.rb +1 -1
  206. metadata +99 -7
@@ -0,0 +1,198 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The `add_hostname` processor adds the hostname to log events.
21
+ #
22
+ # **Supported pipeline types:** logs
23
+ class ObservabilityPipelineAddHostnameProcessor
24
+ include BaseGenericModel
25
+
26
+ # The display name for a component.
27
+ attr_accessor :display_name
28
+
29
+ # Indicates whether the processor is enabled.
30
+ attr_reader :enabled
31
+
32
+ # The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components).
33
+ attr_reader :id
34
+
35
+ # A Datadog search query used to determine which logs this processor targets.
36
+ attr_reader :include
37
+
38
+ # The processor type. The value should always be `add_hostname`.
39
+ attr_reader :type
40
+
41
+ attr_accessor :additional_properties
42
+
43
+ # Attribute mapping from ruby-style variable name to JSON key.
44
+ # @!visibility private
45
+ def self.attribute_map
46
+ {
47
+ :'display_name' => :'display_name',
48
+ :'enabled' => :'enabled',
49
+ :'id' => :'id',
50
+ :'include' => :'include',
51
+ :'type' => :'type'
52
+ }
53
+ end
54
+
55
+ # Attribute type mapping.
56
+ # @!visibility private
57
+ def self.openapi_types
58
+ {
59
+ :'display_name' => :'String',
60
+ :'enabled' => :'Boolean',
61
+ :'id' => :'String',
62
+ :'include' => :'String',
63
+ :'type' => :'ObservabilityPipelineAddHostnameProcessorType'
64
+ }
65
+ end
66
+
67
+ # Initializes the object
68
+ # @param attributes [Hash] Model attributes in the form of hash
69
+ # @!visibility private
70
+ def initialize(attributes = {})
71
+ if (!attributes.is_a?(Hash))
72
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ObservabilityPipelineAddHostnameProcessor` initialize method"
73
+ end
74
+
75
+ self.additional_properties = {}
76
+ # check to see if the attribute exists and convert string to symbol for hash key
77
+ attributes = attributes.each_with_object({}) { |(k, v), h|
78
+ if (!self.class.attribute_map.key?(k.to_sym))
79
+ self.additional_properties[k.to_sym] = v
80
+ else
81
+ h[k.to_sym] = v
82
+ end
83
+ }
84
+
85
+ if attributes.key?(:'display_name')
86
+ self.display_name = attributes[:'display_name']
87
+ end
88
+
89
+ if attributes.key?(:'enabled')
90
+ self.enabled = attributes[:'enabled']
91
+ end
92
+
93
+ if attributes.key?(:'id')
94
+ self.id = attributes[:'id']
95
+ end
96
+
97
+ if attributes.key?(:'include')
98
+ self.include = attributes[:'include']
99
+ end
100
+
101
+ if attributes.key?(:'type')
102
+ self.type = attributes[:'type']
103
+ end
104
+ end
105
+
106
+ # Check to see if the all the properties in the model are valid
107
+ # @return true if the model is valid
108
+ # @!visibility private
109
+ def valid?
110
+ return false if @enabled.nil?
111
+ return false if @id.nil?
112
+ return false if @include.nil?
113
+ return false if @type.nil?
114
+ true
115
+ end
116
+
117
+ # Custom attribute writer method with validation
118
+ # @param enabled [Object] Object to be assigned
119
+ # @!visibility private
120
+ def enabled=(enabled)
121
+ if enabled.nil?
122
+ fail ArgumentError, 'invalid value for "enabled", enabled cannot be nil.'
123
+ end
124
+ @enabled = enabled
125
+ end
126
+
127
+ # Custom attribute writer method with validation
128
+ # @param id [Object] Object to be assigned
129
+ # @!visibility private
130
+ def id=(id)
131
+ if id.nil?
132
+ fail ArgumentError, 'invalid value for "id", id cannot be nil.'
133
+ end
134
+ @id = id
135
+ end
136
+
137
+ # Custom attribute writer method with validation
138
+ # @param include [Object] Object to be assigned
139
+ # @!visibility private
140
+ def include=(include)
141
+ if include.nil?
142
+ fail ArgumentError, 'invalid value for "include", include cannot be nil.'
143
+ end
144
+ @include = include
145
+ end
146
+
147
+ # Custom attribute writer method with validation
148
+ # @param type [Object] Object to be assigned
149
+ # @!visibility private
150
+ def type=(type)
151
+ if type.nil?
152
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
153
+ end
154
+ @type = type
155
+ end
156
+
157
+ # Returns the object in the form of hash, with additionalProperties support.
158
+ # @return [Hash] Returns the object in the form of hash
159
+ # @!visibility private
160
+ def to_hash
161
+ hash = {}
162
+ self.class.attribute_map.each_pair do |attr, param|
163
+ value = self.send(attr)
164
+ if value.nil?
165
+ is_nullable = self.class.openapi_nullable.include?(attr)
166
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
167
+ end
168
+
169
+ hash[param] = _to_hash(value)
170
+ end
171
+ self.additional_properties.each_pair do |attr, value|
172
+ hash[attr] = value
173
+ end
174
+ hash
175
+ end
176
+
177
+ # Checks equality by comparing each attribute.
178
+ # @param o [Object] Object to be compared
179
+ # @!visibility private
180
+ def ==(o)
181
+ return true if self.equal?(o)
182
+ self.class == o.class &&
183
+ display_name == o.display_name &&
184
+ enabled == o.enabled &&
185
+ id == o.id &&
186
+ include == o.include &&
187
+ type == o.type &&
188
+ additional_properties == o.additional_properties
189
+ end
190
+
191
+ # Calculates hash code according to all attributes.
192
+ # @return [Integer] Hash code
193
+ # @!visibility private
194
+ def hash
195
+ [display_name, enabled, id, include, type, additional_properties].hash
196
+ end
197
+ end
198
+ end
@@ -0,0 +1,26 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The processor type. The value should always be `add_hostname`.
21
+ class ObservabilityPipelineAddHostnameProcessorType
22
+ include BaseEnumModel
23
+
24
+ ADD_HOSTNAME = "add_hostname".freeze
25
+ end
26
+ end
@@ -18,6 +18,8 @@ require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
20
  # The `amazon_data_firehose` source ingests logs from AWS Data Firehose.
21
+ #
22
+ # **Supported pipeline types:** logs
21
23
  class ObservabilityPipelineAmazonDataFirehoseSource
22
24
  include BaseGenericModel
23
25
 
@@ -25,7 +27,7 @@ module DatadogAPIClient::V2
25
27
  # If omitted, the system’s default credentials are used (for example, the IAM role and environment variables).
26
28
  attr_accessor :auth
27
29
 
28
- # The unique identifier for this component. Used to reference this component in other parts of the pipeline (e.g., as input to downstream components).
30
+ # The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components).
29
31
  attr_reader :id
30
32
 
31
33
  # Configuration for enabling TLS encryption between the pipeline component and external services.
@@ -18,6 +18,8 @@ require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
20
  # The `amazon_opensearch` destination writes logs to Amazon OpenSearch.
21
+ #
22
+ # **Supported pipeline types:** logs
21
23
  class ObservabilityPipelineAmazonOpenSearchDestination
22
24
  include BaseGenericModel
23
25
 
@@ -18,6 +18,8 @@ require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
20
  # The `amazon_s3` destination sends your logs in Datadog-rehydratable format to an Amazon S3 bucket for archiving.
21
+ #
22
+ # **Supported pipeline types:** logs
21
23
  class ObservabilityPipelineAmazonS3Destination
22
24
  include BaseGenericModel
23
25
 
@@ -19,6 +19,8 @@ require 'time'
19
19
  module DatadogAPIClient::V2
20
20
  # The `amazon_s3` source ingests logs from an Amazon S3 bucket.
21
21
  # It supports AWS authentication and TLS encryption.
22
+ #
23
+ # **Supported pipeline types:** logs
22
24
  class ObservabilityPipelineAmazonS3Source
23
25
  include BaseGenericModel
24
26
 
@@ -26,7 +28,7 @@ module DatadogAPIClient::V2
26
28
  # If omitted, the system’s default credentials are used (for example, the IAM role and environment variables).
27
29
  attr_accessor :auth
28
30
 
29
- # The unique identifier for this component. Used to reference this component in other parts of the pipeline (e.g., as input to downstream components).
31
+ # The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components).
30
32
  attr_reader :id
31
33
 
32
34
  # AWS region where the S3 bucket resides.
@@ -18,6 +18,8 @@ require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
20
  # The `amazon_security_lake` destination sends your logs to Amazon Security Lake.
21
+ #
22
+ # **Supported pipeline types:** logs
21
23
  class ObservabilityPipelineAmazonSecurityLakeDestination
22
24
  include BaseGenericModel
23
25
 
@@ -0,0 +1,169 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The `cloud_prem` destination sends logs to Datadog CloudPrem.
21
+ #
22
+ # **Supported pipeline types:** logs
23
+ class ObservabilityPipelineCloudPremDestination
24
+ include BaseGenericModel
25
+
26
+ # The unique identifier for this component.
27
+ attr_reader :id
28
+
29
+ # A list of component IDs whose output is used as the `input` for this component.
30
+ attr_reader :inputs
31
+
32
+ # The destination type. The value should always be `cloud_prem`.
33
+ attr_reader :type
34
+
35
+ attr_accessor :additional_properties
36
+
37
+ # Attribute mapping from ruby-style variable name to JSON key.
38
+ # @!visibility private
39
+ def self.attribute_map
40
+ {
41
+ :'id' => :'id',
42
+ :'inputs' => :'inputs',
43
+ :'type' => :'type'
44
+ }
45
+ end
46
+
47
+ # Attribute type mapping.
48
+ # @!visibility private
49
+ def self.openapi_types
50
+ {
51
+ :'id' => :'String',
52
+ :'inputs' => :'Array<String>',
53
+ :'type' => :'ObservabilityPipelineCloudPremDestinationType'
54
+ }
55
+ end
56
+
57
+ # Initializes the object
58
+ # @param attributes [Hash] Model attributes in the form of hash
59
+ # @!visibility private
60
+ def initialize(attributes = {})
61
+ if (!attributes.is_a?(Hash))
62
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ObservabilityPipelineCloudPremDestination` initialize method"
63
+ end
64
+
65
+ self.additional_properties = {}
66
+ # check to see if the attribute exists and convert string to symbol for hash key
67
+ attributes = attributes.each_with_object({}) { |(k, v), h|
68
+ if (!self.class.attribute_map.key?(k.to_sym))
69
+ self.additional_properties[k.to_sym] = v
70
+ else
71
+ h[k.to_sym] = v
72
+ end
73
+ }
74
+
75
+ if attributes.key?(:'id')
76
+ self.id = attributes[:'id']
77
+ end
78
+
79
+ if attributes.key?(:'inputs')
80
+ if (value = attributes[:'inputs']).is_a?(Array)
81
+ self.inputs = value
82
+ end
83
+ end
84
+
85
+ if attributes.key?(:'type')
86
+ self.type = attributes[:'type']
87
+ end
88
+ end
89
+
90
+ # Check to see if the all the properties in the model are valid
91
+ # @return true if the model is valid
92
+ # @!visibility private
93
+ def valid?
94
+ return false if @id.nil?
95
+ return false if @inputs.nil?
96
+ return false if @type.nil?
97
+ true
98
+ end
99
+
100
+ # Custom attribute writer method with validation
101
+ # @param id [Object] Object to be assigned
102
+ # @!visibility private
103
+ def id=(id)
104
+ if id.nil?
105
+ fail ArgumentError, 'invalid value for "id", id cannot be nil.'
106
+ end
107
+ @id = id
108
+ end
109
+
110
+ # Custom attribute writer method with validation
111
+ # @param inputs [Object] Object to be assigned
112
+ # @!visibility private
113
+ def inputs=(inputs)
114
+ if inputs.nil?
115
+ fail ArgumentError, 'invalid value for "inputs", inputs cannot be nil.'
116
+ end
117
+ @inputs = inputs
118
+ end
119
+
120
+ # Custom attribute writer method with validation
121
+ # @param type [Object] Object to be assigned
122
+ # @!visibility private
123
+ def type=(type)
124
+ if type.nil?
125
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
126
+ end
127
+ @type = type
128
+ end
129
+
130
+ # Returns the object in the form of hash, with additionalProperties support.
131
+ # @return [Hash] Returns the object in the form of hash
132
+ # @!visibility private
133
+ def to_hash
134
+ hash = {}
135
+ self.class.attribute_map.each_pair do |attr, param|
136
+ value = self.send(attr)
137
+ if value.nil?
138
+ is_nullable = self.class.openapi_nullable.include?(attr)
139
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
140
+ end
141
+
142
+ hash[param] = _to_hash(value)
143
+ end
144
+ self.additional_properties.each_pair do |attr, value|
145
+ hash[attr] = value
146
+ end
147
+ hash
148
+ end
149
+
150
+ # Checks equality by comparing each attribute.
151
+ # @param o [Object] Object to be compared
152
+ # @!visibility private
153
+ def ==(o)
154
+ return true if self.equal?(o)
155
+ self.class == o.class &&
156
+ id == o.id &&
157
+ inputs == o.inputs &&
158
+ type == o.type &&
159
+ additional_properties == o.additional_properties
160
+ end
161
+
162
+ # Calculates hash code according to all attributes.
163
+ # @return [Integer] Hash code
164
+ # @!visibility private
165
+ def hash
166
+ [id, inputs, type, additional_properties].hash
167
+ end
168
+ end
169
+ end
@@ -0,0 +1,26 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The destination type. The value should always be `cloud_prem`.
21
+ class ObservabilityPipelineCloudPremDestinationType
22
+ include BaseEnumModel
23
+
24
+ CLOUD_PREM = "cloud_prem".freeze
25
+ end
26
+ end
@@ -24,7 +24,15 @@ module DatadogAPIClient::V2
24
24
  # A list of destination components where processed logs are sent.
25
25
  attr_reader :destinations
26
26
 
27
+ # The type of data being ingested. Defaults to `logs` if not specified.
28
+ attr_accessor :pipeline_type
29
+
30
+ # A list of processor groups that transform or enrich log data.
31
+ attr_accessor :processor_groups
32
+
27
33
  # A list of processor groups that transform or enrich log data.
34
+ #
35
+ # **Deprecated:** This field is deprecated, you should now use the processor_groups field.
28
36
  attr_accessor :processors
29
37
 
30
38
  # A list of configured data sources for the pipeline.
@@ -37,6 +45,8 @@ module DatadogAPIClient::V2
37
45
  def self.attribute_map
38
46
  {
39
47
  :'destinations' => :'destinations',
48
+ :'pipeline_type' => :'pipeline_type',
49
+ :'processor_groups' => :'processor_groups',
40
50
  :'processors' => :'processors',
41
51
  :'sources' => :'sources'
42
52
  }
@@ -47,6 +57,8 @@ module DatadogAPIClient::V2
47
57
  def self.openapi_types
48
58
  {
49
59
  :'destinations' => :'Array<ObservabilityPipelineConfigDestinationItem>',
60
+ :'pipeline_type' => :'ObservabilityPipelineConfigPipelineType',
61
+ :'processor_groups' => :'Array<ObservabilityPipelineConfigProcessorGroup>',
50
62
  :'processors' => :'Array<ObservabilityPipelineConfigProcessorGroup>',
51
63
  :'sources' => :'Array<ObservabilityPipelineConfigSourceItem>'
52
64
  }
@@ -76,6 +88,16 @@ module DatadogAPIClient::V2
76
88
  end
77
89
  end
78
90
 
91
+ if attributes.key?(:'pipeline_type')
92
+ self.pipeline_type = attributes[:'pipeline_type']
93
+ end
94
+
95
+ if attributes.key?(:'processor_groups')
96
+ if (value = attributes[:'processor_groups']).is_a?(Array)
97
+ self.processor_groups = value
98
+ end
99
+ end
100
+
79
101
  if attributes.key?(:'processors')
80
102
  if (value = attributes[:'processors']).is_a?(Array)
81
103
  self.processors = value
@@ -145,6 +167,8 @@ module DatadogAPIClient::V2
145
167
  return true if self.equal?(o)
146
168
  self.class == o.class &&
147
169
  destinations == o.destinations &&
170
+ pipeline_type == o.pipeline_type &&
171
+ processor_groups == o.processor_groups &&
148
172
  processors == o.processors &&
149
173
  sources == o.sources &&
150
174
  additional_properties == o.additional_properties
@@ -154,7 +178,7 @@ module DatadogAPIClient::V2
154
178
  # @return [Integer] Hash code
155
179
  # @!visibility private
156
180
  def hash
157
- [destinations, processors, sources, additional_properties].hash
181
+ [destinations, pipeline_type, processor_groups, processors, sources, additional_properties].hash
158
182
  end
159
183
  end
160
184
  end
@@ -26,25 +26,29 @@ module DatadogAPIClient::V2
26
26
  # List of class defined in oneOf (OpenAPI v3)
27
27
  def openapi_one_of
28
28
  [
29
- :'ObservabilityPipelineDatadogLogsDestination',
29
+ :'ObservabilityPipelineHttpClientDestination',
30
+ :'ObservabilityPipelineAmazonOpenSearchDestination',
30
31
  :'ObservabilityPipelineAmazonS3Destination',
31
- :'ObservabilityPipelineGoogleCloudStorageDestination',
32
- :'ObservabilityPipelineSplunkHecDestination',
33
- :'ObservabilityPipelineSumoLogicDestination',
34
- :'ObservabilityPipelineElasticsearchDestination',
35
- :'ObservabilityPipelineRsyslogDestination',
36
- :'ObservabilityPipelineSyslogNgDestination',
32
+ :'ObservabilityPipelineAmazonSecurityLakeDestination',
37
33
  :'AzureStorageDestination',
38
- :'MicrosoftSentinelDestination',
34
+ :'ObservabilityPipelineCloudPremDestination',
35
+ :'ObservabilityPipelineCrowdStrikeNextGenSiemDestination',
36
+ :'ObservabilityPipelineDatadogLogsDestination',
37
+ :'ObservabilityPipelineElasticsearchDestination',
39
38
  :'ObservabilityPipelineGoogleChronicleDestination',
39
+ :'ObservabilityPipelineGoogleCloudStorageDestination',
40
+ :'ObservabilityPipelineGooglePubSubDestination',
41
+ :'ObservabilityPipelineKafkaDestination',
42
+ :'MicrosoftSentinelDestination',
40
43
  :'ObservabilityPipelineNewRelicDestination',
41
- :'ObservabilityPipelineSentinelOneDestination',
42
44
  :'ObservabilityPipelineOpenSearchDestination',
43
- :'ObservabilityPipelineAmazonOpenSearchDestination',
45
+ :'ObservabilityPipelineRsyslogDestination',
46
+ :'ObservabilityPipelineSentinelOneDestination',
44
47
  :'ObservabilityPipelineSocketDestination',
45
- :'ObservabilityPipelineAmazonSecurityLakeDestination',
46
- :'ObservabilityPipelineCrowdStrikeNextGenSiemDestination',
47
- :'ObservabilityPipelineGooglePubSubDestination'
48
+ :'ObservabilityPipelineSplunkHecDestination',
49
+ :'ObservabilityPipelineSumoLogicDestination',
50
+ :'ObservabilityPipelineSyslogNgDestination',
51
+ :'ObservabilityPipelineDatadogMetricsDestination'
48
52
  ]
49
53
  end
50
54
  # Builds the object
@@ -0,0 +1,27 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The type of data being ingested. Defaults to `logs` if not specified.
21
+ class ObservabilityPipelineConfigPipelineType
22
+ include BaseEnumModel
23
+
24
+ LOGS = "logs".freeze
25
+ METRICS = "metrics".freeze
26
+ end
27
+ end
@@ -27,23 +27,27 @@ module DatadogAPIClient::V2
27
27
  def openapi_one_of
28
28
  [
29
29
  :'ObservabilityPipelineFilterProcessor',
30
+ :'ObservabilityPipelineAddEnvVarsProcessor',
31
+ :'ObservabilityPipelineAddFieldsProcessor',
32
+ :'ObservabilityPipelineAddHostnameProcessor',
33
+ :'ObservabilityPipelineCustomProcessor',
34
+ :'ObservabilityPipelineDatadogTagsProcessor',
35
+ :'ObservabilityPipelineDedupeProcessor',
36
+ :'ObservabilityPipelineEnrichmentTableProcessor',
37
+ :'ObservabilityPipelineGenerateMetricsProcessor',
38
+ :'ObservabilityPipelineOcsfMapperProcessor',
39
+ :'ObservabilityPipelineParseGrokProcessor',
30
40
  :'ObservabilityPipelineParseJSONProcessor',
41
+ :'ObservabilityPipelineParseXMLProcessor',
31
42
  :'ObservabilityPipelineQuotaProcessor',
32
- :'ObservabilityPipelineAddFieldsProcessor',
43
+ :'ObservabilityPipelineReduceProcessor',
33
44
  :'ObservabilityPipelineRemoveFieldsProcessor',
34
45
  :'ObservabilityPipelineRenameFieldsProcessor',
35
- :'ObservabilityPipelineGenerateMetricsProcessor',
36
46
  :'ObservabilityPipelineSampleProcessor',
37
- :'ObservabilityPipelineParseGrokProcessor',
38
47
  :'ObservabilityPipelineSensitiveDataScannerProcessor',
39
- :'ObservabilityPipelineOcsfMapperProcessor',
40
- :'ObservabilityPipelineAddEnvVarsProcessor',
41
- :'ObservabilityPipelineDedupeProcessor',
42
- :'ObservabilityPipelineEnrichmentTableProcessor',
43
- :'ObservabilityPipelineReduceProcessor',
48
+ :'ObservabilityPipelineSplitArrayProcessor',
44
49
  :'ObservabilityPipelineThrottleProcessor',
45
- :'ObservabilityPipelineCustomProcessor',
46
- :'ObservabilityPipelineDatadogTagsProcessor'
50
+ :'ObservabilityPipelineMetricTagsProcessor'
47
51
  ]
48
52
  end
49
53
  # Builds the object