diff --git a/src/main/java/com/appdynamics/monitors/datapower/DataPowerMonitor.java b/src/main/java/com/appdynamics/monitors/datapower/DataPowerMonitor.java index 7102f84..c07732b 100644 --- a/src/main/java/com/appdynamics/monitors/datapower/DataPowerMonitor.java +++ b/src/main/java/com/appdynamics/monitors/datapower/DataPowerMonitor.java @@ -138,7 +138,7 @@ private void extractData(String statLabel, Metric[] metrics, Xml[] response, Sta } else { value = aggregate.getSum(); } - if(value!=null){ + if (value != null) { String label = StringUtils.trim(metric.getAggregateLabel(), "|"); String metricPath = statLabel + "|" + label; if (metric.getMultiplier() != null) { @@ -163,12 +163,15 @@ private MetricType getMetricType(Metric metric, Stat stat) { } private String multiply(String value, BigDecimal multiplier) { - if (value != null && multiplier != null) { - BigDecimal multiply = new BigDecimal(value).multiply(multiplier); - return multiply.setScale(0, RoundingMode.HALF_UP).toString(); - } else { - return value; + if (StringUtils.hasText(value)) { + if (multiplier != null) { + BigDecimal multiply = new BigDecimal(value).multiply(multiplier); + return multiply.setScale(0, RoundingMode.HALF_UP).toString(); + } else { + return new BigDecimal(value).setScale(0, RoundingMode.HALF_UP).toString(); + } } + return null; } private String getLabel(Xml xml, Metric metric) { diff --git a/src/test/java/com/appdynamics/monitors/datapower/DataPowerMonitorTest.java b/src/test/java/com/appdynamics/monitors/datapower/DataPowerMonitorTest.java index 9e32a7b..9d60181 100644 --- a/src/test/java/com/appdynamics/monitors/datapower/DataPowerMonitorTest.java +++ b/src/test/java/com/appdynamics/monitors/datapower/DataPowerMonitorTest.java @@ -48,9 +48,8 @@ public DataPowerMonitorTest() { //HTTPMeanTransactionTime put("DP|Transactions|helloworld_xmlfw|Average Response Time (ms)","8", "COLLECTIVE_OBSERVED_AVERAGE"); - put("DP|Transactions|userws_proxy|Average Response Time (ms)","15", "COLLECTIVE_OBSERVED_AVERAGE"); - put("DP|Transactions|wsproxy|Average Response Time (ms)","0", "COLLECTIVE_OBSERVED_AVERAGE"); - put("DP|Transactions|Average Response Time (ms)","8", "COLLECTIVE_OBSERVED_AVERAGE"); + put("DP|Transactions|userws_proxy|Average Response Time (ms)","17", "COLLECTIVE_OBSERVED_AVERAGE"); + put("DP|Transactions|Average Response Time (ms)","12", "COLLECTIVE_OBSERVED_AVERAGE"); //HTTPTransactions put("DP|Transactions|helloworld_xmlfw|Calls per Minute","180", "COLLECTIVE_OBSERVED_CURRENT"); put("DP|Transactions|userws_proxy|Calls per Minute","420", "COLLECTIVE_OBSERVED_CURRENT"); diff --git a/src/test/resources/output/HTTPMeanTransactionTime.xml b/src/test/resources/output/HTTPMeanTransactionTime.xml index f97e976..c19f668 100644 --- a/src/test/resources/output/HTTPMeanTransactionTime.xml +++ b/src/test/resources/output/HTTPMeanTransactionTime.xml @@ -5,7 +5,7 @@ helloworld_xmlfw - 8 + 8.03 8 29 30 @@ -13,7 +13,7 @@ userws_proxy - 15 + 16.52 15 17 18 @@ -21,7 +21,7 @@ wsproxy - 0 + 0 0 0