protected void sendRegularMetrics(final Long epoch) {
   for (Entry<String, SortedMap<MetricName, Metric>> entry :
       getMetricsRegistry().groupedMetrics(c.predicate).entrySet()) {
     for (Entry<MetricName, Metric> subEntry : entry.getValue().entrySet()) {
       final Metric metric = subEntry.getValue();
       if (metric != null) {
         try {
           metric.processWith(this, subEntry.getKey(), epoch);
         } catch (Exception ignored) {
           LOG.error("Error sending regular metric:", ignored);
         }
       }
     }
   }
 }
 protected void pushRegularMetrics(long epoch) {
   for (Entry<String, SortedMap<MetricName, Metric>> entry :
       getMetricsRegistry().groupedMetrics(predicate).entrySet()) {
     for (Entry<MetricName, Metric> subEntry : entry.getValue().entrySet()) {
       final Metric metric = subEntry.getValue();
       if (metric != null) {
         try {
           metric.processWith(this, subEntry.getKey(), epoch);
         } catch (Exception e) {
           LOG.error("Error pushing metric", e);
         }
       }
     }
   }
 }
 protected void printRegularMetrics(long epoch) {
   for (Map.Entry<String, SortedMap<MetricName, Metric>> entry :
       getMetricsRegistry().groupedMetrics(predicate).entrySet()) {
     for (Map.Entry<MetricName, Metric> subEntry : entry.getValue().entrySet()) {
       final Metric metric = subEntry.getValue();
       if (metric != null) {
         try {
           log.info("Trying to process " + entry.getKey());
           metric.processWith(this, subEntry.getKey(), epoch);
         } catch (Exception ignored) {
           log.error("Error printing regular metrics:", ignored);
         }
       }
     }
   }
 }