/** {@inheritDoc} */ @Override public void addCounter(Counter counter) { addCounter(counter.getName(), counter.getDisplayName(), 0); }
private void checkIfTooManySkippedMsg(Counters counters) { double maxPercentSkippedSchemaNotFound = Double.parseDouble(props.getProperty(ETL_MAX_PERCENT_SKIPPED_SCHEMANOTFOUND, ETL_MAX_PERCENT_SKIPPED_SCHEMANOTFOUND_DEFAULT)); double maxPercentSkippedOther = Double.parseDouble(props.getProperty(ETL_MAX_PERCENT_SKIPPED_OTHER, ETL_MAX_PERCENT_SKIPPED_OTHER_DEFAULT)); long actualSkippedSchemaNotFound = 0; long actualSkippedOther = 0; long actualDecodeSuccessful = 0; for (String groupName : counters.getGroupNames()) { if (groupName.equals(EtlRecordReader.KAFKA_MSG.class.getName())) { CounterGroup group = counters.getGroup(groupName); for (Counter counter : group) { if (counter.getDisplayName().equals(EtlRecordReader.KAFKA_MSG.DECODE_SUCCESSFUL.toString())) { actualDecodeSuccessful = counter.getValue(); } else if (counter.getDisplayName().equals(EtlRecordReader.KAFKA_MSG.SKIPPED_SCHEMA_NOT_FOUND.toString())) { actualSkippedSchemaNotFound = counter.getValue(); } else if (counter.getDisplayName().equals(EtlRecordReader.KAFKA_MSG.SKIPPED_OTHER.toString())) { actualSkippedOther = counter.getValue(); } } } } checkIfTooManySkippedMsg(maxPercentSkippedSchemaNotFound, actualSkippedSchemaNotFound, actualDecodeSuccessful, "schema not found"); checkIfTooManySkippedMsg(maxPercentSkippedOther, actualSkippedOther, actualDecodeSuccessful, "other"); }
log.info("Group: " + group.getDisplayName()); for (Counter counter : group) { log.info(counter.getDisplayName() + ":\t" + counter.getValue());
/** * Get counter display name. * * @return String Hadoop counter display name. */ public String getDisplayName() { return counter.getDisplayName(); }
@Override public String getDisplayName() { return realCounter.getDisplayName(); }
public String getCounterDisplayName(String groupName, String counterName) { if (counters == null) { return null; } return counters.findCounter(groupName, counterName).getDisplayName(); }
public String getCounterDisplayName(Enum<?> key) { if (counters == null) { return null; } return counters.findCounter(key).getDisplayName(); } }
Counters counters = job.getCounters(); for (CounterGroup group : counters) { System.out.println("* Counter Group: " + group.getDisplayName() + " (" + group.getName() + ")"); System.out.println(" number of counters in this group: " + group.size()); for (Counter counter : group) { System.out.println(" - " + counter.getDisplayName() + ": " + counter.getName() + ": "+counter.getValue()); } }
public synchronized void incrAllCounters(CounterGroup rightGroup) { for(Counter right: rightGroup.counters.values()) { Counter left = findCounter(right.getName(), right.getDisplayName()); left.increment(right.getValue()); } } }
public synchronized void incrAllCounters(CounterGroup rightGroup) { for(Counter right: rightGroup.counters.values()) { Counter left = findCounter(right.getName(), right.getDisplayName()); left.increment(right.getValue()); } } }
@Override public synchronized boolean equals(Object genericRight) { if (genericRight instanceof Counter) { synchronized (genericRight) { Counter right = (Counter) genericRight; return getName().equals(right.getName()) && getDisplayName().equals(right.getDisplayName()) && getValue() == right.getValue(); } } return false; }
@Override public synchronized boolean equals(Object genericRight) { if (genericRight instanceof Counter) { synchronized (genericRight) { Counter right = (Counter) genericRight; return getName().equals(right.getName()) && getDisplayName().equals(right.getDisplayName()) && getValue() == right.getValue(); } } return false; }
@Override public synchronized boolean equals(Object genericRight) { if (genericRight instanceof Counter) { synchronized (genericRight) { Counter right = (Counter) genericRight; return getName().equals(right.getName()) && getDisplayName().equals(right.getDisplayName()) && getValue() == right.getValue(); } } return false; }
@Override public synchronized boolean equals(Object genericRight) { if (genericRight instanceof Counter) { synchronized (genericRight) { Counter right = (Counter) genericRight; return getName().equals(right.getName()) && getDisplayName().equals(right.getDisplayName()) && getValue() == right.getValue(); } } return false; }
@Override public void incrAllCounters(CounterGroupBase<T> rightGroup) { try { for (Counter right : rightGroup) { Counter left = findCounter(right.getName(), right.getDisplayName()); left.increment(right.getValue()); } } catch (LimitExceededException e) { counters.clear(); throw e; } } }
@Override public void incrAllCounters(CounterGroupBase<T> rightGroup) { try { for (Counter right : rightGroup) { Counter left = findCounter(right.getName(), right.getDisplayName()); left.increment(right.getValue()); } } catch (LimitExceededException e) { counters.clear(); throw e; } } }
@Override public void incrAllCounters(CounterGroupBase<T> rightGroup) { try { for (Counter right : rightGroup) { Counter left = findCounter(right.getName(), right.getDisplayName()); left.increment(right.getValue()); } } catch (LimitExceededException e) { counters.clear(); throw e; } } }
@Override public void incrAllCounters(CounterGroupBase<T> rightGroup) { try { for (Counter right : rightGroup) { Counter left = findCounter(right.getName(), right.getDisplayName()); left.increment(right.getValue()); } } catch (LimitExceededException e) { counters.clear(); throw e; } } }
private void validateCounters(org.apache.hadoop.mapreduce.Counters counters) { Iterator<org.apache.hadoop.mapreduce.CounterGroup> it = counters.iterator(); while (it.hasNext()) { org.apache.hadoop.mapreduce.CounterGroup group = it.next(); LOG.info("Group " + group.getDisplayName()); Iterator<org.apache.hadoop.mapreduce.Counter> itc = group.iterator(); while (itc.hasNext()) { LOG.info("Counter is " + itc.next().getDisplayName()); } } Assert.assertEquals(1, counters.countCounters()); }
private void submitCountersToStatsd(Job job) throws IOException { Counters counters = job.getCounters(); if (getStatsdEnabled(job)) { StatsDClient statsd = new NonBlockingStatsDClient("Camus", getStatsdHost(job), getStatsdPort(job), new String[] { "camus:counters" }); for (CounterGroup counterGroup : counters) { for (Counter counter : counterGroup) { statsd.gauge(counterGroup.getDisplayName() + "." + counter.getDisplayName(), counter.getValue()); } } } }