public MetricsIntervalResultDto(MetricIntervalValue metric) { this.timestamp = metric.getTimestamp(); this.name = metric.getName(); this.reporter = metric.getReporter(); this.value = metric.getValue(); }
public MetricsIntervalResultDto(MetricIntervalValue metric) { this.timestamp = metric.getTimestamp(); this.name = metric.getName(); this.reporter = metric.getReporter(); this.value = metric.getValue(); }
@Test public void testMeterQueryDefaultIntervalWhereName() { //given metric data //when query metric interval data with name in where clause List<MetricIntervalValue> metrics = managementService.createMetricsQuery().name(ACTIVTY_INSTANCE_START).interval(); //then result contains only metrics with given name assertEquals(3, metrics.size()); long lastTimestamp = metrics.get(0).getTimestamp().getTime(); String name = metrics.get(0).getName(); metrics.remove(0); for (MetricIntervalValue metric : metrics) { assertEquals(name, metric.getName()); long nextTimestamp = metric.getTimestamp().getTime(); if (lastTimestamp != nextTimestamp) { assertEquals(lastTimestamp, nextTimestamp + DEFAULT_INTERVAL_MILLIS); lastTimestamp = nextTimestamp; } } }
@Test public void testMeterQueryCustomIntervalWhereName() { //given metric data and custom interval int interval = 5 * 60; //when query metric interval data with custom interval and name in where clause List<MetricIntervalValue> metrics = managementService.createMetricsQuery().name(ACTIVTY_INSTANCE_START).interval(interval); //then result contains only metrics with given name assertEquals(9, metrics.size()); interval = interval * 1000; long lastTimestamp = metrics.get(0).getTimestamp().getTime(); String name = metrics.get(0).getName(); metrics.remove(0); for (MetricIntervalValue metric : metrics) { assertEquals(name, metric.getName()); long nextTimestamp = metric.getTimestamp().getTime(); if (lastTimestamp != nextTimestamp) { assertEquals(lastTimestamp, nextTimestamp + interval); lastTimestamp = nextTimestamp; } } }
@Test public void testMeterQueryNotLoggedInterval() { //given metric data List<MetricIntervalValue> metrics = managementService.createMetricsQuery().name(ACTIVTY_INSTANCE_START).limit(1).interval(); long value = metrics.get(0).getValue(); //when start process and metrics are not logged processEngineConfiguration.getMetricsRegistry().markOccurrence(ACTIVTY_INSTANCE_START, 3); //then metrics values are either way aggregated to the last interval //on query with name metrics = managementService.createMetricsQuery().name(ACTIVTY_INSTANCE_START).limit(1).interval(); long newValue = metrics.get(0).getValue(); Assert.assertTrue(value + 3 == newValue); //on query without name also metrics = managementService.createMetricsQuery().interval(); for (MetricIntervalValue intervalValue : metrics) { if (intervalValue.getName().equalsIgnoreCase(ACTIVTY_INSTANCE_START)) { newValue = intervalValue.getValue(); Assert.assertTrue(value + 3 == newValue); break; } } //clean up clearLocalMetrics(); }
public MetricsIntervalResultDto(MetricIntervalValue metric) { this.timestamp = metric.getTimestamp(); this.name = metric.getName(); this.reporter = metric.getReporter(); this.value = metric.getValue(); }
@Test public void testMeterQueryDefaultIntervalWhereName() { //given metric data //when query metric interval data with name in where clause List<MetricIntervalValue> metrics = managementService.createMetricsQuery().name(ACTIVTY_INSTANCE_START).interval(); //then result contains only metrics with given name assertEquals(3, metrics.size()); long lastTimestamp = metrics.get(0).getTimestamp().getTime(); String name = metrics.get(0).getName(); metrics.remove(0); for (MetricIntervalValue metric : metrics) { assertEquals(name, metric.getName()); long nextTimestamp = metric.getTimestamp().getTime(); if (lastTimestamp != nextTimestamp) { assertEquals(lastTimestamp, nextTimestamp + DEFAULT_INTERVAL_MILLIS); lastTimestamp = nextTimestamp; } } }
@Test public void testMeterQueryCustomIntervalWhereName() { //given metric data and custom interval int interval = 5 * 60; //when query metric interval data with custom interval and name in where clause List<MetricIntervalValue> metrics = managementService.createMetricsQuery().name(ACTIVTY_INSTANCE_START).interval(interval); //then result contains only metrics with given name assertEquals(9, metrics.size()); interval = interval * 1000; long lastTimestamp = metrics.get(0).getTimestamp().getTime(); String name = metrics.get(0).getName(); metrics.remove(0); for (MetricIntervalValue metric : metrics) { assertEquals(name, metric.getName()); long nextTimestamp = metric.getTimestamp().getTime(); if (lastTimestamp != nextTimestamp) { assertEquals(lastTimestamp, nextTimestamp + interval); lastTimestamp = nextTimestamp; } } }
@Test public void testMeterQueryNotLoggedInterval() { //given metric data List<MetricIntervalValue> metrics = managementService.createMetricsQuery().name(ACTIVTY_INSTANCE_START).limit(1).interval(); long value = metrics.get(0).getValue(); //when start process and metrics are not logged processEngineConfiguration.getMetricsRegistry().markOccurrence(ACTIVTY_INSTANCE_START, 3); //then metrics values are either way aggregated to the last interval //on query with name metrics = managementService.createMetricsQuery().name(ACTIVTY_INSTANCE_START).limit(1).interval(); long newValue = metrics.get(0).getValue(); Assert.assertTrue(value + 3 == newValue); //on query without name also metrics = managementService.createMetricsQuery().interval(); for (MetricIntervalValue intervalValue : metrics) { if (intervalValue.getName().equalsIgnoreCase(ACTIVTY_INSTANCE_START)) { newValue = intervalValue.getValue(); Assert.assertTrue(value + 3 == newValue); break; } } //clean up clearLocalMetrics(); }