Spring Boot es un potente framework que simplifica el desarrollo de aplicaciones Java. Una de sus características más destacadas es Spring Boot Actuator, un subproyecto diseñado para proporcionar funciones listas para producción que te ayudarán a supervisar y gestionar tu aplicación. En esta entrada de blog, profundizaremos en los endpoints de Spring Boot Actuator, comprendiendo su importancia y cómo aprovecharlos al máximo en tus aplicaciones.
¿Listo para llevar la supervisión de tu aplicación al siguiente nivel? Descarga Apidog GRATIS y empieza a integrarlo con tus endpoints de Spring Boot Actuator hoy mismo. Con Apidog, puedes diseñar, probar y supervisar fácilmente tus API, garantizando un rendimiento y una fiabilidad óptimos.
¿Qué son los endpoints de Spring Boot Actuator?
Primero, aclaremos qué son los endpoints de Spring Boot Actuator. Los endpoints de Actuator son URL específicas proporcionadas por Spring Boot Actuator para supervisar e interactuar con tu aplicación. Estos endpoints exponen diversa información de la aplicación, como el estado, las métricas, las propiedades del entorno y mucho más.
Spring Boot Actuator viene con una amplia gama de endpoints integrados, y también puedes crear endpoints personalizados. Estos endpoints son extremadamente útiles para obtener información sobre el estado de ejecución de tu aplicación y para realizar tareas de gestión.
¿Por qué usar los endpoints de Spring Boot Actuator?
¿Por qué deberías preocuparte por los endpoints de Spring Boot Actuator? Pues bien, ofrecen varias ventajas:
- Supervisión: Puedes supervisar el rendimiento y el estado de tu aplicación en tiempo real.
- Solución de problemas: Los endpoints de Actuator ayudan a diagnosticar problemas proporcionando información detallada sobre el estado interno de la aplicación.
- Automatización: Estos endpoints se pueden integrar con herramientas de supervisión como Prometheus, Grafana o Apidog para realizar comprobaciones de estado y alertas automatizadas.
- Facilidad de uso: Son fáciles de configurar y requieren una configuración mínima para empezar.
Teniendo en cuenta estas ventajas, exploremos algunos de los endpoints clave de Spring Boot Actuator y cómo utilizarlos eficazmente.

Empezando con Spring Boot Actuator
Antes de profundizar en endpoints específicos, necesitamos configurar Spring Boot Actuator en nuestra aplicación. Aquí tienes una guía rápida para empezar:
Añade la dependencia: Incluye la dependencia de Spring Boot Actuator en tu archivo pom.xml
:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
Configuración: Por defecto, los endpoints de Actuator se exponen en la ruta base /actuator
. Puedes personalizar esto en tu archivo application.properties
o application.yml
:
management.endpoints.web.base-path=/manage
Seguridad: Para entornos de producción, asegurar tus endpoints de Actuator es crucial. Puedes configurar los ajustes de seguridad para restringir el acceso:
management.endpoints.web.exposure.include=health,info
management.endpoint.health.probes.enabled=true
management.endpoint.health.show-details=always
management.endpoints.web.exposure.exclude=env
Una vez realizada la configuración, pasemos a explorar los endpoints de Spring Boot Actuator más utilizados.

Endpoints clave de Spring Boot Actuator
1. Endpoint de estado
El endpoint /health
proporciona información básica sobre el estado de tu aplicación. Es uno de los endpoints más utilizados para fines de supervisión.
- URL:
/actuator/health
- Respuesta: Objeto JSON que indica el estado de salud (
UP
,DOWN
, etc.)
Ejemplo de respuesta:
{
"status": "UP",
"components": {
"db": {
"status": "UP",
"details": {
"database": "MySQL",
"validationQuery": "isValid()"
}
},
"diskSpace": {
"status": "UP",
"details": {
"total": 499963174912,
"free": 340105166848,
"threshold": 10485760
}
}
}
}
2. Endpoint de información
El endpoint /info
expone información arbitraria de la aplicación. Puedes utilizar este endpoint para proporcionar detalles como la versión, la descripción y otros metadatos.
- URL:
/actuator/info
- Configuración: Puedes configurar la información en el archivo
application.properties
:
info.app.name=Mi aplicación Spring Boot
info.app.description=Esta es una aplicación de ejemplo.
info.app.version=1.0.0
3. Endpoint de métricas
El endpoint /metrics
proporciona una gran cantidad de información sobre diversas métricas recopiladas por la aplicación, como el uso de la memoria, el uso de la CPU y las estadísticas de las peticiones HTTP.
- URL:
/actuator/metrics
- Respuesta: Objeto JSON con datos de métricas
Ejemplo de respuesta:
{
"names": [
"jvm.memory.used",
"jvm.gc.pause",
"http.server.requests",
...
]
}
También puedes consultar métricas específicas, por ejemplo, para obtener estadísticas de las peticiones HTTP:
- URL:
/actuator/metrics/http.server.requests
- Respuesta: Datos de métricas detallados para las peticiones HTTP
4. Endpoint de entorno
El endpoint /env
expone las propiedades del entorno de Spring. Esto puede ser muy útil para depurar problemas de configuración.
- URL:
/actuator/env
- Respuesta: Objeto JSON con propiedades del entorno
Ejemplo de respuesta:
{
"activeProfiles": ["dev"],
"propertySources": [
{
"name": "applicationConfig: [classpath:/application.properties]",
"properties": {
"server.port": {
"value": "8080"
}
}
},
...
]
}
5. Endpoint de beans
El endpoint /beans
proporciona una lista de todos los beans de Spring en el contexto de la aplicación junto con sus dependencias. Esto es útil para comprender el cableado de tu aplicación.
- URL:
/actuator/beans
- Respuesta: Objeto JSON con datos de beans
Ejemplo de respuesta:
{
"contexts": {
"application": {
"beans": {
"beanName": {
"aliases": [],
"scope": "singleton",
"type": "com.example.MyBean",
"resource": "file:./classes/com/example/MyBean.class",
"dependencies": []
},
...
}
}
}
}
Integración de los endpoints de Spring Boot Actuator con Apidog
Los endpoints de Spring Boot Actuator ofrecen un amplio conjunto de herramientas para supervisar y gestionar tu aplicación. Para aprovechar al máximo estas funciones, la integración con una potente herramienta de gestión de API como Apidog puede ser increíblemente beneficiosa. Apidog ayuda a diseñar, probar y supervisar las API sin problemas, mejorando tu estrategia general de gestión de aplicaciones.
¿Por qué integrarse con Apidog?
Apidog proporciona varias ventajas cuando se integra con los endpoints de Spring Boot Actuator:
- Supervisión centralizada: Agrega todos los datos de tus endpoints de Actuator en un solo lugar.
- Alertas automatizadas: Configura alertas automatizadas para métricas críticas y estados de salud.
- Análisis mejorado: Aprovecha las funciones de análisis de Apidog para un análisis en profundidad de las métricas.
- Documentación de la API: Genera documentación completa de la API sin esfuerzo.
Pasos para integrar Spring Boot Actuator con Apidog
Registra tu API: Empieza registrando tu API de Spring Boot con Apidog.

Esto permitirá a Apidog reconocer e interactuar con tus endpoints de Actuator.

Asegúrate de que tus endpoints de Actuator estén expuestos y accesibles. Ajusta tu configuración de seguridad si es necesario para permitir que Apidog acceda a estos endpoints.
Supervisa el estado: Utiliza Apidog para supervisar continuamente el endpoint. Esto hará un seguimiento del estado de salud de tu aplicación y te notificará cualquier problema.

Utiliza las capacidades de análisis de Apidog para recopilar información del endpoint. Esto te ayuda a comprender las tendencias de rendimiento e identificar posibles cuellos de botella.
Ventajas de la integración
La integración de los endpoints de Spring Boot Actuator con Apidog proporciona una solución de supervisión robusta. Estas son algunas de las ventajas clave:
- Supervisión en tiempo real: Obtén actualizaciones en tiempo real sobre el estado y el rendimiento de tu aplicación.
- Resolución proactiva de problemas: Las alertas automatizadas te permiten abordar los problemas antes de que afecten a los usuarios.
- Análisis exhaustivo: El análisis detallado te ayuda a comprender los patrones de uso y a optimizar la asignación de recursos.
- Gestión simplificada: La gestión centralizada de la API facilita la supervisión y la gestión de varios servicios.
Esta integración abre un mundo de posibilidades para la gestión proactiva de aplicaciones. Empieza a integrarte hoy mismo y experimenta las ventajas de una supervisión y gestión perfectas con Spring Boot Actuator y Apidog.
Consejos y trucos avanzados para usar los endpoints de Spring Boot Actuator
Ahora que tenemos una sólida comprensión de los conceptos básicos, profundicemos en algunos consejos y trucos avanzados que pueden ayudarte a sacar aún más partido a los endpoints de Spring Boot Actuator.
Ajuste preciso de la recopilación de métricas
Por defecto, Spring Boot Actuator recopila una gran cantidad de métricas. Sin embargo, en un entorno de producción, es posible que desees personalizar qué métricas se recopilan para optimizar el rendimiento y el almacenamiento.
Habilitar métricas específicas: Puedes ajustar con precisión qué métricas están habilitadas utilizando propiedades en application.properties
o application.yml
.
management.metrics.enable.jvm=true
management.metrics.enable.process=true
management.metrics.enable.http.server.requests=true
Muestreo e histograma: Ajusta la tasa de muestreo y la configuración del histograma para gestionar la granularidad y el rendimiento de la recopilación de métricas.
management.metrics.distribution.percentiles.http.server.requests=0.5,0.95,0.99
management.metrics.distribution.expiry=http.server.requests=60s
Creación de indicadores de estado compuestos
Los indicadores de estado compuestos agregan varios indicadores de estado en un único estado de salud. Esto puede ser particularmente útil si tienes varios subsistemas para supervisar.
Crear indicadores de estado: Implementa indicadores de estado personalizados extendiendo AbstractHealthIndicator
.
import org.springframework.boot.actuate.health.Health;
import org.springframework.boot.actuate.health.HealthIndicator;
import org.springframework.stereotype.Component;
@Component
public class CustomHealthIndicator implements HealthIndicator {
@Override
public Health health() {
// Custom health check logic
return Health.up().withDetail("custom", "All systems go").build();
}
}
Agregar indicadores de estado: Utiliza HealthAggregator
para combinar varios indicadores de estado.
import org.springframework.boot.actuate.health.CompositeHealthContributor;
import org.springframework.boot.actuate.health.HealthContributor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class HealthConfig {
@Bean
public HealthContributor customHealthContributor() {
return CompositeHealthContributor.fromMap(Map.of(
"custom", new CustomHealthIndicator(),
"db", new DataSourceHealthIndicator(dataSource)
));
}
}
Personalización de las rutas y la exposición de los endpoints
Es posible que desees cambiar las rutas predeterminadas o controlar qué endpoints se exponen en función de los diferentes entornos (por ejemplo, desarrollo frente a producción).
Ruta personalizada: Cambia la ruta base para todos los endpoints de Actuator.
management.endpoints.web.base-path=/monitoring
Exposición específica del entorno: Utiliza perfiles para personalizar la exposición de los endpoints para diferentes entornos.
# application-dev.properties
management.endpoints.web.exposure.include=*
# application-prod.properties
management.endpoints.web.exposure.include=health,info,metrics
Aprovechamiento de herramientas de supervisión de terceros
Si bien Spring Boot Actuator proporciona una base sólida, la integración con herramientas de terceros puede ofrecer capacidades de supervisión más robustas. Herramientas como Prometheus, Grafana y New Relic pueden ingerir métricas de los endpoints de Actuator y proporcionar análisis avanzados, alertas y visualización.
Prometheus: Configura un endpoint de Prometheus para extraer métricas.
management.endpoint.prometheus.enabled=true
Grafana: Utiliza Grafana para visualizar las métricas de Prometheus añadiendo una fuente de datos que apunte a tu servidor de Prometheus.
Depuración y registro
El registro mejorado en torno a los endpoints de Actuator puede ayudar a depurar problemas. Personaliza los niveles de registro para los endpoints de Actuator en application.properties
.
logging.level.org.springframework.boot.actuate=DEBUG
logging.level.org.springframework.boot.actuate.endpoint=TRACE
Automatización con CI/CD
Incorpora los endpoints de Actuator en tus pipelines de CI/CD para automatizar las comprobaciones de estado y las validaciones de la implementación.
CI/CD está disponible en Apidog

Comprobaciones previas a la implementación: Antes de la implementación, activa un script que compruebe el endpoint de estado.
curl -f http://localhost:8080/actuator/health || exit 1
Supervisión posterior a la implementación: Después de la implementación, supervisa continuamente las métricas clave y configura alertas para las anomalías.
Conclusión
Los endpoints de Spring Boot Actuator no son solo una herramienta para la supervisión; son una solución integral para mantener el estado, el rendimiento y la fiabilidad de tu aplicación. Al aprovechar la potencia de estos endpoints, puedes obtener información detallada sobre el funcionamiento interno de tu aplicación, automatizar las tareas de gestión y garantizar que tu sistema siga siendo robusto y receptivo en diversas condiciones.
Tanto si estás empezando con Spring Boot como si buscas perfeccionar tu estrategia de supervisión, los endpoints de Actuator proporcionan una base sólida. Junto con herramientas como Apidog, puedes elevar tus capacidades de supervisión a nuevas cotas, garantizando que tus aplicaciones siempre se ejecuten de forma fluida y eficiente.
Recuerda que, si bien los valores predeterminados funcionan muy bien de fábrica, el verdadero poder reside en personalizar e integrar estos endpoints en tu flujo de trabajo específico. Por lo tanto, empieza a explorar, ajustar e integrar los endpoints de Actuator hoy mismo y observa cómo la supervisión de tu aplicación se transforma de básica a brillante.