summaryrefslogtreecommitdiffstats
path: root/service-monitor/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'service-monitor/src/main')
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceModel.java6
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorProvider.java36
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManagerProvider.java23
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/ConfigServerApplication.java (renamed from service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ConfigServerApplication.java)2
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/ModelGenerator.java (renamed from service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ModelGenerator.java)4
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/ServiceMonitorImpl.java (renamed from service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorImpl.java)8
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/SlobrokMonitor.java (renamed from service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitor.java)2
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/SlobrokMonitorManagerImpl.java (renamed from service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManagerImpl.java)7
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/SuperModelListenerImpl.java (renamed from service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SuperModelListenerImpl.java)5
9 files changed, 75 insertions, 18 deletions
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceModel.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceModel.java
index 46102a366d2..2432abcc2d4 100644
--- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceModel.java
+++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceModel.java
@@ -21,15 +21,15 @@ import java.util.stream.Collectors;
public class ServiceModel {
private final Map<ApplicationInstanceReference, ApplicationInstance> applications;
- ServiceModel(Map<ApplicationInstanceReference, ApplicationInstance> applications) {
+ public ServiceModel(Map<ApplicationInstanceReference, ApplicationInstance> applications) {
this.applications = Collections.unmodifiableMap(applications);
}
- Map<ApplicationInstanceReference, ApplicationInstance> getAllApplicationInstances() {
+ public Map<ApplicationInstanceReference, ApplicationInstance> getAllApplicationInstances() {
return applications;
}
- Optional<ApplicationInstance> getApplicationInstance(ApplicationInstanceReference reference) {
+ public Optional<ApplicationInstance> getApplicationInstance(ApplicationInstanceReference reference) {
return Optional.ofNullable(applications.get(reference));
}
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorProvider.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorProvider.java
new file mode 100644
index 00000000000..b1af48f885d
--- /dev/null
+++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorProvider.java
@@ -0,0 +1,36 @@
+// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+package com.yahoo.vespa.service.monitor;
+
+import com.google.inject.Inject;
+import com.yahoo.cloud.config.ConfigserverConfig;
+import com.yahoo.config.model.api.SuperModelProvider;
+import com.yahoo.container.di.componentgraph.Provider;
+import com.yahoo.jdisc.Metric;
+import com.yahoo.jdisc.Timer;
+import com.yahoo.vespa.service.monitor.internal.ServiceMonitorImpl;
+import com.yahoo.vespa.service.monitor.internal.SlobrokMonitorManagerImpl;
+
+public class ServiceMonitorProvider implements Provider<ServiceMonitor> {
+ private final ServiceMonitorImpl serviceMonitor;
+
+ @Inject
+ public ServiceMonitorProvider(SuperModelProvider superModelProvider,
+ ConfigserverConfig configserverConfig,
+ SlobrokMonitorManagerImpl slobrokMonitorManager,
+ Metric metric,
+ Timer timer) {
+ serviceMonitor = new ServiceMonitorImpl(
+ superModelProvider,
+ configserverConfig,
+ slobrokMonitorManager,
+ metric,
+ timer);
+ }
+ @Override
+ public ServiceMonitor get() {
+ return serviceMonitor;
+ }
+
+ @Override
+ public void deconstruct() {}
+}
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManagerProvider.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManagerProvider.java
new file mode 100644
index 00000000000..ca523ca5fdf
--- /dev/null
+++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManagerProvider.java
@@ -0,0 +1,23 @@
+// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+package com.yahoo.vespa.service.monitor;
+
+import com.google.inject.Inject;
+import com.yahoo.container.di.componentgraph.Provider;
+import com.yahoo.vespa.service.monitor.internal.SlobrokMonitorManagerImpl;
+
+public class SlobrokMonitorManagerProvider implements Provider<SlobrokMonitorManager> {
+ private final SlobrokMonitorManager slobrokMonitorManager;
+
+ @Inject
+ public SlobrokMonitorManagerProvider() {
+ slobrokMonitorManager = new SlobrokMonitorManagerImpl();
+ }
+
+ @Override
+ public SlobrokMonitorManager get() {
+ return slobrokMonitorManager;
+ }
+
+ @Override
+ public void deconstruct() {}
+}
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ConfigServerApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/ConfigServerApplication.java
index 7a76c072076..ea86de2b442 100644
--- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ConfigServerApplication.java
+++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/ConfigServerApplication.java
@@ -1,5 +1,5 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.service.monitor;
+package com.yahoo.vespa.service.monitor.internal;
import com.yahoo.vespa.applicationmodel.ApplicationInstance;
import com.yahoo.vespa.applicationmodel.ApplicationInstanceId;
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ModelGenerator.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/ModelGenerator.java
index 9716846dea4..961d5701901 100644
--- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ModelGenerator.java
+++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/ModelGenerator.java
@@ -1,5 +1,5 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.service.monitor;
+package com.yahoo.vespa.service.monitor.internal;
import com.yahoo.config.model.api.ApplicationInfo;
import com.yahoo.config.model.api.HostInfo;
@@ -19,6 +19,8 @@ import com.yahoo.vespa.applicationmodel.ServiceInstance;
import com.yahoo.vespa.applicationmodel.ServiceStatus;
import com.yahoo.vespa.applicationmodel.ServiceType;
import com.yahoo.vespa.applicationmodel.TenantId;
+import com.yahoo.vespa.service.monitor.ServiceModel;
+import com.yahoo.vespa.service.monitor.SlobrokMonitorManager;
import java.util.HashMap;
import java.util.HashSet;
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorImpl.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/ServiceMonitorImpl.java
index 5d2a9f296b4..0470d37af85 100644
--- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/ServiceMonitorImpl.java
+++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/ServiceMonitorImpl.java
@@ -1,7 +1,6 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.service.monitor;
+package com.yahoo.vespa.service.monitor.internal;
-import com.google.inject.Inject;
import com.yahoo.cloud.config.ConfigserverConfig;
import com.yahoo.config.model.api.SuperModelProvider;
import com.yahoo.config.provision.Zone;
@@ -9,8 +8,8 @@ import com.yahoo.jdisc.Metric;
import com.yahoo.jdisc.Timer;
import com.yahoo.vespa.applicationmodel.ApplicationInstance;
import com.yahoo.vespa.applicationmodel.ApplicationInstanceReference;
-import com.yahoo.vespa.service.monitor.internal.ServiceModelCache;
-import com.yahoo.vespa.service.monitor.internal.ServiceMonitorMetrics;
+import com.yahoo.vespa.service.monitor.ServiceModel;
+import com.yahoo.vespa.service.monitor.ServiceMonitor;
import java.util.Collections;
import java.util.List;
@@ -25,7 +24,6 @@ public class ServiceMonitorImpl implements ServiceMonitor {
private final List<String> configServerHosts;
private final ServiceModelCache serviceModelCache;
- @Inject
public ServiceMonitorImpl(SuperModelProvider superModelProvider,
ConfigserverConfig configserverConfig,
SlobrokMonitorManagerImpl slobrokMonitorManager,
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitor.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/SlobrokMonitor.java
index 4da7b7c0e68..e0195e11759 100644
--- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitor.java
+++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/SlobrokMonitor.java
@@ -1,5 +1,5 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.service.monitor;
+package com.yahoo.vespa.service.monitor.internal;
import com.yahoo.config.model.api.ApplicationInfo;
import com.yahoo.config.model.api.HostInfo;
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManagerImpl.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/SlobrokMonitorManagerImpl.java
index becd7cf7ef6..f816111f2ee 100644
--- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SlobrokMonitorManagerImpl.java
+++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/SlobrokMonitorManagerImpl.java
@@ -1,7 +1,6 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.service.monitor;
+package com.yahoo.vespa.service.monitor.internal;
-import com.google.inject.Inject;
import com.yahoo.config.model.api.ApplicationInfo;
import com.yahoo.config.model.api.SuperModel;
import com.yahoo.config.model.api.SuperModelListener;
@@ -11,6 +10,7 @@ import com.yahoo.log.LogLevel;
import com.yahoo.vespa.applicationmodel.ConfigId;
import com.yahoo.vespa.applicationmodel.ServiceStatus;
import com.yahoo.vespa.applicationmodel.ServiceType;
+import com.yahoo.vespa.service.monitor.SlobrokMonitorManager;
import java.util.HashMap;
import java.util.List;
@@ -27,9 +27,8 @@ public class SlobrokMonitorManagerImpl implements SuperModelListener, SlobrokMon
private final Object monitor = new Object();
private final HashMap<ApplicationId, SlobrokMonitor> slobrokMonitors = new HashMap<>();
- @Inject
public SlobrokMonitorManagerImpl() {
- this(() -> new SlobrokMonitor());
+ this(SlobrokMonitor::new);
}
SlobrokMonitorManagerImpl(Supplier<SlobrokMonitor> slobrokMonitorFactory) {
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SuperModelListenerImpl.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/SuperModelListenerImpl.java
index 506a2f7d649..b44d73125bd 100644
--- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/SuperModelListenerImpl.java
+++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/SuperModelListenerImpl.java
@@ -1,5 +1,5 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.service.monitor;
+package com.yahoo.vespa.service.monitor.internal;
import com.yahoo.config.model.api.ApplicationInfo;
import com.yahoo.config.model.api.SuperModel;
@@ -7,8 +7,7 @@ import com.yahoo.config.model.api.SuperModelListener;
import com.yahoo.config.model.api.SuperModelProvider;
import com.yahoo.config.provision.ApplicationId;
import com.yahoo.config.provision.Zone;
-import com.yahoo.vespa.service.monitor.internal.LatencyMeasurement;
-import com.yahoo.vespa.service.monitor.internal.ServiceMonitorMetrics;
+import com.yahoo.vespa.service.monitor.ServiceModel;
import java.util.List;
import java.util.function.Supplier;