Not having READMEs in github is a mistake IMO, so here's one restored and with a link to the docs. Docs also updated to more accurately reflect the location of the actuator features in implementation. See https://github.com/spring-guides/gs-actuator-service/pull/7 for the Getting started guide change Fixes gh-1014
60 lines
2.2 KiB
Markdown
60 lines
2.2 KiB
Markdown
# 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 endpoints, with JMX or even by remote shell (SSH or
|
|
Telnet). Auditing, health and metrics gathering can be automatically
|
|
applied to your application. The
|
|
[user guide](http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#production-ready)
|
|
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 POM". To add the actuator to a
|
|
Maven based project, add the following "starter" dependency:
|
|
|
|
```xml
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-actuator</artifactId>
|
|
</dependency>
|
|
</dependencies>
|
|
```
|
|
|
|
For Gradle, use the declaration:
|
|
|
|
```groovy
|
|
dependencies {
|
|
compile("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
|
|
app and look at "/health" (and see "/mappings" for a list of other
|
|
HTTP endpoints).
|
|
|
|
* **Metrics** Spring Boot Actuator includes a metrics service with
|
|
"gauge" and "counter" support. A "gauge" records a single value; and
|
|
a "counter" records a delta (an increment or decrement). Metrics for
|
|
all HTTP requests are automatically recorded, so if you hit the
|
|
`metrics` endpoint should should see a response similar to this:
|
|
|
|
* **Audit** Spring Boot Actuator has a flexible audit framework that
|
|
will publish events to an `AuditService`. 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.
|
|
|
|
* **Process Monitoring** In Spring Boot Actuator you can find
|
|
`ApplicationPidListener` which creates file containing application PID
|
|
(by default in application directory and file name is
|
|
`application.pid`).
|