private void extractMetrics(
      MetricValueSetCollection metricValueSetCollection,
      String namespaceName,
      String resourceType,
      String resourceName) {
    Map<String, String> metrics = new HashMap<String, String>();
    List<MetricValueSet> metricValueSets = metricValueSetCollection.getMetricValueSets();
    for (MetricValueSet metricValueSet : metricValueSets) {
      StringBuilder keyBuilder = new StringBuilder(namespaceName);
      keyBuilder
          .append(AzureServiceBusMonitor.METRICS_SEPARATOR)
          .append(resourceType)
          .append(AzureServiceBusMonitor.METRICS_SEPARATOR)
          .append(resourceName)
          .append(AzureServiceBusMonitor.METRICS_SEPARATOR)
          .append(metricValueSet.getDisplayName());

      List<MetricValue> metricValues = metricValueSet.getMetricValues();
      String value = "0";
      if (metricValues != null && !metricValues.isEmpty()) {
        MetricValue metricValue = metricValues.get(0);
        if ("size".equals(metricValueSet.getName()) || "length".equals(metricValueSet.getName())) {
          String total = metricValue.getMaximum();
          if (total != null) {
            value = total;
          }
        } else {
          String total = metricValue.getTotal();
          if (total != null) {
            value = total;
          }
        }
      }
      metrics.put(keyBuilder.toString(), value);
    }
    printMetrics(metrics, metricPrefix);
  }