I would like to enhance the OP’s answer with more information as I struggled a bit before finally stumbling upon this solution and there seem to be lots of confusion about changes to actuator behavior with Spring Boot 2
What hasn’t changed
You need to include a dependency to spring-boot-starter-actuator
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
</dependencies>
If you want to access actuator endpoints via HTTP, you also need to add a dependency to spring-boot-starter-web
So your pom dependencies will look like below
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
</dependencies>
Changes introduced in Spring Boot 2
-
Endpoints like
/health
,/metrics
etc. are no longer available at the default root context. They are available from now on at
http://{host}:{port}/actuator
.
Also, it doesn’t matter whether your application’s all other endpoints begin with some other context such as/hello
— actuator is available at/actuator
and not at/hello/actuator
. -
Response from
/actuator
endpoint is by default HATEOAS enabled. Prior to Spring Boot 2, this was the case only if HATEOAS is on the classpath and explicitly enabled inapplication.yml
-
To make an actuator endpoint available via HTTP, it needs to be both enabled and exposed.
By default:
-
only the
/health
and/info
endpoints are exposed, regardless of Spring Security being present and configured in your application. -
all endpoints but
/shutdown
are enabled (though only/health
and/info
are exposed)
-
-
If you want to expose all of the endpoints (not always a good idea), you may do so by adding
management.endpoints.web.exposure.include=*
toapplication.properties
. Don’t forget to quote the wildcard if you’re using yml-configurations. - Old properties starting with
endpoints.xyz
are deprecated in favor of properties starting withmanagement.xyz
For a full documentation, see official doc and also the migration guide