private static List labelsMapToList()

in validator/src/main/java/com/amazon/aoc/models/prometheus/PrometheusMetric.java [96:121]


  private static List<String> labelsMapToList(Map<String, String> labelsMap) {
    List<String> labelsList = new ArrayList<>();
    for (Map.Entry<String, String> entry : labelsMap.entrySet()) {
      String key = entry.getKey();
      String value = entry.getValue();

      // skip validation of labels that ADOT may add (we only keep labels created by
      // prometheus or by the sample app). All sample app metrics will be prefixed
      // by 'key'.
      if (!key.equals(HISTOGRAM_BOUND_FIELD)
              && !key.equals(QUANTILE_FIELD)
              && key.indexOf(KEY_FIELD) != 0) {
        continue;
      }

      try {
        BigDecimal bd = new BigDecimal(value);
        value = bd.setScale(3, RoundingMode.HALF_UP).toPlainString();
      } catch (NumberFormatException ignored) {
        continue;
      }

      labelsList.add(key + ":" + value);
    }
    return labelsList;
  }