spring-boot-starter-actuator監控接口詳解


spring-boot-starter-actuator 是什么

一句話,actuator是監控系統健康情況的工具。

- 怎么用?

1. 添加 POM依賴

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

2. 啟動的時候就會有下面這些提示.

Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.uti Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.ser Mapped URL path [/webjars/**] onto handler of type [class org.springframework.we Mapped URL path [/**] onto handler of type [class org.springframework.web.servle Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframewor Mapped "{[/metrics/{name:.*}],methods=[GET],produces=[application/json]}" onto p Mapped "{[/metrics || /metrics.json],methods=[GET],produces=[application/json]}" Mapped "{[/trace || /trace.json],methods=[GET],produces=[application/json]}" ont Mapped "{[/configprops || /configprops.json],methods=[GET],produces=[application Mapped "{[/autoconfig || /autoconfig.json],methods=[GET],produces=[application/j Mapped "{[/info || /info.json],methods=[GET],produces=[application/json]}" onto Mapped "{[/dump || /dump.json],methods=[GET],produces=[application/json]}" onto Mapped "{[/mappings || /mappings.json],methods=[GET],produces=[application/json] Mapped "{[/health || /health.json],produces=[application/json]}" onto public jav Mapped "{[/beans || /beans.json],methods=[GET],produces=[application/json]}" ont Mapped "{[/env/{name:.*}],methods=[GET],produces=[application/json]}" onto publi Mapped "{[/env || /env.json],methods=[GET],produces=[application/json]}" onto pu 

- actuator 的端點分為3類

  1. 應用配置類

/configprops /autoconfig /beans /env /info /mappings

  1. 度量指標類

/dump /health

  1. 操作控制類
  • 下面找幾個來解釋

    • /autoconfig

自動化配置報告,可以看出一些自動化配置為什么沒有生效


image.png
  • /beans

可以看到定義的所有的bean


image.png
  • /configprops

可以看到application.properties里面的信息


image.png
  • /env
image.png
  • /mappings
image.png
  • /info

返回application.properties文件中info開頭的配置信息,如:

# /info端點信息配置
info.app.name=spring-boot-hello
info.app.version=v1.0.0
image.png

下面是度量指標類

  • /metrics

image.png

我們也可以自定實現 CounterService 接口來實現count指標.
image.png

也可以用 [/metrics/{name:.*}] 如: /metrics/mem.free 來獲取單個指標信息
image.png

  • /health

可以通過實現 HealthIndicator 接口來實現健康檢查,返回值的狀態信息在org.springframework.boot.actuate.health.Status

image.png

image.png

  • /dump

調用 java.lang.management.ThreadMXBean
public ThreadInfo[] dumpAllThreads(boolean lockedMonitors, boolean lockedSynchronizers); 方法來返回活動線程的信息

image.png

image.png

  • 操作控制類

如:/shutdown ,通過在application.properties文件中添加
endpoints.shutdown.enabled=true
來開啟

image.png

貌似上面命令直接把應用關了......

      </div>
    </div>
posted @ 2019-05-09 16:51  星朝  閱讀( 1861)  評論( 0編輯  收藏


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM