code: @Override
      public void collectMetrics(Request<?> request, Response<?> response) {
          try {
              collectMetrics0(request, response);
          } catch(Exception ex) { // defensive code
              if (log.isDebugEnabled()) {
                  log.debug("Ignoring unexpected failure", ex);
              }
          }
      }
docs: Collects the metrics at the end of a request/response cycle, transforms
  the metric data points into a cloud watch metric datum representation,
  and then adds it to a memory queue so it will get summarized into the
  necessary statistics and uploaded to Amazon CloudWatch.