springboot2.X整合prometheus监控的实例讲解

论坛 期权论坛 脚本     
niminba   2021-5-23 04:10   950   0

springboot2.x暴露健康状况通过prometheus监控

加入依赖

 <!--prometheus监控 https://prometheus.io/docs/introduction/overview/-->
 <dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-actuator</artifactId>
 </dependency>
 <dependency>
 <groupId>io.micrometer</groupId>
 <artifactId>micrometer-registry-prometheus</artifactId>
 </dependency>
 <!--prometheus监控 https://prometheus.io/docs/introduction/overview/-->

application.yml加入相关配置

management:
 security:
 enabled: false
 #prometheus+grafana+springboot2监控集成配置
 metrics:
 export:
 prometheus:
 enabled: true
 jmx:
 enabled: true
 endpoints:
 web:
 exposure:
 include: '*'
 base-path: /metrics
 #prometheus+grafana+springboot2监控集成配置

主启动类加入配置

package com.drore.saas;
import com.drore.saas.services.service.StorageService;
import io.micrometer.core.instrument.MeterRegistry;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.actuate.autoconfigure.metrics.MeterRegistryCustomizer;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;
import org.springframework.context.annotation.Bean;
@SpringBootApplication
@ServletComponentScan
public class TenantappApplication {
 public static void main(String[] args) {
 SpringApplication.run(TenantappApplication.class, args);
 }
 @Bean
 CommandLineRunner init(StorageService storageService) {
 return (args) -> {
 storageService.init();
 };
 }
#prometheus+grafana+springboot2监控集成配置
 @Bean
 MeterRegistryCustomizer meterRegistryCustomizer(MeterRegistry meterRegistry) {
 return meterRegistry1 -> {
 meterRegistry.config()
 .commonTags("application", "Tenantapp");
 };
 }
 #prometheus+grafana+springboot2监控集成配置
}

启动之后通过路径访问查看健康状况

http://xxxxxx/metrics/prometheus

查看到的数据如下:

[root@saas98 /]$ curl "http://10.98.94.220:80/ts/metrics/prometheus"
# HELP process_start_time_seconds Start time of the process since unix epoch.
# TYPE process_start_time_seconds gauge
process_start_time_seconds{application="Tenantapp",} 1.556068841226E9
# HELP tomcat_threads_busy_threads 
# TYPE tomcat_threads_busy_threads gauge
tomcat_threads_busy_threads{application="Tenantapp",name="http-nio-9081",} 1.0
# HELP tomcat_sessions_expired_sessions_total 
# TYPE tomcat_sessions_expired_sessions_total counter
tomcat_sessions_expired_sessions_total{application="Tenantapp",} 0.0
# HELP tomcat_sessions_active_current_sessions 
# TYPE tomcat_sessions_active_current_sessions gauge
tomcat_sessions_active_current_sessions{application="Tenantapp",} 0.0
# HELP jvm_gc_memory_promoted_bytes_total Count of positive increases in the size of the old generation memory pool before GC to after GC
# TYPE jvm_gc_memory_promoted_bytes_total counter
jvm_gc_memory_promoted_bytes_total{application="Tenantapp",} 1.18894656E8
# HELP tomcat_global_request_max_seconds 
# TYPE tomcat_global_request_max_seconds gauge
tomcat_global_request_max_seconds{application="Tenantapp",name="http-nio-9081",} 3.366
# HELP jvm_memory_used_bytes The amount of used memory
# TYPE jvm_memory_used_bytes gauge
jvm_memory_used_bytes{application="Tenantapp",area="heap",id="Survivor Space",} 653880.0
jvm_memory_used_bytes{application="Tenantapp",area="nonheap",id="Metaspace",} 1.36445248E8
jvm_memory_used_bytes{application="Tenantapp",area="heap",id="Eden Space",} 7511504.0
jvm_memory_used_bytes{application="Tenantapp",area="nonheap",id="Code Cache",} 3.8031424E7
jvm_memory_used_bytes{application="Tenantapp",area="heap",id="Tenured Gen",} 1.3880212E8
jvm_memory_used_bytes{application="Tenantapp",area="nonheap",id="Compressed Class Space",} 1.7220968E7
# HELP tomcat_sessions_created_sessions_total 
# TYPE tomcat_sessions_created_sessions_total counter
tomcat_sessions_created_sessions_total{application="Tenantapp",} 0.0
# HELP system_cpu_count The number of processors available to the Java virtual machine
# TYPE system_cpu_count gauge
system_cpu_count{application="Tenantapp",} 1.0
# HELP tomcat_global_sent_bytes_total 
# TYPE tomcat_global_sent_bytes_total counter
tomcat_global_sent_bytes_total{application="Tenantapp",name="http-nio-9081",} 8168269.0
# HELP jvm_threads_daemon_threads The current number of live daemon threads
# TYPE jvm_threads_daemon_threads gauge
jvm_threads_daemon_threads{application="Tenantapp",} 34.0
# HELP logback_events_total Number of error level events that made it to the logs
# TYPE logback_events_total counter
logback_events_total{application="Tenantapp",level="debug",} 0.0
logback_events_total{application="Tenantapp",level="error",} 965.0
logback_events_total{application="Tenantapp",level="warn",} 4.0
logback_events_total{application="Tenantapp",level="info",} 1047.0
logback_events_total{application="Tenantapp",level="trace",} 0.0
# HELP tomcat_cache_access_total 
# TYPE tomcat_cache_access_total counter
tomcat_cache_access_total{applaРэ4(
QUQ=I}5%8(4("G>r/"4(r7*B*>4(>o3j*B4(>rG:kvfC:"4(&O?#f輼4(R"B44(顽ь4(иAnG:kr7*х4(g7嵰4(4)}4(}4(}4)}4(}聅}(}(耽4(聡(}(4(}4(х}4(}(}(耽4(聡(}(4(}4(х(4(Gjr7*1J1ǒ4(7r7*4(&3FB*嵰4(輼х4(>r/"4(顽4(>2[nG:kхх4(B*4(4(輼4(r7RjZ<4(}}хфQJ1v2jх4(>r/"r'jх4(顽4(33ro>rokkR2r'Rg"[rfG3jrZ3roBwVg
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:1060120
帖子:212021
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP