Configura Swagger para documentar tu API REST con Spring Boot
Con este artículo aprenderás a configurar Swagger para poder documentar perfectamente tu API REST desarrollada con Spring Boot.
Dentro del desarrollo de una API REST con Spring Boot, vamos a explicaros en este artículo cómo añadir Spring Boot Actuator a vuestro proyecto y los motivos por los que hacerlo.
Spring Boot Actuator es una librería que nos proporciona herramientas de monitorización y administración de nuestra API REST de una manera bastante sencilla.
Lo que hace es organizar una serie de endpoints REST, a través del mecanismo de JMX o a través de un proyecto complementario de una aplicación web, dónde podemos acceder a diferente información de monitorización para revisar el estado de nuestra API REST en muchos ámbitos diferentes.
El proyecto de Spring Boot Actuator surge con Spring Boot 1.X, y a partir de Spring Boot 2.X ha sufrido un gran rediseño de todo lo que teníamos definido antes, y es con esta versión con la que vamos a trabajar.
Para incluir dentro de nuestra API REST esta librería, tan solo tenemos que añadir esta dependencia maven starter:
<dependency>
<groupID>org.springframework.boot</groupID>
<artifactID>spring-boot-starter-actuator</artifactID>
</dependency>
Una vez incluida esta dependencia, tendríamos a nuestra disposición una serie de endpoints sobre los cuales podemos consumir.
Por defecto se habilitan solamente un par de actuators, uno que nos permite verificar si la aplicación se encuentra levantada o no, y otro en el que podríamos consultar algo de información, siempre y cuando lo hayamos definido.
Además de estos dos actuators que tendríamos inicialmente, podemos activar otra serie de actuators que ya vienen predefinidos, e incluso podríamos desarrollar los nuestros propios.
Podemos activar el resto de actuators, para ello tendríamos que irnos a nuestro fichero de properties y modificar la siguiente propiedad y ponerla con el valor asterisco:
management.endpoints.web.exposure.inlclude=*
Con esto vamos a indicar que se incluyen todos los actuators entre los que se exponen en la web, por lo que la cantidad de actuators que tendremos disponibles será bastante más grande.
Con ellos podemos ver, por ejemplo, los diferentes beans que tenemos definidos, los elementos que haya en las cachés, diferentes condiciones, propiedades de configuración, propiedades del propio entorno, etcétera.
Si queremos, podemos hacer que cada actuator nos muestre una información más detallada que la que muestra por defecto.
Por ejemplo, el actuator health, por defecto, solo muestra si la aplicación está levantada o no. Para ver más información sobre la misma, debemos establecer la siguiente propiedad:
management.endpoint.health.show-details=always
De esta forma, nos mostrará más detalles respecto a la salud de nuestra aplicación, como, por ejemplo, la base de datos a la que nos estamos conectando, el tamaño en disco y muchos otros aspectos
Sustituyendo el nombre del actuator por otro, podemos hacer que cualquiera de ellos nos muestre más información.
En el video os mostramos de forma práctica todo lo explicado sobre los actuators, para ver el proceso de una forma más visual.
También te puede interesar
Con este artículo aprenderás a configurar Swagger para poder documentar perfectamente tu API REST desarrollada con Spring Boot.
Aprende con este curso a desarrollar una API REST utilizando para ello Spring Boot, desde cero hasta la...