public void createMetricsForQuotaResources(List<String> quotaResourceIds) {
    for (final String quotaResourceId : quotaResourceIds) {
      perQuotaResourceDelayedRequestMap.putIfAbsent(quotaResourceId, metricRegistry.counter(
          MetricRegistry.name(QuotaEnforcer.class,
              String.format("QuotaResource-%s-DelayedRequestCount", quotaResourceId))));
      perQuotaResourceOutOfQuotaMap.putIfAbsent(quotaResourceId, metricRegistry.counter(
          MetricRegistry.name(QuotaEnforcer.class,
              String.format("QuotaResource-%s-OutOfQuotaRequestCount", quotaResourceId))));
      perQuotaResourceWouldBeThrottledMap.putIfAbsent(quotaResourceId, metricRegistry.counter(
          MetricRegistry.name(QuotaEnforcer.class,
              String.format("QuotaResource-%s-WouldBeThrottledCount", quotaResourceId))));
    }
  }
Creates the per quota resource metric to track if there were any out of quota or delayed requests.
Note that this method is not thread, and it should be called from a synchronized context.
@param quotaResourceIds {@link List} of {@link String} resource ids to track.
ambry-api/src/main/java/com/github/ambry/quota/QuotaMetrics.java