From 5f05794a56a0b92eaf587146c570277f02c60336 Mon Sep 17 00:00:00 2001 From: Simon Spinner <simon.spinner@uni-wuerzburg.de> Date: Thu, 2 Jun 2016 18:08:30 +0200 Subject: [PATCH] Correctly set interval of ComponentSensors. --- .../tools/descartes/prisma/agent/wildfly/Constants.java | 2 ++ .../agent/wildfly/service/ModelExtractionService.java | 2 ++ .../prisma/agent/wildfly/service/MonitoringService.java | 6 +++--- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/Constants.java b/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/Constants.java index a0ce3b6..55c3dce 100644 --- a/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/Constants.java +++ b/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/Constants.java @@ -28,4 +28,6 @@ package tools.descartes.prisma.agent.wildfly; public class Constants { public static final long NANOS_IN_MILLIS = 1000000; + + public static final long MONITORING_INTERVAL_IN_MILLIS = 60000; } diff --git a/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/service/ModelExtractionService.java b/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/service/ModelExtractionService.java index 2cde662..5a8f64a 100644 --- a/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/service/ModelExtractionService.java +++ b/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/service/ModelExtractionService.java @@ -87,6 +87,7 @@ import tools.descartes.librede.units.Dimension; import tools.descartes.librede.units.RequestCount; import tools.descartes.librede.units.Time; import tools.descartes.librede.units.Unit; +import tools.descartes.prisma.agent.wildfly.Constants; import tools.descartes.prisma.agent.wildfly.callstack.ComponentRecord; import tools.descartes.prisma.agent.wildfly.callstack.InvocationRecord; import tools.descartes.prisma.agent.wildfly.callstack.OperationRecord; @@ -610,6 +611,7 @@ public class ModelExtractionService extends AgentController implements Service<M ComponentSensor<D> sensor = SensorFactory.eINSTANCE.createComponentSensor(); sensor.setMetric(metric); sensor.setUnit(unit); + sensor.setInterval(Constants.MONITORING_INTERVAL_IN_MILLIS); sensor.setAggregation(aggregation); sensor.setComponentInstance(ref); sensor.setInterfaceProvidingRole(role); diff --git a/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/service/MonitoringService.java b/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/service/MonitoringService.java index fb002e0..782bfc9 100644 --- a/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/service/MonitoringService.java +++ b/tools.descartes.prisma.agent.wildfly/src/main/java/tools/descartes/prisma/agent/wildfly/service/MonitoringService.java @@ -49,6 +49,7 @@ import org.jboss.msc.service.StartException; import org.jboss.msc.service.StopContext; import org.jboss.msc.value.InjectedValue; +import tools.descartes.prisma.agent.wildfly.Constants; import tools.descartes.prisma.agent.wildfly.callstack.ComponentRecord; import tools.descartes.prisma.agent.wildfly.callstack.InvocationRecord; import tools.descartes.prisma.agent.wildfly.callstack.OperationRecord; @@ -75,8 +76,6 @@ public class MonitoringService extends AgentController implements Service<Monito public static final MonitoringService INSTANCE = new MonitoringService(); - private static final long WRITE_INTERVAL = 60; - private final ConcurrentHashMap<Long, Long> threads = new ConcurrentHashMap<Long, Long>(); private List<InjectedValue<ParameterCharacterizationService>> paramCharacterizations = new CopyOnWriteArrayList<>(); @@ -139,7 +138,8 @@ public class MonitoringService extends AgentController implements Service<Monito try { start().get(); applicationScope = (ApplicationScope) getContainerScope(); - scheduleAtIntervalBounds(new OutputWriter(), WRITE_INTERVAL, TimeUnit.SECONDS); + scheduleAtIntervalBounds(new OutputWriter(), Constants.MONITORING_INTERVAL_IN_MILLIS, + TimeUnit.MILLISECONDS); } catch (InterruptedException | ExecutionException | IOException e) { log.error("Error starting agent.", e); } -- GitLab