use of javax.management.j2ee.statistics.TimeStatistic in project newrelic-java-agent by newrelic.
the class J2EEStatsAttributeProcessor method processStatistic.
static void processStatistic(StatsEngine statsEngine, String metricName, Attribute attribute, Statistic statistic) {
String fullMetricName = metricName + '/' + statistic.getName();
Agent.LOG.finer(MessageFormat.format("Processing J2EE statistic: {0} class: {1}", statistic.getName(), statistic.getClass().getName()));
if (statistic instanceof CountStatistic) {
CountStatistic stat = (CountStatistic) statistic;
statsEngine.getStats(fullMetricName).recordDataPoint(stat.getCount());
} else if (statistic instanceof RangeStatistic) {
RangeStatistic stat = (RangeStatistic) statistic;
statsEngine.getStats(fullMetricName).recordDataPoint(stat.getCurrent());
} else if (statistic instanceof BoundaryStatistic) {
BoundaryStatistic stat = (BoundaryStatistic) statistic;
statsEngine.getStats(fullMetricName).recordDataPoint(stat.getLowerBound());
statsEngine.getStats(fullMetricName).recordDataPoint(stat.getUpperBound());
} else if (statistic instanceof TimeStatistic) {
TimeStatistic stat = (TimeStatistic) statistic;
TimeUnit unit = getTimeUnit(stat.getUnit());
statsEngine.getResponseTimeStats(fullMetricName).recordResponseTime((int) stat.getCount(), stat.getTotalTime(), stat.getMinTime(), stat.getMaxTime(), unit);
} else {
Agent.LOG.log(Level.FINEST, "Not supported: {0}", statistic.getClass().getName());
}
Agent.LOG.finer(MessageFormat.format("Processed J2EE statistic: {0} att: {1}", fullMetricName, statistic.getName()));
}
use of javax.management.j2ee.statistics.TimeStatistic in project newrelic-java-agent by newrelic.
the class J2EEStatsAttributeProcessor method addJmxValue.
/**
* Return true if the metric was found, meaning we do not need to continue through the rest of the metrics.
*/
static boolean addJmxValue(Attribute attribute, Statistic statistic, Map<String, Float> values) {
if (attribute.getName().contains(statistic.getName())) {
Agent.LOG.finer(MessageFormat.format("Adding J2EE statistic to List: {0} class: {1}", attribute.getName(), statistic.getClass().getName()));
if (statistic instanceof CountStatistic) {
CountStatistic stat = (CountStatistic) statistic;
values.put(attribute.getName(), (float) stat.getCount());
return true;
} else if (statistic instanceof RangeStatistic) {
RangeStatistic stat = (RangeStatistic) statistic;
values.put(attribute.getName(), (float) stat.getCurrent());
return true;
} else if (statistic instanceof BoundaryStatistic) {
BoundaryStatistic stat = (BoundaryStatistic) statistic;
values.put(attribute.getName(), (float) ((stat.getLowerBound() + stat.getUpperBound()) / 2));
return true;
} else if (statistic instanceof TimeStatistic) {
TimeStatistic stat = (TimeStatistic) statistic;
if (stat.getCount() == 0) {
values.put(attribute.getName(), 0f);
} else {
values.put(attribute.getName(), (float) (stat.getTotalTime() / stat.getCount()));
}
return true;
}
Agent.LOG.finer(MessageFormat.format("Added J2EE statistic: {0}", attribute.getName()));
} else {
Agent.LOG.log(Level.FINEST, MessageFormat.format("Ignoring stat {0}. Looking for att name {1}.", statistic.getName(), attribute.getName()));
}
return false;
}
Aggregations