<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                [TOC] ## 什么是Spring Boot Admin? >Spring Boot Admin 是一個管理和監控Spring Boot 應用程序的開源軟件。每個應用都認為是一個客戶端,通過HTTP或者使用 Eureka注冊到admin server中進行展示,Spring Boot Admin UI部分使用AngularJs將數據展示在前端。 Spring Boot Admin 是一個針對spring-boot的actuator接口進行UI美化封裝的監控工具。他可以:在列表中瀏覽所有被監控spring-boot項目的基本信息,詳細的Health信息、內存信息、JVM信息、垃圾回收信息、各種配置信息(比如數據源、緩存列表和命中率)等,還可以直接修改logger的level。 這篇文章給大家介紹如何使用Spring Boot Admin對Spring Boot應用進行監控。 參考: ![](https://box.kancloud.cn/f609438ffac4102f1df0d60628ca7e5c_1804x701.png) ## Actuator 監控 Spring Boot 自帶了 Actuator 監控功能,主要用于提供對應用程序監控,以及控制的能力,比如監控應用程序的運行狀況,或者內存、線程池、Http 請求統計等,同時還提供了關閉應用程序等功能。 Actuator 提供了 19 個接口,接口請求地址和代表含義如下表所示: | 訪問路徑 | 描述 | | --- | --- | |/auditevents| 顯示應用暴露的審計事件(比如認證進入)| |/beans| 顯示應用程序中所有 Spring Bean 的完整列表| |/caches |公開可用的緩存| |/conditions |顯示在配置和自動配置類上評估的條件以及它們匹配或不匹配的原因| |/configprops |顯示所有 @ConfigurationPropertie 的整理列表| |/env |獲取全部環境屬性| |/flyway| 提供一份 Flyway 數據庫遷移信息| |/health| 顯示應用程序運行狀況信息| |/httptrace |顯示 HTTP 跟蹤信息(默認情況下,最近 100 個 HTTP 請求-響應交換) |/info |獲取應用程序的定制信息,這些信息由 info 開頭的屬性提供| |/integrationgraph |顯示 Spring Integration 圖,需要依賴于 spring-integration-core| |/loggers| 顯示和修改應用程序的配置| |/liquibase| 顯示已應用的所有 Liquibase 數據庫遷移| |/metrics/{name} |報告指定名稱的應用程序度量值| |/mappings |顯示所有 @RequestMapping 路徑的列表| |/scheduledtasks| 顯示應用程序中的計劃任務| |/sessions |允許從 Spring Session 支持的會話存儲中檢索和刪除用戶會話,需要使用 Spring Session 基于 Servlet 的 Web 應用程序| |/shutdown |使應用程序正常關閉,默認禁用| |/threaddump |獲取線程活動的快照| ## 監控單體應用 >這節給大家展示如何使用Spring Boot Admin監控單個Spring Boot應用。 ### Admin Server端 ``` <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-server</artifactId> <version>2.0.1</version> </dependency> ``` 配置文件 ~~~ server.port=9001 ~~~ 服務端設置端口為:9001。 啟動類 ~~~ package com.open.capacity; import de.codecentric.boot.admin.server.config.EnableAdminServer; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; /** * @author 作者 owen E-mail: 624191343@qq.com * @version 創建時間:2017年12月8日 上午9:03:32 * 類說明 */ @EnableAdminServer @EnableDiscoveryClient @SpringBootApplication public class MonitorApp { public static void main(String[] args) { SpringApplication.run(MonitorApp.class, args); } } ~~~ 完成上面三步之后,啟動服務端,瀏覽器訪問`http://localhost:9001`可以看到以下界面: ![](https://box.kancloud.cn/cd9f00eeb004096a8d1d26bd7374540b_1201x281.png) ### Admin Client端 項目依賴 ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> ``` >Spring Boot Actuator可以幫助你監控和管理Spring Boot應用,比如健康檢查、審計、統計和HTTP追蹤等。所有的這些特性可以通過JMX或者HTTP endpoints來獲得。 Actuator同時還可以與外部應用監控系統整合,比如[Prometheus](https://prometheus.io/),[Graphite](https://graphiteapp.org/),[DataDog](https://www.datadoghq.com/),[Influx](https://www.influxdata.com/),[Wavefront](https://www.wavefront.com/),[New Relic](https://newrelic.com/)等。這些系統提供了非常好的儀表盤、圖標、分析和告警等功能,使得你可以通過統一的接口輕松的監控和管理你的應用。 Actuator使用[Micrometer](http://micrometer.io/)來整合上面提到的外部應用監控系統。這使得只要通過非常小的配置就可以集成任何應用監控系統。 啟動客戶端后 ![](https://box.kancloud.cn/c50736f0b76cffdb78e878d8f8199446_1883x858.png) ### 郵件告警 配置告警郵箱 ![](https://box.kancloud.cn/a71d63e249cb5da6d9b9da626b07d3b3_1768x573.png) >Spring Boot Admin將微服務中所有應用信息在后臺進行了展示,非常方便我們對微服務整體的監控和治理。但是我們的運營人員也不可能一天24小時盯著監控后臺,因此如果服務有異常的時候,有對應的郵件告警就太好了,其實Spring Boot Admin也給出了支持。 我們對上面的示例項目spring-boot-admin-server進行改造。 添加依賴 ~~~ <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> ~~~ 增加了郵件發送的starter包 配置文件 ~~~ spring: application: name: admin-server boot: admin: notify: mail: enabled: true to: xxxxxxxxxxx from: xxxxxxxxxxx # ignore-changes: UNKNOWN:UP ignore-changes: - "*:UP" #從任何狀態到up狀態都不要發郵件通知 routes: endpoints: env,metrics,dump,jolokia,info,configprops,trace,logfile,refresh,flyway,liquibase,heapdump,loggers,auditevents,hystrix.stream turbine: clusters: default #,unieap-eureka-server-single location: turbine mail: host: smtp.163.com username: xxxxxxxxxxx password: xxxxxxxxxxx properties: mail.smtp.auth : true mail.smtp.timeout : 2000 mail.smtp.starttls.enable : true mail.smtp.starttls.required : true ~~~ >在配置文件中添加郵件發送相關信息:郵件的發送者、接受者、協議、移動授權碼等。 配置完成后,重新啟動項目admin-server,這樣Admin Server就具備了郵件告警的功能。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看