日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Boot Admin –用于管理Spring Boot应用程序的Admin UI

發布時間:2023/12/3 javascript 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Boot Admin –用于管理Spring Boot应用程序的Admin UI 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作為微服務開發的一部分,我們許多人都將Spring Boot與Spring Cloud功能一起使用。 在微服務領域,我們將有許多Spring Boot應用程序將在相同/不同的主機上運行。 如果將Spring Actuator添加到Spring Boot應用程序中,我們將獲得很多現成的端點來監視和與Spring Boot應用程序交互。 列表如下。

ID 描述 敏感違約
actuator 為其他端點提供基于超媒體的“發現頁面”。 要求Spring HATEOAS位于類路徑上。 真正
auditevents 公開當前應用程序的審核事件信息。 真正
autoconfig 顯示自動配置報告,該報告顯示所有自動配置候選者以及應用它們“被”或“未被”的原因。 真正
beans 顯示應用程序中所有Spring Bean的完整列表。 真正
configprops 顯示所有@ConfigurationProperties的整理列表。 真正
dump 執行線程轉儲。 真正
env 從Spring的ConfigurableEnvironment公開屬性。 真正
flyway 顯示已應用的所有Flyway數據庫遷移。 真正
health 顯示應用程序的運行狀況信息(當應用程序是安全的時,通過未經身份驗證的連接訪問時為簡單的“狀態”,而通過身份驗證時則為完整的消息詳細信息)。
info 顯示任意應用程序信息。
loggers 顯示和修改應用程序中記錄器的配置。 真正
liquibase 顯示已應用的所有Liquibase數據庫遷移。 真正
metrics 顯示當前應用程序的“指標”信息。 真正
mappings 顯示所有@RequestMapping路徑的整理列表。 真正
shutdown 允許正常關閉應用程序(默認情況下未啟用)。 真正
trace 顯示跟蹤信息(默認情況下,最近的100個HTTP請求)。 真正

上面的端點提供了許多有關Spring Boot應用程序的見解。 但是,如果您有許多正在運行的應用程序,則通過命中終點并檢查JSON響應來監視每個應用程序是一個繁瑣的過程。 為了避免這種麻煩,Code Centric團隊提出了Spring Boot Admin模塊,它將為我們提供Admin UI Dash板來管理Spring Boot應用程序。 該模塊處理來自執行器端點的數據,并提供有關單個儀表板上所有已注冊應用程序的見解。 現在,我們將在以下各節中演示Spring Boot Admin功能。

第一步,創建一個Spring Boot應用程序,通過添加以下maven依賴項將其作為Spring Boot Admin服務器模塊進行制作。

<dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-server</artifactId><version>1.5.1</version> </dependency> <dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-server-ui</artifactId><version>1.5.1</version> </dependency>

通過將@EnableAdminServer添加到您的配置中來添加Spring Boot Admin Server配置。

package org.samrttechie;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Configuration; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;import de.codecentric.boot.admin.config.EnableAdminServer;@EnableAdminServer @Configuration @SpringBootApplication public class SpringBootAdminApplication {public static void main(String[] args) {SpringApplication.run(SpringBootAdminApplication.class, args);}@Configurationpublic static class SecurityConfig extends WebSecurityConfigurerAdapter {@Overrideprotected void configure(HttpSecurity http) throws Exception {// Page with login form is served as /login.html and does a POST on /loginhttp.formLogin().loginPage("/login.html").loginProcessingUrl("/login").permitAll// The UI does a POST on /logout on logouthttp.logout().logoutUrl("/logout");// The ui currently doesn't support csrfhttp.csrf().disable();// Requests for the login page and the static assets are allowedhttp.authorizeRequests().antMatchers("/login.html", "/**/*.css", "/img/**", "/third-party/**").permitAll();// ... and any other request needs to be authorizedhttp.authorizeRequests().antMatchers("/**").authenticated();// Enable so that the clients can authenticate via HTTP basic for registeringhttp.httpBasic();}}// end::configuration-spring-security[]}

讓我們創建更多的Spring Boot應用程序,以通過上述步驟中創建的Spring Boot Admin服務器進行監視。 現在將創建的所有Spring Boot應用程序將充當Spring Boot Admin客戶端。 要將應用程序作為Admin客戶端,請添加以下依賴項以及執行器依賴項。 在此演示中,我創建了三個應用程序,例如Eureka Server,客戶服務和訂單服務。

<dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-starter-client</artifactId><version>1.5.1</version> </dependency> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId> </dependency>

將以下屬性添加到application.properties文件。 這個屬性告訴Spring Boot Admin服務器在哪里運行。 因此,客戶端將向服務器注冊。

spring.boot.admin.url=http://localhost:1111

現在,如果我們啟動Admin Server和其他Spring Boot應用程序,則可以在Admin Server儀表板中查看所有admin客戶端信息。 在此示例中,當我們在1111端口上啟動管理服務器時,我們可以在http://:// <host_name>:1111上看到儀表板。 以下是Admin Server用戶界面的屏幕截圖。

下面給出了應用程序的詳細視圖。 在此視圖中,我們可以看到日志文件的尾部,指標,環境變量,日志配置,我們可以在其中動態切換組件級別,根級別或程序包級別的日志級別以及其他信息。

現在,我們將看到另一個名為Spring Boot Admin的通知功能。 當應用程序狀態為DOWN或應用程序狀態為UP時,這將通知管理員。 Spring Boot管理員支持以下渠道通知用戶。

  • 郵件通知
  • 尋呼機通知
  • Hipchat通知
  • 松弛通知
  • 讓我們聊天通知

在本文中,我們將配置Slack通知。 將以下屬性添加到Spring Boot Admin Server的application.properties文件中。

spring.boot.admin.notify.slack.webhook-url=https://hooks.slack.com/services/T8787879tttr/B5UM0989988L/0000990999VD1hVt7Go1eL //Slack Webhook URL of a channel spring.boot.admin.notify.slack.message="*#{application.names *#{to.status}*" //Message to appear in the channel

使用Spring Boot Admin,我們可以管理所有應用程序。 因此,我們需要使用登錄功能來保護Spring Boot Admin UI。 讓我們啟用到Spring Boot Admin服務器的登錄功能。 在這里,我將進行基本身份驗證。 將以下maven依賴項添加到Admin Server模塊。

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId> </dependency> <dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-server-ui-login</artifactId><version>1.5.1</version> </dependency>

將以下屬性添加到application.properties文件。

security.user.name=admin //user name to authenticate security.user.password=admin123 //Password to authenticate

隨著我們向Admin Server添加安全性,Admin客戶端應該能夠通過身份驗證連接到服務器。 因此,將以下屬性添加到Admin客戶端的application.properties文件。

spring.boot.admin.username=admin spring.boot.admin.password=admin123

還有一些其他UI功能,例如Hystrix,Turbine UI,我們可以在儀表板上啟用它們。 您可以在此處找到更多詳細信息。 Github上提供了為該演示創建的示例代碼。

翻譯自: https://www.javacodegeeks.com/2017/06/spring-boot-admin-admin-ui-administration-spring-boot-applications.html

總結

以上是生活随笔為你收集整理的Spring Boot Admin –用于管理Spring Boot应用程序的Admin UI的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。