Турбинная приборная панель не загружается для агрегирования в Spring Cloud Microservice

Я пытаюсь разработать облачную микросервисную службу spring, используя spring MVC и spring загрузочную инфраструктуру. И сервер Eureka, Zuul, Ribbon, hystrix и Turbine, использующие для облака spring. Я уже разработал микросервис и реализовал только панель управления hystrix. Я могу взять панель приборной панели hystrix. Теперь я внедряю больше сервисов. Поэтому я выбрал турбину для агрегирования мониторинга. Но он не получает панель инструментов. Я реализовал турбину в отдельном проекте загрузки spring.

Мой pom.xml содержащий

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-hystrix</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-hystrix-dashboard</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-turbine</artifactId>
</dependency>

И мой основной класс, содержащий

@SpringBootApplication
@EnableHystrixDashboard
@EnableCircuitBreaker
@EnableTurbine

public class ZTurbineClientApplication {

    public static void main(String[] args) {
    SpringApplication.run(ZTurbineClientApplication.class, args);
    }
}

И файл моей программы Turbine project.properties, содержащий

server.port=8085
spring.application.name=espace-Turbine
eureka.client.serviceUrl.defaultZone=http://localhost:8071/eureka/
eureka.client.register-with-eureka=true
eureka.client.fetch-registry=true
turbine:
 aggregator:
  clusterConfig: APPCLUSTER
 app-config: espaceService1,espaceService2
 instanceUrlSuffix.APPCLUSTER: /hystrix.stream

И мои предыдущие первые приложения application.properties, такие как

eureka.client.serviceUrl.defaultZone=http://localhost:8071/eureka/
eureka.client.register-with-eureka=true
eureka.client.fetch-registry=true
spring.application.name=espaceService1
server.port=8080
eureka:
  instance:
    prefer-ip-address: true
    leaseRenewalIntervalInSeconds: 3
    leaseExpirationDurationInSeconds: 3
    metadata-map:
      cluster: APPCLUSTER

И файл свойств второго служебного приложения содержит

eureka.client.serviceUrl.defaultZone=http://localhost:8071/eureka/
eureka.client.register-with-eureka=true
eureka.client.fetch-registry=true
spring.application.name=espaceService2
server.port=8081
eureka:
  instance:
    prefer-ip-address: true
    leaseRenewalIntervalInSeconds: 3
    leaseExpirationDurationInSeconds: 3
    metadata-map:
      cluster: APPCLUSTER

это мои подробности реализации.

После того, как я взял URL " http://localhost:8085/hystrix.dashboard". И вставил " http://localhost:8085/turbine.stream?cluster=APPCLUSTER". Но возникает ошибка типа "Невозможно подключиться к командному метрическому потоку". Добавление скриншотов ниже.

введите описание изображения здесь

введите описание изображения здесь

Ответы

Ответ 1

Вам нужно удалить место из имен служб, разделенных запятой

turbine.aggregator.cluster-config=espace-Second_Microservice,espaceFirst_Microservice

Вы не можете объединять потоки из разных имен кластера, либо использовать одно имя кластера в espace-Second_Microservice и espace-First_Microservice, либо вообще не использовать кластер.

To define one cluster name use below config

    eureka:
      instance:
        prefer-ip-address: true
        leaseRenewalIntervalInSeconds: 3
        leaseExpirationDurationInSeconds: 3
        metadata-map:
          cluster: APPCLUSTER

Используйте приведенную ниже конфигурацию для турбины

turbine:
  aggregator:
    clusterConfig: APPCLUSTER
  app-config: espace-Second_Microservice,espace-First_Microservice
  instanceUrlSuffix.APPCLUSTER: /hystrix.stream

Используйте http://{turbine host}: {турбинный порт}/turbine.stream?cluster=APPCLUSTER в панели инструментов Hystrix