1

Spring Cloud Config Server(Brixton.RELEASE)から設定を取得しているアプリケーションがあります。その特性。私はSpring Cloud Config documentationを使ってサーバーとクライアントの両方のアプリケーションを設定しましたが、ローカルのgitファイルを変更すると何も起こりません。Spring Cloud Config + Spring Cloud Bus + RabbitMQ - ローカルのGitリポジトリでクライアントを自動更新しない

デフォルトの設定では、ローカルのgitでのファイルシステムの変更 リポジトリを(ウェブフックは、すぐにあなたが設定ファイルリフレッシュが放送されるの編集 として、その場合に使用されていませんが、)を検出します。

Spring Cloudのコードで何が間違っているのか、どこでデバッグするのかを誰でも指摘できますか?

春クラウドサーバコンフィグ

server: 
    port: 8888 

info: 
    description: Spring Cloud Config Server 

spring: 
    application: 
    name: config-server 
    cloud: 
    config: 
     server: 
     git: 
      uri: file:///C:/Users/myuser/git/config-dev/ 

春クラウドサーバーのpom.xml

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

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

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

    <dependency> 
     <groupId>javax.validation</groupId> 
     <artifactId>validation-api</artifactId> 
     <version>1.1.0.Final</version> 
    </dependency> 

    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-validator</artifactId> 
    </dependency> 

春クラウドコンフィグスタートアップ記録します

o.s.i.monitor.IntegrationMBeanExporter : Registering MessageChannel springCloudBusInput 
o.s.i.monitor.IntegrationMBeanExporter : Located managed bean 'org.springframework.integration:type=MessageChannel,name=springCloudBusInput': registering with JMX server as MBean [org.springframework.integration:type=MessageChannel,name=springCloudBusInput] 
o.s.i.monitor.IntegrationMBeanExporter : Registering MessageChannel springCloudBusOutput 
o.s.i.monitor.IntegrationMBeanExporter : Located managed bean 'org.springframework.integration:type=MessageChannel,name=springCloudBusOutput': registering with JMX server as MBean [org.springframework.integration:type=MessageChannel,name=springCloudBusOutput] 
o.s.i.monitor.IntegrationMBeanExporter : Registering MessageChannel errorChannel 
o.s.i.monitor.IntegrationMBeanExporter : Located managed bean 'org.springframework.integration:type=MessageChannel,name=errorChannel': registering with JMX server as MBean [org.springframework.integration:type=MessageChannel,name=errorChannel] 
o.s.i.monitor.IntegrationMBeanExporter : Registering MessageChannel nullChannel 
o.s.i.monitor.IntegrationMBeanExporter : Located managed bean 'org.springframework.integration:type=MessageChannel,name=nullChannel': registering with JMX server as MBean [org.springframework.integration:type=MessageChannel,name=nullChannel] 
o.s.i.monitor.IntegrationMBeanExporter : Located managed bean 'org.springframework.integration:type=MessageHandler,name=errorLogger,bean=internal': registering with JMX server as MBean [org.springframework.integration:type=MessageHandler,name=errorLogger,bean=internal] 
o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase -2147482648 
o.s.c.s.binding.BindableProxyFactory  : Binding outputs for :interface org.springframework.cloud.bus.SpringCloudBusClient 
o.s.c.s.binding.BindableProxyFactory  : Binding :interface org.springframework.cloud.bus.SpringCloudBusClient:springCloudBusOutput 
s.c.a.AnnotationConfigApplicationContext : Refreshing org.spring[email protected]707ca986: startup date [Fri May 13 10:03:10 CEST 2016]; root of context hierarchy 
trationDelegate$BeanPostProcessorChecker : Bean 'configurationPropertiesRebinderAutoConfiguration' of type [class org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$73faa1d3] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) 
o.s.cloud.commons.util.InetUtils   : Cannot determine local hostname 
e.m.a.config.ConfigServerApplication  : No active profile set, falling back to default profiles: default 
s.c.a.AnnotationConfigApplicationContext : Refreshing org.spring[email protected]1ca610a0: startup date [Fri May 13 10:03:11 CEST 2016]; parent: org.springframework.boot[email protected]294a6b8e 
o.s.c.support.GenericApplicationContext : Refreshing [email protected]48e26a: startup date [Fri May 13 10:03:11 CEST 2016]; root of context hierarchy 
e.m.a.config.ConfigServerApplication  : Started ConfigServerApplication in 2.907 seconds (JVM running for 12.366) 
o.s.a.r.c.CachingConnectionFactory  : Created new connection: [email protected] [delegate=amqp://[email protected]:5672/] 
o.s.i.endpoint.EventDrivenConsumer  : Adding {message-handler:outbound.springCloudBus} as a subscriber to the 'springCloudBusOutput' channel 
o.s.integration.channel.DirectChannel : Channel 'config-server:8888.springCloudBusOutput' has 1 subscriber(s). 
o.s.i.endpoint.EventDrivenConsumer  : started outbound.springCloudBus 
o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase -2147482648 
o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase 0 
o.s.i.endpoint.EventDrivenConsumer  : Adding {logging-channel-adapter:_org.springframework.integration.errorLogger} as a subscriber to the 'errorChannel' channel 
o.s.i.channel.PublishSubscribeChannel : Channel 'config-server:8888.errorChannel' has 1 subscriber(s). 
o.s.i.endpoint.EventDrivenConsumer  : started _org.springframework.integration.errorLogger 
o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase 2147482647 
o.s.c.s.binding.BindableProxyFactory  : Binding inputs for :interface org.springframework.cloud.bus.SpringCloudBusClient 
o.s.c.s.binding.BindableProxyFactory  : Binding :interface org.springframework.cloud.bus.SpringCloudBusClient:springCloudBusInput 
o.s.c.s.b.r.RabbitMessageChannelBinder : declaring queue for inbound: springCloudBus.anonymous.t4cuHSE6RfKRYvPvrgfbUg, bound to: springCloudBus 
o.s.integration.channel.DirectChannel : Channel 'springCloudBus.anonymous.t4cuHSE6RfKRYvPvrgfbUg.bridge' has 1 subscriber(s). 
o.s.i.a.i.AmqpInboundChannelAdapter  : started inbound.springCloudBus.anonymous.t4cuHSE6RfKRYvPvrgfbUg 

クライアントアプリケーションのpom.xml

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

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

    <dependency> 
     <groupId>javax.validation</groupId> 
     <artifactId>validation-api</artifactId> 
     <version>1.1.0.Final</version> 
    </dependency> 

    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-validator</artifactId> 
    </dependency> 

クライアントアプリケーションの設定

spring: 
    application: 
    name: app 
    cloud: 
    config: 
     uri: http://localhost:8888 

クライアントアプリケーションの起動はをログ:

o.s.b.a.e.m.EndpointHandlerMapping INFO - Mapped "{[/bus/refresh],methods=[POST]}" onto public void org.springframework.cloud.bus.endpoint.RefreshBusEndpoint.refresh(java.lang.String) 
... 
o.s.i.m.IntegrationMBeanExporter INFO - Registering beans for JMX exposure on startup 
o.s.i.m.IntegrationMBeanExporter INFO - Registering MessageChannel springCloudBusInput 
o.s.i.m.IntegrationMBeanExporter INFO - Located managed bean 'org.springframework.integration:type=MessageChannel,name=springCloudBusInput': registering with JMX server as MBean [org.springframework.integration:type=MessageChannel,name=springCloudBusInput] 
o.s.i.m.IntegrationMBeanExporter INFO - Registering MessageChannel springCloudBusOutput 
o.s.i.m.IntegrationMBeanExporter INFO - Located managed bean 'org.springframework.integration:type=MessageChannel,name=springCloudBusOutput': registering with JMX server as MBean [org.springframework.integration:type=MessageChannel,name=springCloudBusOutput] 
o.s.i.m.IntegrationMBeanExporter INFO - Registering MessageChannel nullChannel 
o.s.i.m.IntegrationMBeanExporter INFO - Located managed bean 'org.springframework.integration:type=MessageChannel,name=nullChannel': registering with JMX server as MBean [org.springframework.integration:type=MessageChannel,name=nullChannel] 
o.s.i.m.IntegrationMBeanExporter INFO - Registering MessageChannel errorChannel 
o.s.i.m.IntegrationMBeanExporter INFO - Located managed bean 'org.springframework.integration:type=MessageChannel,name=errorChannel': registering with JMX server as MBean [org.springframework.integration:type=MessageChannel,name=errorChannel] 
o.s.i.m.IntegrationMBeanExporter INFO - Located managed bean 'org.springframework.integration:type=MessageHandler,name=org.springframework.cloud.bus.BusAutoConfiguration.acceptRemote.serviceActivator,bean=endpoint': registering with JMX server as MBean [org.springframework.integration:type=MessageHandler,name=org.springframework.cloud.bus.BusAutoConfiguration.acceptRemote.serviceActivator,bean=endpoint] 
o.s.i.m.IntegrationMBeanExporter INFO - Located managed bean 'org.springframework.integration:type=MessageHandler,name=errorLogger,bean=internal': registering with JMX server as MBean [org.springframework.integration:type=MessageHandler,name=errorLogger,bean=internal] 
o.s.b.a.e.j.EndpointMBeanExporter INFO - Registering beans for JMX exposure on startup 
+0

変更をコミットしましたか? –

+0

はい私はコミットしようとしましたが、必要ではないはずですが、ドキュメントにはファイルシステムがチェックされていると記載されています... – codependent

+0

ネイティブプロファイルのみで、gitではありません。 – spencergibb

答えて

2

この文書を通過するようにしてくださいspring-cloud-config-push-notificationsとしないでくださいngrockをインストールします。また、ちょうどgit commitでリフレッシュする必要がある場合は、クラウドバスプロジェクトを必要とせず、設定だけで十分です。お役に立てれば。あなたはあなたが必要とする他のシステムでのRabbitMQまずいした場合のGradle を - あなたはのpom.xml コンパイル(「org.springframework.cloud:spring-cloud-stream-binder-rabbit」)に依存し休閑持っている必要

+0

ngrokの使用を提案していただき、ありがとうございました。ファイルシステムの代わりに実際のGitHubリポジトリをテストしてくれました。 – codependent

0

application.propertiesに

spring.rabbitmq.hostをホストファイルを指定するには:{{ホスト名}}

2

あなたは春の雲バスとRabbitMQの(またはカフカやRedisの)をサポートするコンフィグサーバが必要になります。

... 
<dependency> 
    <groupId>org.springframework.cloud</groupId> 
    <artifactId>spring-cloud-config-monitor</artifactId> 
</dependency> 
<dependency> 
    <groupId>org.springframework.cloud</groupId> 
    <artifactId>spring-cloud-starter-stream-rabbit</artifactId> 
</dependency> 
... 

次のExchangeとのRabbitMQ:

:springCloudBus

タイプ:トピック

耐久性:真

自動削除:偽

内部:偽

ウェブフックを経由して、それはGithubに、のBitbucketやGitLabのいずれかからイベントをプッシュ受信すると話題にデータを送信しコンフィグサーバhttp://<config-server>/monitor

へConfigクライアントとRabbitMQライブラリを持つクライアントアプリケーション:

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

以前の新しくする必要のある操作。

私のブログのhttp://tech.asimio.net/2017/02/02/Refreshable-Configuration-using-Spring-Cloud-Config-Server-Spring-Cloud-Bus-RabbitMQ-and-Git.htmlには、設定、ログ、Configサーバーとクライアントアプリケーションの完全なソースコードの簡単な説明があります。

+0

JMXのbean /設定を更新するために同じ(pub/subメカニズム)を使用することができます。または、クラスタ環境でJMX管理を集中管理するより良い方法はありますか? – alltej

関連する問題