SpringBoot - 13指标监控Actuator

2021-06-11 07:02

阅读:344

标签:port   垃圾收集   程序   bean   pen   span   守护   可视化   通过   

SpringBoot - 13指标监控Actuator

(1)使用Actuator检查与监控

(1.1)修改POM文件,引入GAV

        dependency>
            groupId>org.springframework.bootgroupId>
            artifactId>spring-boot-starter-actuatorartifactId>
        dependency>

(1.2)修改配置文件

management:
  endpoints:
    web:
      base-path: /actuator   // 配置访问端点的根路径

(1.3)测试

2020-12-30 22:01:06.561  INFO 7492 --- [  restartedMain] o.s.b.d.a.OptionalLiveReloadServer  : LiveReload server is running on port 35729
2020-12-30 22:01:06.566  INFO 7492 --- [  restartedMain] o.s.b.a.e.web.EndpointLinksResolver : Exposing 2 endpoint(s) beneath base path ‘/actuator‘

技术图片

(1.4)应用配置类

management:
  endpoints:
    web:
      base-path: /actuator
      exposure:
        include: "*"    // 配置开启其他的端点URI; 开启所有的端点访问("*")
#        exclude:       // 排除端点
#          - env
#          - beans
#          - info

技术图片

配置属性

  • /configprops:   描述配置属性(包含默认值)  
    • prefix属性代表了属性的配置前缀;   properties 代表了各个属性的名称和值。
  • /beans:  描述应用程序上下文里全部的Bean,以及他们的关系。
    • bean:Bean的名称      ;  scope:     Bean的 作用域
    • type:Bean的Java类型  ;  resource:  class文件的具体路径
    • dependencies:   依赖的Bean名称
  • /env: 获取应用所有可用的环境属性报告,包括:环境变量、JVM属性、应用的配置、命令行中的参数。
    • /env/{name}: 根据名称获取特定的环境属性值。  
  • /info:    返回应用自定义的信息。默认情况下,只返回空json内容。 在application.yml中通过info设置属性。
  • /metrics: 报告各种应用程序的度量信息, 比如内存用量、 HTTP请求计数、线程信息、垃圾回收信息等。
    • 系统信息: 包括处理器数量processors、运行时间uptime和instance.uptime、系统平均负载systemload.average。
    • mem.*:   内存概要信息。包括分配给应用的总内存数量以及当前空闲的内存数量。信息来自java.lang.Runtime。
    • heap.*:  堆内存使用情况。
      • 来自java.lang.management.MemoryMXBean接口中getHeapMemoryUsage方法获取的java.lang.management.MemoryUsage。
    • nonheap.*: 非堆内存使用情况。
      • 来自 java.lang.management.MemoryMXBean接口中getNonHeapMemoryUsage方法获取的java.lang.management.MemoryUsage。
    • threads.*: 线程使用情况。包括线程数、守护线程数(daemon)、线程峰值(peak)等,来自java.lang.management.ThreadMXBean。
    • classes.*: 应用加载和卸载的类统计。来自java.lang.management.ClassLoadingMXBean。
    • gc.*: 垃圾收集器的详细信息。 来自java.lang.management.GarbageCollectorMXBean。
      • 包括垃圾回收次数 gc.ps_scavenge.count、垃圾回收消耗时间gc.ps_scavenge.time、
      • 标记-清除算法的次数gc.ps_marksweep.count、标记-清除算法的消耗时间gc.ps_marksweep.time。
    • httpsessions.*: Tomcat容器的会话使用情况。包括最大会话数httpsessions.max和活跃会话数httpsessions.active。
      • 这些度量指标信息仅在引入了嵌入式Tomcat作为应用容器的时候才会提供。

 

(2)使用可视化监控应用Spring Boot Admin

Spring Boot Admin的使用需要搭建 服务端 与 客户端。

  • 服务端: 独立的项目,会将搜集到的数据在自己的图像界面中展示。
  • 客户端:需要监控的项目。
  • 对应关系: 一个服务端可以监控多个客户端。

(2.1)搭建服务端

(2.1.1)修改POM文件,引入GAV坐标(Spring Boot 2.3.4 - Spring Boot Admin 2.3.1)

        dependency>
            groupId>de.codecentricgroupId>
            artifactId>spring-boot-admin-starter-serverartifactId>
            version>2.3.1version>
        dependency>

(2.1.2)注解开启

@SpringBootApplication
@EnableAdminServer           // 开启Spring Boot Admin服务端
public class SpringBoot11JunitApplication {

(2.1.3)修改配置文件

server:
  port: 9090

(2.2)搭建客户端

(2.2.1)修改POM文件

        dependency>
            groupId>de.codecentricgroupId>
            artifactId>spring-boot-admin-starter-clientartifactId>
            version>2.3.1version>
        dependency>

(2.2.2)修改配置文件

spring:
  boot:
    admin:
      client:
        url: http://localhost:9090/            // 指定服务端的访问地址

(2.3)测试

技术图片

查看单个实例的监控数据

技术图片

 

SpringBoot - 13指标监控Actuator

标签:port   垃圾收集   程序   bean   pen   span   守护   可视化   通过   

原文地址:https://www.cnblogs.com/kingdomer/p/14213781.html


评论


亲,登录后才可以留言!