Je crée un projet de démonstration pour Spring-Config-Server
et Spring-Config-Client
.
Dans SpringBoot 1.5.6.RELEASE
tout fonctionne bien.
Cependant, lorsque je mets à niveau le projet vers 2.0.1.RELEASE
il ne fournit pas les points de terminaison de l'actionneur.
Point final de l'actionneur fourni dans 1.5.6.RELEASE
Mapped "{[/refresh || /refresh.json],methods=[POST]}"
Mapped "{[/dump || /dump.json],methods=[GET]
Mapped "{[/heapdump || /heapdump.json],methods=[GET]
Mapped "{[/autoconfig || /autoconfig.json],methods=[GET]
Mapped "{[/resume || /resume.json],methods=[POST]}"
Mapped "{[/configprops || /configprops.json],methods=[GET]
Mapped "{[/features || /features.json],methods=[GET]
Mapped "{[/loggers/{name:.*}],methods=[GET]
Mapped "{[/restart || /restart.json],methods=[POST]}"
...and many more
Point final de l'actionneur fourni dans 2.0.1.RELEASE
Mapped "{[/actuator/health],methods=[GET]
Mapped "{[/actuator/info],methods=[GET]
Mapped "{[/actuator],methods=[GET]
pom.xml: 2.0.1.RELEASE
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<Java.version>1.8</Java.version>
<spring-cloud.version>Finchley.RC1</spring-cloud.version>
</properties>
<dependencies>
<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.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
La seule différence bw 1.5.6
pom est la version et spring-cloud.version = Dalston.SR2
Quelqu'un pourrait-il m'aider?
Après un peu de recherche, j'ai trouvé la cause pour laquelle les points de terminaison ne sont pas affichés dans Spring Boot 2.0
est selon les documents
Par défaut, tous les noeuds finaux, à l'exception de l'arrêt, sont activés
nous devons donc les activer manuellement.
J'ai ajouté management.endpoints.web.exposure.include=*
dans application.properties
fichier et maintenant tous les points de terminaison sont de retour.
Remarque : Si vous utilisez .yml
assurez-vous d'utiliser "*"
ne pas *
L'exposition des points de terminaison sur HTTP est désormais configurable à l'aide des propriétés
management.endpoints.web.exposure.include
management.endpoints.web.exposure.exclude
Vous pouvez exposer les points de terminaison par leur identifiant mentionné par l'actuateur.
# Include all endpoints
management.endpoints.web.exposure.include=*
# Exclude specifics
management.endpoints.web.exposure.exclude=env