|
|
|
= Spring Boot - Actuator
|
|
|
|
|
|
|
|
Spring Boot Actuator includes a number of additional features to help you monitor and
|
|
|
|
manage your application when it's pushed to production. You can choose to manage and
|
|
|
|
monitor your application using HTTP or JMX endpoints. Auditing, health and metrics
|
|
|
|
gathering can be automatically applied to your application. The
|
|
|
|
https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#production-ready[user guide]
|
|
|
|
covers the features in more detail.
|
|
|
|
|
|
|
|
== Enabling the Actuator
|
|
|
|
The simplest way to enable the features is to add a dependency to the
|
|
|
|
`spring-boot-starter-actuator` '`Starter`'. To add the actuator to a Maven-based project,
|
|
|
|
add the following '`Starter`' dependency:
|
|
|
|
|
|
|
|
[source,xml,indent=0]
|
|
|
|
----
|
|
|
|
<dependencies>
|
|
|
|
<dependency>
|
|
|
|
<groupId>org.springframework.boot</groupId>
|
|
|
|
<artifactId>spring-boot-starter-actuator</artifactId>
|
|
|
|
</dependency>
|
|
|
|
</dependencies>
|
|
|
|
----
|
|
|
|
|
|
|
|
For Gradle, use the following declaration:
|
|
|
|
|
|
|
|
[indent=0]
|
|
|
|
----
|
|
|
|
dependencies {
|
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-actuator'
|
|
|
|
}
|
|
|
|
----
|
|
|
|
|
|
|
|
== Features
|
|
|
|
* **Endpoints** Actuator endpoints allow you to monitor and interact with your
|
|
|
|
application. Spring Boot includes a number of built-in endpoints and you can also add
|
|
|
|
your own. For example the `health` endpoint provides basic application health
|
|
|
|
information. Run up a basic application and look at `/actuator/health`.
|
|
|
|
* **Metrics** Spring Boot Actuator provides dimensional metrics by integrating with
|
|
|
|
https://micrometer.io[Micrometer].
|
|
|
|
* **Audit** Spring Boot Actuator has a flexible audit framework that will publish events
|
|
|
|
to an `AuditEventRepository`. Once Spring Security is in play it automatically publishes
|
|
|
|
authentication events by default. This can be very useful for reporting, and also to
|
|
|
|
implement a lock-out policy based on authentication failures.
|