/** * Adds a transaction to the current aggregate. * * @param transaction The transaction to add. */ public void addTransaction(EtmPoint transaction) { double miliseconds = transaction.getTransactionTime(); measurements++; total += miliseconds; max = max > miliseconds ? max : miliseconds; min = min > miliseconds || min == 0 ? miliseconds : min; }
/** * Adds a transaction to the current aggregate. * * @param transaction The transaction to add. */ public void addTransaction(EtmPoint transaction) { double miliseconds = transaction.getTransactionTime(); measurements++; total += miliseconds; max = max > miliseconds ? max : miliseconds; min = min > miliseconds || min == 0 ? miliseconds : min; }
public String format(EtmPoint aEtmPoint) { String parentName = aEtmPoint.getParent() == null ? "" : calculateParentHierarchie(aEtmPoint); return new StringBuffer(). append("measurementPoint=<"). append(aEtmPoint.getName()). append(">, parent=<"). append(parentName). append(">, transactionTime=<"). append(numberFormat.format(aEtmPoint.getTransactionTime())). append(">, recordingTime=<"). append(aEtmPoint.getStartTimeMillis()). append(">").toString(); }
public void render(Map points) { assertNotNull(points); assertTrue(points.size() == 1); assertEquals(2, new TestHelper().countExecutions(points)); Aggregate aggregate = (Aggregate) points.get("test"); assertNotNull(aggregate); assertEquals("test", aggregate.getName()); assertEquals(2, aggregate.getMeasurements()); assertEquals(point.getTransactionTime() + point2.getTransactionTime(), aggregate.getTotal(), 0.000001); assertEquals(point2.getTransactionTime(), aggregate.getMin(), 0.000001); assertEquals(point.getTransactionTime(), aggregate.getMax(), 0.000001); }
public void onNextMeasurement(EtmPoint measurement) { long l = calculateTimestamp(measurement); // A B C D E // start = 15 0 15 15 15 // end = 20 5 20 20 20 // l = 100 23 23 19 14 // case A + B if (l > endInterval) { // case A and B if (startInterval == 0 || l > endInterval + increment) { startInterval = l; endInterval = startInterval + increment; } else { // case C flushStatus(); // proceed to next interval startInterval = endInterval; endInterval = startInterval + increment; } initAggregation(); } // case D if (l >= startInterval) { transactions++; double transactionTime = measurement.getTransactionTime(); min = transactionTime < min ? transactionTime : min; max = transactionTime > max ? transactionTime : max; total += transactionTime; } // else case E, ingore, must be historical data }
public void render(Map points) { assertNotNull(points); assertEquals(1, points.size()); assertEquals(1, new TestHelper().countExecutions(points)); Aggregate aggregate = (Aggregate) points.get("test"); assertNotNull(aggregate); assertEquals("test", aggregate.getName()); assertEquals(1, aggregate.getMeasurements()); assertEquals(point.getTransactionTime(), aggregate.getTotal(), 0.000001); assertEquals(point.getTransactionTime(), aggregate.getMin(), 0.000001); assertEquals(point.getTransactionTime(), aggregate.getMax(), 0.000001); } });
public void render(Map points) { assertNotNull(points); assertTrue(points.size() == 2); assertEquals(4, new TestHelper().countExecutions(points)); Aggregate aggregate = (Aggregate) points.get("test"); assertNotNull(aggregate); assertEquals("test", aggregate.getName()); assertEquals(2, aggregate.getMeasurements()); assertEquals(pointOne.getTransactionTime() + pointOne2.getTransactionTime(), aggregate.getTotal(), 0.000001); assertEquals(pointOne2.getTransactionTime(), aggregate.getMin(), 0.000001); assertEquals(pointOne.getTransactionTime(), aggregate.getMax(), 0.000001); Aggregate aggregate2 = (Aggregate) points.get("test2"); assertNotNull(aggregate2); assertEquals("test2", aggregate2.getName()); assertEquals(2, aggregate2.getMeasurements()); assertEquals(pointTwo.getTransactionTime() + pointTwo2.getTransactionTime(), aggregate2.getTotal(), 0.000001); assertEquals(pointTwo2.getTransactionTime(), aggregate2.getMin(), 0.000001); assertEquals(pointTwo.getTransactionTime(), aggregate2.getMax(), 0.000001); } });
public void render(Map points) { assertNotNull(points); assertEquals(2, points.size()); assertEquals(2, new TestHelper().countExecutions((points))); // analyze point one Aggregate aggregate = (Aggregate) points.get("test"); assertNotNull(aggregate); assertEquals("test", aggregate.getName()); assertEquals(1, aggregate.getMeasurements()); assertEquals(point.getTransactionTime(), aggregate.getTotal(), 0.000001); assertEquals(point.getTransactionTime(), aggregate.getMin(), 0.000001); assertEquals(point.getTransactionTime(), aggregate.getMax(), 0.000001); // analyze point two Aggregate aggregate2 = (Aggregate) points.get("test2"); assertNotNull(aggregate2); assertEquals("test2", aggregate2.getName()); assertEquals(1, aggregate2.getMeasurements()); assertEquals(point2.getTransactionTime(), aggregate2.getTotal(), 0.000001); assertEquals(point2.getTransactionTime(), aggregate2.getMin(), 0.000001); assertEquals(point2.getTransactionTime(), aggregate2.getMax(), 0.000001); } });
public void render(Map points) { assertNotNull(points); assertTrue(points.size() == 1); assertEquals(2, new TestHelper().countExecutions(points)); // analyze point one ExecutionAggregate aggregate = (ExecutionAggregate) points.get("test"); assertNotNull(aggregate); assertEquals("test", aggregate.getName()); assertEquals(1, aggregate.getMeasurements()); assertEquals(point.getTransactionTime(), aggregate.getTotal(), 0.0); assertEquals(point.getTransactionTime(), aggregate.getMin(), 0.0); assertEquals(point.getTransactionTime(), aggregate.getMax(), 0.0); // check nested point assertTrue(aggregate.hasChilds()); Map childs = aggregate.getChilds(); assertEquals(1, childs.size()); Aggregate aggregate2 = (Aggregate) childs.get("test2"); assertNotNull(aggregate2); assertEquals("test2", aggregate2.getName()); assertEquals(1, aggregate2.getMeasurements()); assertEquals(point2.getTransactionTime(), aggregate2.getTotal(), 0.0); assertEquals(point2.getTransactionTime(), aggregate2.getMin(), 0.0); assertEquals(point2.getTransactionTime(), aggregate2.getMax(), 0.0); } });
assertEquals(1, aggregate.getMeasurements()); assertEquals(point.getTransactionTime(), aggregate.getTotal(), 0.0); assertEquals(point.getTransactionTime(), aggregate.getMin(), 0.0); assertEquals(point.getTransactionTime(), aggregate.getMax(), 0.0); assertEquals(1, aggregate2.getMeasurements()); assertEquals(point2.getTransactionTime(), aggregate2.getTotal(), 0.0); assertEquals(point2.getTransactionTime(), aggregate2.getMin(), 0.0); assertEquals(point2.getTransactionTime(), aggregate2.getMax(), 0.0); assertEquals(1, aggregate3.getMeasurements()); assertEquals(point3.getTransactionTime(), aggregate3.getTotal(), 0.0); assertEquals(point3.getTransactionTime(), aggregate3.getMin(), 0.0); assertEquals(point3.getTransactionTime(), aggregate3.getMax(), 0.0);
public void testOutput() { EtmPoint etmPoint = new TestPointGenerator().getEtmPoint(); DefaultOutputFormatter formatter = new DefaultOutputFormatter(); // validate MS format NumberFormat numberFormat = NumberFormat.getInstance(Locale.getDefault()); numberFormat.setMinimumFractionDigits(3); numberFormat.setMaximumFractionDigits(3); numberFormat.setGroupingUsed(false); String s = formatter.format(etmPoint); assertTrue(s.indexOf(etmPoint.getName()) > 0); if (etmPoint.getParent() != null) { assertTrue(s.indexOf("parent=<" + etmPoint.getParent().getName() + ">") > 0); } assertTrue(s.indexOf(String.valueOf(etmPoint.getStartTimeMillis())) > 0); assertTrue(s.indexOf(numberFormat.format(etmPoint.getTransactionTime())) > 0); }
assertEquals(2, aggregate.getMeasurements()); assertEquals(point.getTransactionTime() + pointNew.getTransactionTime(), aggregate.getTotal(), 0.0); assertEquals(pointNew.getTransactionTime(), aggregate.getMin(), 0.0); assertEquals(point.getTransactionTime(), aggregate.getMax(), 0.0);
private void analyzeNested(Map aggregationPoints, EtmPoint[] aEtmPoints, int i) { EtmPoint current = aEtmPoints[i - 1]; ExecutionAggregate aggregate = (ExecutionAggregate) aggregationPoints.get(current.getName()); assertNotNull(aggregate); assertEquals(current.getName(), aggregate.getName()); assertEquals(1, aggregate.getMeasurements()); assertEquals(current.getTransactionTime(), aggregate.getTotal(), 0.0); assertEquals(current.getTransactionTime(), aggregate.getMin(), 0.0); assertEquals(current.getTransactionTime(), aggregate.getMax(), 0.0); i--; if (i != 0) { assertTrue(aggregate.hasChilds()); analyzeNested(aggregate.getChilds(), aEtmPoints, i); } }