弹簧启动-如何添加到涡轮额外的Hystrix指标聚合



我的设置是使用netflix库的spring启动云我设法让Turbine从一个服务中聚合Hystrix的指标。然而,当我添加更多的服务时,我看不到它们。

这是我的设置(也上传到github:项目目录

服务1:

FlightIntegrationService:

@SpringBootApplication
@EnableCircuitBreaker
@EnableDiscoveryClient
@ComponentScan("com.bootnetflix")
public class FlightIntegrationApplication {
..
}
application.yaml
server:
  port: 0
eureka:
  instance:
    leaseRenewalIntervalInSeconds: 10
    metadataMap:
      instanceId: ${vcap.application.instance_id:${spring.application.name}:${spring.application.instance_id:${random.value}}}
  client:
    registryFetchIntervalSeconds: 5
bootstrap.yaml
spring:
  application:
    name: flight-integration-service
服务2:

优惠服务:

@SpringBootApplication
@EnableCircuitBreaker
@EnableDiscoveryClient
@ComponentScan("com.bootnetflix")
public class CouponServiceApp {
..
}
application yaml:
server:
  port: 0
eureka:
  instance:
    leaseRenewalIntervalInSeconds: 10
    metadataMap:
      instanceId: ${vcap.application.instance_id:${spring.application.name}:${spring.application.instance_id:${random.value}}}
  client:
    registryFetchIntervalSeconds: 5

Eureka app service:

@SpringBootApplication
@EnableEurekaServer
public class EurekaApplication  {

Hystrix dashboard service:
    @SpringBootApplication
    @EnableHystrixDashboard
    @Controller
    public class HystrixDashboardApplication  {

application.yaml:

info:
  component: Hystrix Dashboard
endpoints:
  restart:
    enabled: true
  shutdown:
    enabled: true
server:
  port: 7979
logging:
  level:
    ROOT: INFO
    org.springframework.web: DEBUG
eureka:
  client:
    region: default

    preferSameZone: false
    us-east-1:
      availabilityZones: default
  instance:
    virtualHostName: ${spring.application.name}

bootstrap.yaml

spring:
  application:
    name: hystrixdashboard

最后是Turbine-service:

  EnableAutoConfiguration
    @EnableTurbine
    @EnableEurekaClient
    @EnableHystrixDashboard
    public class TurbineApplication {

application.yaml:

info:
  component: Turbine
PREFIX:
endpoints:
  restart:
    enabled: true
  shutdown:
    enabled: true
server:
  port: 8989
management:
  port: 8990

eureka:
  instance:
    leaseRenewalIntervalInSeconds: 10
  client:
      serviceUrl:
        defaultZone: http://localhost:8761/eureka/

#turbine:
 # aggregator:
  #  clusterConfig: FLIGHT-INTEGRATION-SERVICE,COUPON-SERVICE
  #appConfig: flight-integration-service,coupon-service

#turbine:
#  clusterNameExpression: 'default'
 # appConfig: flight-integration-service,coupon-service
turbine:
  appConfig: coupon-service,flight-integration-service
  clusterNameExpression: new String('default')


#As you can see I tried diff configurations.

我做错了什么?为什么我不能将两种服务的度量(航班集成服务、优惠券服务)结合起来?谢谢你。

由@spencergibb建议解决。我向每个客户端添加了spring-boot-start -amqp的依赖,并创建了rabbitMQ代理。Turbine正在通过amqp聚合所有消息,我能够看到所有Hystrix命令聚合在我的Hystrix仪表板服务器

相关内容

  • 没有找到相关文章

最新更新