code: def get_metrics(self, start, end, period):
          
          values = {}
          default_dimensions = {
              'Policy': self.policy.name, 'ResType': self.policy.resource_type,
              'Scope': 'Policy'}
  
          metrics = list(self.POLICY_METRICS)
  
          # Support action, and filter custom metrics
          for el in itertools.chain(
                  self.policy.resource_manager.actions,
                  self.policy.resource_manager.filters):
              if el.metrics:
                  metrics.extend(el.metrics)
  
          session = utils.local_session(self.policy.session_factory)
          client = session.client('cloudwatch')
  
          for m in metrics:
              if isinstance(m, six.string_types):
                  dimensions = default_dimensions
              else:
                  m, m_dimensions = m
                  dimensions = dict(default_dimensions)
                  dimensions.update(m_dimensions)
              results = client.get_metric_statistics(
                  Namespace=DEFAULT_NAMESPACE,
                  Dimensions=[
                      {'Name': k, 'Value': v} for k, v
                      in dimensions.items()],
                  Statistics=['Sum', 'Average'],
                  StartTime=start,
                  EndTime=end,
                  Period=period,
                  MetricName=m)
              values[m] = results['Datapoints']
          return values
docs: Retrieve any associated metrics for the policy.