Обновление изменений конфигурации с помощью Spring Cloud Bus - PullRequest
0 голосов
/ 29 января 2019

Я создаю приложение, используя сервер конфигурации Spring Cloud в качестве централизованного хранилища для файла свойств.И у меня есть несколько клиентских приложений, получающих данные конфигурации с сервера конфигурации.

Но вместо того, чтобы вручную обновлять каждое клиентское приложение для получения последних изменений в файле свойств после фиксации, я использую Spring Cloud Bus и Kafka в качестве брокера сообщений, поэтомучто все изменения транслируются в клиентское приложение.Ниже приведены файл pom и файл свойств.

ConfigServer: pom

       <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-config-server</artifactId>
        </dependency>

application.properties:

  server.port = 8980

bootstrap.properties:

   spring.cloud.bus.enabled=true
   spring.cloud.config.server.git.uri= "some path"

Клиент конфигурации: pom

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-config</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bus-kafka</artifactId>
        </dependency>

application.properties:

server.port=8982

spring.cloud.bus.refresh.enabled: true
spring.cloud.bus.env.enabled: true
endpoints.spring.cloud.bus.refresh.enabled: true
endpoints.spring.cloud.bus.env.enabled: true

spring.cloud.stream.kafka.binder.autoAddPartitions=true
spring.cloud.stream.kafka.binder.zkNodes=localhost:2181
spring.cloud.stream.kafka.binder.brokers=localhost:9892

bootstrap.properties:

    spring.application.name=department-service
    spring.cloud.config.uri=http://localhost:8980
    management.security.enabled=false

Но после внесения изменений в локальный репозиторий gitфайл и после фиксации, когда я пытаюсь получить последние изменения, используя "http://localhost:8982/actuator/bus-refresh" конечную точку, выдает ошибку, как показано ниже:

{
"timestamp": "2019-01-29T08:49:21.569+0000",
"status": 404,
"error": "Not Found",
"message": "No message available",
"path": "/actuator/bus-refresh"

}

1 Ответ

0 голосов
/ 02 апреля 2019

вам нужно включить «management.endpoints.web.exposure.include = bus-refresh» в ваш сервер config.properties и нажать этот URL-адрес

http://localhost:8980/actuator/bus-refresh

...