code: func (c *CloudWatch) GetMetricDataWithContext(ctx aws.Context, input *GetMetricDataInput, opts ...request.Option) (*GetMetricDataOutput, error) {
  	req, out := c.GetMetricDataRequest(input)
  	req.SetContext(ctx)
  	req.ApplyOptions(opts...)
  	return out, req.Send()
  }
docs: // GetMetricDataWithContext is the same as GetMetricData with the addition of
  // the ability to pass a context and additional request options.
  //
  // See GetMetricData for details on how to use this API operation.
  //
  // The context must be non-nil and will be used for request cancellation. If
  // the context is nil a panic will occur. In the future the SDK may create
  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  // for more information on using Contexts.