2017-11-22 24 views
0

とブートアクチュエータエンドポイントID昨日、私は春ブーツ2.0スナップショットを更新したときに、私はアノテーションを使用する場合、私は私のカスタマイズされたアクチュエータのエンドポイントがうまく動作しない見つかったような春春ブーツ2.0

@Endpoint(id = "setupInfo") 

I'vは、例外が発生しました私はそれを変更した場合

*************************** 
APPLICATION FAILED TO START 
*************************** 

Description: 

Configuration property name 'management.endpoint.setupInfo.cache.time-to-live' is not valid: 

    Invalid characters: 'I' 
    Bean: webMetricsFilter 
    Reason: Canonical names should be kebab-case ('-' separated), lowercase alpha-numeric characters and must start with a letter 

Action: 

Modify 'management.endpoint.setupInfo.cache.time-to-live' so that it conforms to the canonical names requirements. 

::のようなメッセージ

@Endpoint(id = "setup-info") 

サービスはノルムを開始します誰かがエンドポイントID名ポリシーが変更されたことを知っていますか?

+1

エラーメッセージに、あなたが使用した 'Camel Case'との理由とその明確な' Kebab Case'が記載されています – MohamedSanaulla

答えて

0

したがって、エラーメッセージにはすべてが表示されます。エンドポイントのIDを変更する必要はなく、プロパティの名前を修正するだけで済みます。

setupInfoではなくsetup-infoのプロパティを生成するために、アノテーションプロセッサはカスタムエンドポイントのIDをサニタイズする必要があります。私は開店しました#11107

+0

私はエンドポイントのIDとプロパティをテストしました。スナップショットのバージョンでCamel CaseエンドポイントIDを使用すると、同じエラーメッセージが再び表示されます。 –

+0

私はこの問題がSpring-Boot 2.0.0.BUILD-SNAPSHOTのSpring Framework 5.0.2.BUILD-SNAPSHOTから来ていると思います。もしSpring-boot 2.0.0.M6 + Spring Framework 5.0.1それはうまくいく。 このスナップショットのもう1つの問題は、 "status"と "info"エンドポイントだけをWebMvcにマップでき、他のフレームワークエンドポイントとカスタマイズされたエンドポイントを "/ application/status"や "/ application /情報 "。 –