Spring Boot Actuator 是一个非常强大的工具,可以提供生产就绪的特性,如健康检查、度量指标、审计等。
在 pom.xml
文件中添加 Actuator 依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</version>{Spring Boot 版本}</version>
</dependency>
在 application.properties
或 application.yml
文件中配置 Actuator:
# application.properties
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always
启动应用后,可以通过以下 URL 访问 Actuator 端点:
http://localhost:8080/actuator/health
http://localhost:8080/actuator/metrics
http://localhost:8080/actuator/env
http://localhost:8080/actuator/threaddump
Prometheus 是一个开源的监控系统,Grafana 是一个开源的可视化工具,两者结合可以提供强大的监控和可视化功能。
在 pom.xml
文件中添加 Prometheus 依赖:
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
<version>{Micrometer 版本}</version>
</dependency>
在 application.properties
文件中配置 Prometheus:
management.metrics.export.prometheus.enabled=true
management.endpoints.web.exposure.include=prometheus
在 Prometheus 配置文件 prometheus.yml
中添加目标:
scrape_configs:
- job_name: 'spring-boot'
metrics_path: '/actuator/prometheus'
static_configs:
- targets: ['localhost:8080']
在 Grafana 中创建数据源并配置仪表盘,使用 Prometheus 作为数据源。
ELK Stack(Elasticsearch, Logstash, Kibana)是一个流行的日志管理和分析工具。
在 pom.xml
文件中添加 Logback 依赖:
<dependency>
<groupId>net.logstash.logback</groupId>
<artifactId>logstash-logback-encoder</artifactId>
<version>{Logstash Logback Encoder 版本}</version>
</dependency>
在 logback-spring.xml
文件中配置 Logback:
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>localhost:5000</destination>
<encoder class="net.logstash.logback.encoder.LogstashEncoder" />
</appender>
<root level="info">
<appender-ref ref="STDOUT" />
<appender-ref ref="LOGSTASH" />
</root>
</configuration>
在 logstash.conf
文件中配置 Logstash:
input {
tcp {
port => 5000
codec => json
}
}
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "spring-boot-logs-%{+YYYY.MM.dd}"
}
stdout { codec => rubydebug }
}
在 Kibana 中创建索引模式并配置仪表盘,使用 Elasticsearch 作为数据源。
Micrometer 是一个用于监控指标的库,支持多种监控系统,如 Prometheus、Graphite、InfluxDB 等。
在 pom.xml
文件中添加 Micrometer 依赖:
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-core</artifactId>
<version>{Micrometer 版本}</version>
</dependency>
在 application.properties
文件中配置 Micrometer:
management.metrics.export.prometheus.enabled=true
management.endpoints.web.exposure.include=prometheus
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有