用SpringBoot Admin监控SpringBoot程序

 更新时间:2020年10月24日 15:21:09   作者:空夜  
这篇文章主要介绍了用SpringBoot Admin监控SpringBoot程序,帮助大家更好的理解和使用springboot框架,感兴趣的朋友可以了解下

项目源码地址:https://github.com/laolunsi/spring-boot-examples/tree/master/02-spring-boot-admin-demo

一、SpringBoot Admin概要

SpringBoot Admin用于监控SpringBoot程序,一个SpringBoot程序通过向SpringBoot Admin Server注册或使用@DiscoveryClient等微服务方式,可以将自身注册到SpringBoot Admin Server。

SpringBoot Admin UI是一个基于SpringBoot Actuator endpoints上的Vue.js应用。

我们可以先预览一下效果图:

下面我们来基于SpringBoot创建监控程序和示例:

二、第一个Spring Boot Admin Server与Client

2.1 创建Admin Server

采用SpringBoot 2.1.8.RELEAE和SpringBoot Admin 2.1.5

   <properties>
    <java.version>1.8</java.version>
    <spring-boot-admin.version>2.1.5</spring-boot-admin.version>
  </properties>

  <dependencies>
    <dependency>
      <groupId>de.codecentric</groupId>
      <artifactId>spring-boot-admin-starter-server</artifactId>
    </dependency>

    <dependency>
      <groupId>de.codecentric</groupId>
      <artifactId>spring-boot-admin-starter-client</artifactId>
    </dependency>
  </dependencies>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>de.codecentric</groupId>
        <artifactId>spring-boot-admin-dependencies</artifactId>
        <version>${spring-boot-admin.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

application类启用AdminServer:

@SpringBootApplication
@EnableAdminServer
public class AdminServerApplication {

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

}

配置:

server:
 port: 9333
spring:
 application:
  name: admin-server
 boot:
  admin:
   client:
     enabled: true
    url: http://localhost:${server.port} # 将自身注册到admin-server

2.2 创建SpringBoot应用并注册到Admin Server

SpringBoot应用注册到Admin Server有两种方式:

  1. 引入admin-client依赖,启用admin client并配置admin-server的地址即可
  2. 微服务环境,使用@EnableDiscoveryClient或其他类似注解

这里演示第一种方法:

依赖:

SpringBoot 2.1.8.RELEASE和SpringBoot Admin 2.1.5

  <properties>
    <java.version>1.8</java.version>
    <spring-boot-admin.version>2.1.5</spring-boot-admin.version>
  </properties>

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

    <dependency>
      <groupId>de.codecentric</groupId>
      <artifactId>spring-boot-admin-starter-client</artifactId>
    </dependency>
  </dependencies>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>de.codecentric</groupId>
        <artifactId>spring-boot-admin-dependencies</artifactId>
        <version>${spring-boot-admin.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

配置:

server:
 port: 9334
spring:
 application:
  name: client-demo
 boot:
  admin:
   client:
     enabled: true
    url: http://localhost:9333
# 这里加一个暴露所有应用信息的配置
management:
 endpoints:
  web:
   exposure:
    include: '*'

这个应用不需要修改Application类,默认的就行。

2.3 启动和测试SpringBoot Admin

启动这两个应用,打开浏览器,输入admin-server的地址:http://localhost:9333

默认会进入上面的application页面,我们可以看到admin-server和client-demo两个SpringBoot已经注册到admin-server的监控中了。

打开wallboard页面:

点开journal,可以看到这些应用的记录:

点开application中client-demo应用,可以看到这个应用的面板:

在这里我们可以看到当前服务器、当前应用的详细信息。

到此为止,我们介绍了如何利用SpringBoot Admin来管理SpringBoot应用,下一篇我们将继续了解,如何在SpringCloud的微服务体系中,利用SpringBoot Admin来监控微服务。

以上就是用SpringBoot Admin监控SpringBoot程序的详细内容,更多关于SpringBoot Admin监控的资料请关注脚本之家其它相关文章!

相关文章

  • Spring Cloud Ubuntu环境部署的步骤与注意事项

    Spring Cloud Ubuntu环境部署的步骤与注意事项

    这篇文章主要给大家介绍了关于Spring Cloud Ubuntu环境部署的步骤与注意事项,文中通过示例代码介绍的非常详细,对大家学习或者使用Spring Cloud具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-12-12
  • 处理java异步事件的阻塞和非阻塞方法分析

    处理java异步事件的阻塞和非阻塞方法分析

    这篇文章主要介绍了处理java异步事件的阻塞和非阻塞方法分析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,阻塞与非阻塞关注的是交互双方是否可以弹性工作。,需要的朋友可以参考下
    2019-06-06
  • Java中关于int和Integer的区别详解

    Java中关于int和Integer的区别详解

    本篇文章小编为大家介绍,在Java中 关于int和Integer的区别详解,需要的朋友参考下
    2013-04-04
  • Java日期时间及日期相互转换实现代码

    Java日期时间及日期相互转换实现代码

    这篇文章主要介绍了Java日期时间及日期相互转换实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • svn 清理失败 (cleanup 失败) 的快速解决方法

    svn 清理失败 (cleanup 失败) 的快速解决方法

    下面小编就为大家带来一篇svn 清理失败 (cleanup 失败) 的快速解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • Java 数组交集的实现代码

    Java 数组交集的实现代码

    这篇文章主要介绍了Java 数组交集的实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • JAVA递归生成树形菜单的实现过程

    JAVA递归生成树形菜单的实现过程

    这篇文章主要介绍了JAVA递归生成树形菜单,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01
  • Java多线程同步工具类CyclicBarrier的使用

    Java多线程同步工具类CyclicBarrier的使用

    本文主要介绍了Java多线程同步工具类CyclicBarrier的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • SpringCloud集成Nacos的使用小结

    SpringCloud集成Nacos的使用小结

    这篇文章主要介绍了SpringCloud集成Nacos的使用小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • java 多态性详解及常见面试题

    java 多态性详解及常见面试题

    这篇文章主要介绍了java 多态性详解及常见面试题的相关资料,这里对java 的多态性做了资料整理,并列举常见的关于多态性的面试题,需要的朋友可以参考下
    2016-11-11

最新评论