1. 程式人生 > >Spring Boot2.0之Admin-UI分散式微服務監控中心

Spring Boot2.0之Admin-UI分散式微服務監控中心

前面https://www.cnblogs.com/toov5/p/9823353.html  說的很不好用哈哈 還需要json格式化

我們可以用Admin-UI 比較爽歪歪

原理:

將所有服務的監控中心管理存放在admin ui平臺上

 

        

 

          JSON資料放到註冊中心去,用於展示。

 

 下面我們建立如圖所示的這個監控server端

建立maven工程 pom依賴

<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.0.RELEASE</version>
	</parent>
	<dependencies>
		<dependency>
			<groupId>de.codecentric</groupId>
			<artifactId>spring-boot-admin-starter-server</artifactId>
			<version>2.0.0</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-webflux</artifactId>
		</dependency>
		<!-- Spring Boot Actuator對外暴露應用的監控資訊,Jolokia提供使用HTTP介面獲取JSON格式 的資料 -->
		<dependency>
			<groupId>org.jolokia</groupId>
			<artifactId>jolokia-core</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>
		<dependency>
			<groupId>com.googlecode.json-simple</groupId>
			<artifactId>json-simple</artifactId>
			<version>1.1</version>
		</dependency>
	</dependencies>

  注意這裡的web元件被替代了

 

 然後啟動檔案:

package com.toov5.adminUiServer;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.Configuration;

import de.codecentric.boot.admin.server.config.EnableAdminServer;

@Configuration
@EnableAutoConfiguration
@EnableAdminServer
public class AdminServerApplication { public static void main(String[] args) { SpringApplication.run(AdminServerApplication.class, args); } }
@Configuration 類似於建立bean

 一定要在專案中:@EnableAdminServer 啟動!!!!

 
application.yml配置檔案:
然後給這個專案服務起名字
spring:
  application:
    name: spring-boot-admin-server

  

專案陸目錄結構:

 

啟動,訪問:

等待被註冊過來~

對了在寫這個教程時候遇到了個jar包 maven下載不下來 看到了有些jar包是下載不下來的的確

 


下面吧client端註冊到上面的server端

首先依賴的jar包pom檔案

<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.0.RELEASE</version>
	</parent>
	<dependencies>
		<dependency>
			<groupId>de.codecentric</groupId>
			<artifactId>spring-boot-admin-starter-client</artifactId>
			<version>2.0.0</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>
		<dependency>
			<groupId>org.jolokia</groupId>
			<artifactId>jolokia-core</artifactId>
		</dependency>
		<dependency>
			<groupId>com.googlecode.json-simple</groupId>
			<artifactId>json-simple</artifactId>
			<version>1.1</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
	</dependencies>

  

yum配置檔案:
spring:
  boot:
    admin:
      client:
        url: http://localhost:8080
server:
  port: 8081
  
management:
  endpoints:
    web:
      exposure:
        include: "*"
  endpoint:
    health:
      show-details: ALWAYS

啟動類:

package com.toov5.adminUiClient;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class AppClinet {

    public static void main(String[] args) {
        SpringApplication.run(AppClinet.class, args);
    }

}

目錄結構:

 



先啟動server 然後 啟動client

PS:jar包 maven下載不下來 看到了有些jar包是下載不下來的的確

小夥伴們自己點點 都有的各種資訊 好好玩吧~~