diff options
Diffstat (limited to 'service-monitor')
3 files changed, 26 insertions, 23 deletions
diff --git a/service-monitor/src/main/scala/com/yahoo/vespa/service/monitor/SlobrokAndConfigIntersector.scala b/service-monitor/src/main/scala/com/yahoo/vespa/service/monitor/SlobrokAndConfigIntersector.scala index a39c82bb0e3..62f21a7d12c 100644 --- a/service-monitor/src/main/scala/com/yahoo/vespa/service/monitor/SlobrokAndConfigIntersector.scala +++ b/service-monitor/src/main/scala/com/yahoo/vespa/service/monitor/SlobrokAndConfigIntersector.scala @@ -52,12 +52,12 @@ class SlobrokAndConfigIntersector( private val zoneConfigServerCluster: Map[ApplicationInstanceReference, ApplicationInstance[Void]] = if (multiTenantConfigServerHostNames.isEmpty) Map() else Map( - ApplicationInstanceReference(syntheticHostedVespaTenantId, configServerApplicationInstanceId ) -> - ApplicationInstance[Void]( + new ApplicationInstanceReference(syntheticHostedVespaTenantId, configServerApplicationInstanceId ) -> + new ApplicationInstance[Void]( syntheticHostedVespaTenantId, configServerApplicationInstanceId, - Collections.singleton(ServiceCluster[Void]( - ClusterId("zone-config-servers"), + Collections.singleton(new ServiceCluster[Void]( + new ClusterId("zone-config-servers"), SlobrokServiceNameUtil.configServerServiceType, configServer_ServerInstances(multiTenantConfigServerHostNames) )))) @@ -79,10 +79,13 @@ class SlobrokAndConfigIntersector( } val serviceClustersWithStatus = applicationInstance.serviceClusters.asScala.map { serviceCluster => - val serviceInstancesWithStatus = serviceCluster.serviceInstances.asScala.map { serviceInstance => - serviceInstance.copy(serviceStatus = monitoredStatus(serviceCluster.serviceType, serviceInstance.configId)) + val serviceInstancesWithStatus = serviceCluster.serviceInstances().asScala.map { serviceInstance => + new ServiceInstance[ServiceMonitorStatus]( + serviceInstance.configId(), + serviceInstance.hostName(), + monitoredStatus(serviceCluster.serviceType, serviceInstance.configId)) } - serviceCluster.copy(serviceInstances = serviceInstancesWithStatus.asJava) + new ServiceCluster[ServiceMonitorStatus](serviceCluster.clusterId(), serviceCluster.serviceType(), serviceInstancesWithStatus.asJava) } val applicationInstanceWithStatus: ApplicationInstance[ServiceMonitorStatus] = new ApplicationInstance( applicationInstanceReference.tenantId, @@ -140,8 +143,8 @@ class SlobrokAndConfigIntersector( object SlobrokAndConfigIntersector { private val log = Logger.getLogger(getClass.getName) - val syntheticHostedVespaTenantId = TenantId("hosted-vespa") - val configServerApplicationInstanceId = ApplicationInstanceId("zone-config-servers") + val syntheticHostedVespaTenantId = new TenantId("hosted-vespa") + val configServerApplicationInstanceId = new ApplicationInstanceId("zone-config-servers") implicit class AsJavaOptional[T <: AnyRef](private val option: Option[T]) extends AnyVal { def asJava: Optional[T] = option match { @@ -166,10 +169,10 @@ object SlobrokAndConfigIntersector { val serviceInstances = for { serviceCluster <- applicationInstance.serviceClusters.asScala - serviceInstance <- serviceCluster.serviceInstances.asScala + serviceInstance <- serviceCluster.serviceInstances().asScala } yield serviceInstance - val serviceInstancesGroupedByStatus = serviceInstances.groupBy(_.serviceStatus) + val serviceInstancesGroupedByStatus = serviceInstances.groupBy(_.serviceStatus()) def mkString(services: Traversable[ServiceInstance[ServiceMonitorStatus]]) = services.mkString("\t", "\n\t", "\n") @@ -185,15 +188,15 @@ object SlobrokAndConfigIntersector { private def configServerHostNames(config: ConfigserverConfig): Set[HostName] = //Each Zookeeper server in this config is started by a config server. //Each config server starts a single zookeeper server. - config.zookeeperserver().asScala map {server => HostName(server.hostname())} toSet + config.zookeeperserver().asScala map {server => new HostName(server.hostname())} toSet private def configServer_ServerInstances(multiTenantConfigServerHostNames: Set[HostName]) : java.util.Set[ServiceInstance[Void]] = { - def serviceInstance(hostName: HostName) = ServiceInstance[Void]( - ConfigId("configId." + hostName.s), + def serviceInstance(hostName: HostName) = new ServiceInstance[Void]( + new ConfigId("configId." + hostName.s), hostName, - serviceStatus = null) + null) multiTenantConfigServerHostNames map serviceInstance asJava } diff --git a/service-monitor/src/main/scala/com/yahoo/vespa/service/monitor/config/InstancesObservables.scala b/service-monitor/src/main/scala/com/yahoo/vespa/service/monitor/config/InstancesObservables.scala index a78744d184a..7d27d37ad9f 100644 --- a/service-monitor/src/main/scala/com/yahoo/vespa/service/monitor/config/InstancesObservables.scala +++ b/service-monitor/src/main/scala/com/yahoo/vespa/service/monitor/config/InstancesObservables.scala @@ -44,7 +44,7 @@ class InstancesObservables(configSourceSet: ConfigSourceSet) { val servicesPerInstance: Observable[Map[ApplicationInstanceReference, ApplicationInstance[Void]]] = lbServicesConfigObservable.map( _.map { case (applicationInstanceReference, x) => val serviceClusters: java.util.Set[ServiceCluster[Void]] = asServiceClusterSet(x) - val applicationInstance = ApplicationInstance( + val applicationInstance = new ApplicationInstance( applicationInstanceReference.tenantId, applicationInstanceReference.applicationInstanceId, serviceClusters) @@ -66,9 +66,9 @@ object InstancesObservables { (tenantIdString, tenantConfig) <- config.tenants() (applicationIdString, applicationConfig) <- tenantConfig.applications() } yield { - val applicationInstanceReference: ApplicationInstanceReference = ApplicationInstanceReference( - TenantId(tenantIdString), - ApplicationInstanceId(applicationIdString)) + val applicationInstanceReference: ApplicationInstanceReference = new ApplicationInstanceReference( + new TenantId(tenantIdString), + new ApplicationInstanceId(applicationIdString)) (applicationInstanceReference, applicationConfig.hosts()) } @@ -94,13 +94,13 @@ object InstancesObservables { (hostName, hostConfig) <- hostsConfigs.view (serviceName, servicesConfig) <- hostConfig.services() } yield { - (ServiceClusterKey(ClusterId(servicesConfig.clustername()), ServiceType(servicesConfig.`type`())), - ServiceInstance(ConfigId(servicesConfig.configId()), HostName(hostName), null.asInstanceOf[Void])) + (new ServiceClusterKey(new ClusterId(servicesConfig.clustername()), new ServiceType(servicesConfig.`type`())), + new ServiceInstance(new ConfigId(servicesConfig.configId()), new HostName(hostName), null.asInstanceOf[Void])) }).groupByKeyWithValue(_._1, _._2) val serviceClusterSet: Set[ServiceCluster[Void]] = serviceInstancesGroupedByCluster.map { case (serviceClusterKey, serviceInstances) => - ServiceCluster( + new ServiceCluster( serviceClusterKey.clusterId, serviceClusterKey.serviceType, serviceInstances.toSet.asJava) diff --git a/service-monitor/src/test/scala/PrintServiceStates.scala b/service-monitor/src/test/scala/PrintServiceStates.scala index e93cdb95dee..e6e02ae7aed 100644 --- a/service-monitor/src/test/scala/PrintServiceStates.scala +++ b/service-monitor/src/test/scala/PrintServiceStates.scala @@ -13,7 +13,7 @@ object PrintServiceStates { def main(args: Array[String]): Unit = { val intersector = new SlobrokAndConfigIntersector( new ConfigSourceSet("tcp/test1-node:19070"), - multiTenantConfigServerHostNames = Set("config-server1", "config-server2") map HostName, + multiTenantConfigServerHostNames = Set("config-server1", "config-server2").map(s => new HostName(s)), new GenerationCounter { override def increment = ??? override def get = 1L |