Class: DatadogAPIClient::V2::TimeseriesAnomalyInvestigationsAPI

Inherits:
Object
  • Object
show all
Defined in:
lib/datadog_api_client/v2/api/timeseries_anomaly_investigations_api.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_client = DatadogAPIClient::APIClient.default) ⇒ TimeseriesAnomalyInvestigationsAPI

Returns a new instance of TimeseriesAnomalyInvestigationsAPI.



22
23
24
# File 'lib/datadog_api_client/v2/api/timeseries_anomaly_investigations_api.rb', line 22

def initialize(api_client = DatadogAPIClient::APIClient.default)
  @api_client = api_client
end

Instance Attribute Details

#api_client ⇒ Object

Returns the value of attribute api_client.



20
21
22
# File 'lib/datadog_api_client/v2/api/timeseries_anomaly_investigations_api.rb', line 20

def api_client
  @api_client
end

Instance Method Details

#create_timeseries_anomaly_investigation(body, opts = {}) ⇒ Object

Investigate a timeseries anomaly.



29
30
31
32
# File 'lib/datadog_api_client/v2/api/timeseries_anomaly_investigations_api.rb', line 29

def create_timeseries_anomaly_investigation(body, opts = {})
  data, _status_code, _headers = create_timeseries_anomaly_investigation_with_http_info(body, opts)
  data
end

#create_timeseries_anomaly_investigation_with_http_info(body, opts = {}) ⇒ Array<(TimeseriesAnomalyInvestigationResponse, Integer, Hash)>

Investigate a timeseries anomaly.

Investigates a metrics timeseries request for its most significant anomalies and returns deterministic findings. Metrics queries with or without grouping are supported. This API version accepts exactly one request and returns at most three anomalies.

Parameters:

  • body (TimeseriesAnomalyInvestigationRequest) —

    Metrics timeseries request to investigate. The request body must not exceed 2 MiB.

  • opts (Hash) (defaults to: {}) —

    the optional parameters

Returns:



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
# File 'lib/datadog_api_client/v2/api/timeseries_anomaly_investigations_api.rb', line 43

def create_timeseries_anomaly_investigation_with_http_info(body, opts = {})
  unstable_enabled = @api_client.config.unstable_operations["v2.create_timeseries_anomaly_investigation".to_sym]
  if unstable_enabled
    @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.create_timeseries_anomaly_investigation")
  else
    raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.create_timeseries_anomaly_investigation"))
  end

  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: TimeseriesAnomalyInvestigationsAPI.create_timeseries_anomaly_investigation ...'
  end
  # verify the required parameter 'body' is set
  if @api_client.config.client_side_validation && body.nil?
    fail ArgumentError, "Missing the required parameter 'body' when calling TimeseriesAnomalyInvestigationsAPI.create_timeseries_anomaly_investigation"
  end
  # resource path
  local_var_path = '/api/v2/timeseries-anomaly-investigations'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(body)

  # return_type
  return_type = opts[:debug_return_type] || 'TimeseriesAnomalyInvestigationResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]

  new_options = opts.merge(
    :operation => :create_timeseries_anomaly_investigation,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type,
    :api_version => "V2"
  )

  data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: TimeseriesAnomalyInvestigationsAPI#create_timeseries_anomaly_investigation\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end