def get_statistics(options = {})
      options = options.merge(
        namespace: @namespace,
        metric_name: @name
      )
      resp = @client.get_metric_statistics(options)
      resp.data
    end
def get_statistics(options = {})
      options = options.merge(
        namespace: @namespace,
        metric_name: @name
      )
      resp = @client.get_metric_statistics(options)
      resp.data
    end
@!group Actions
 @example Request syntax with placeholder values

   metric.get_statistics({
     dimensions: [
       {
         name: "DimensionName", # required
         value: "DimensionValue", # required
       },
     ],
     start_time: Time.now, # required
     end_time: Time.now, # required
     period: 1, # required
     statistics: ["SampleCount"], # accepts SampleCount, Average, Sum, Minimum, Maximum
     extended_statistics: ["ExtendedStatistic"],
     unit: "Seconds", # accepts Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Percent, Count, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count/Second, None
   })
 @param [Hash] options ({})
 @option options [Array<Types::Dimension>] :dimensions
   The dimensions. If the metric contains multiple dimensions, you must
   include a value for each dimension. CloudWatch treats each unique
   combination of dimensions as a separate metric. If a specific
   combination of dimensions was not published, you can't retrieve
   statistics for it. You must specify the same dimensions that were used
   when the metrics were created. For an example, see [Dimension
   Combinations][1] in the *Amazon CloudWatch User Guide*. For more
   information about specifying dimensions, see [Publishing Metrics][2]
   in the *Amazon CloudWatch User Guide*.



   [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#dimension-combinations
   [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html
 @option options [required, Time,DateTime,Date,Integer,String] :start_time
   The time stamp that determines the first data point to return. Start
   times are evaluated relative to the time that CloudWatch receives the
   request.

   The value specified is inclusive; results include data points with the
   specified time stamp. The time stamp must be in ISO 8601 UTC format
   (for example, 2016-10-03T23:00:00Z).

   CloudWatch rounds the specified time stamp as follows:

   * Start time less than 15 days ago - Round down to the nearest whole
     minute. For example, 12:32:34 is rounded down to 12:32:00.

   * Start time between 15 and 63 days ago - Round down to the nearest
     5-minute clock interval. For example, 12:32:34 is rounded down to
     12:30:00.

   * Start time greater than 63 days ago - Round down to the nearest
     1-hour clock interval. For example, 12:32:34 is rounded down to
     12:00:00.

   If you set `Period` to 5, 10, or 30, the start time of your request is
   rounded down to the nearest time that corresponds to even 5-, 10-, or
   30-second divisions of a minute. For example, if you make a query at
   (HH:mm:ss) 01:05:23 for the previous 10-second period, the start time
   of your request is rounded down and you receive data from 01:05:10 to
   01:05:20. If you make a query at 15:07:17 for the previous 5 minutes
   of data, using a period of 5 seconds, you receive data timestamped
   between 15:02:15 and 15:07:15.
 @option options [required, Time,DateTime,Date,Integer,String] :end_time
   The time stamp that determines the last data point to return.

   The value specified is exclusive; results include data points up to
   the specified time stamp. The time stamp must be in ISO 8601 UTC
   format (for example, 2016-10-10T23:00:00Z).
 @option options [required, Integer] :period
   The granularity, in seconds, of the returned data points. For metrics
   with regular resolution, a period can be as short as one minute (60
   seconds) and must be a multiple of 60. For high-resolution metrics
   that are collected at intervals of less than one minute, the period
   can be 1, 5, 10, 30, 60, or any multiple of 60. High-resolution
   metrics are those metrics stored by a `PutMetricData` call that
   includes a `StorageResolution` of 1 second.

   If the `StartTime` parameter specifies a time stamp that is greater
   than 3 hours ago, you must specify the period as follows or no data
   points in that time range is returned:

   * Start time between 3 hours and 15 days ago - Use a multiple of 60
     seconds (1 minute).

   * Start time between 15 and 63 days ago - Use a multiple of 300
     seconds (5 minutes).

   * Start time greater than 63 days ago - Use a multiple of 3600 seconds
     (1 hour).
 @option options [Array<String>] :statistics
   The metric statistics, other than percentile. For percentile
   statistics, use `ExtendedStatistics`. When calling
   `GetMetricStatistics`, you must specify either `Statistics` or
   `ExtendedStatistics`, but not both.
 @option options [Array<String>] :extended_statistics
   The percentile statistics. Specify values between p0.0 and p100. When
   calling `GetMetricStatistics`, you must specify either `Statistics` or
   `ExtendedStatistics`, but not both. Percentile statistics are not
   available for metrics when any of the metric values are negative
   numbers.
 @option options [String] :unit
   The unit for a given metric. Metrics may be reported in multiple
   units. Not supplying a unit results in all units being returned. If
   you specify only a unit that the metric does not report, the results
   of the call are null.
 @return [Types::GetMetricStatisticsOutput]