code: public static List<ApacheMetrics> findMetrics(List<String> metricsNames) {
          if (metricsNames == null || metricsNames.isEmpty()) {
              return Collections.singletonList(ApacheMetrics.SERVER_UPTIME);
          }
          final List<ApacheMetrics> result = new ArrayList<>(metricsNames.size());
          for (ApacheMetrics metric : getMetricsOfType(ApacheMetrics.class)) {
              if (metricsNames.contains(metric.getCaption())) {
                  result.add(metric);
                  continue;
              }
              //we need 'uptime' to monitor apache restarts.
              if (metric == ApacheMetrics.SERVER_UPTIME) {
                  result.add(metric);
              }
          }
          return result;
      }
docs: Get ApacheMetrics by their names. Order of ApacheMetrics in the resulting list
  is constant and does not depend on order of metric names.
  {@link #SERVER_UPTIME} is added to the result even if its name is not passed.
  @param metricsNames names of metrics.
  @return list of metrics found.