什么是 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上部署.net core

    项目目标部署环境:CentOS 7+ 项目技术点:.netcore2.0 + Autofac +webAPI + NHibernate5.1 + mysql5.6 + nginx 开源地址:https ...

  2. Spark学习之路(六)—— 累加器与广播变量

    一.简介 在Spark中,提供了两种类型的共享变量:累加器(accumulator)与广播变量(broadcast variable): 累加器:用来对信息进行聚合,主要用于累计计数等场景: 广播变量 ...

  3. 对于BIO/NIO/AIO,你还只停留在烧开水的水平吗?

    1.发发牢骚 相信大家在网上看过不少讲解 BIO/NIO/AIO 的文章,文章中举起栗子来更是夯吃夯吃一大堆,我是越看越觉得 What are you 你讲啥嘞? 本文将针对 BIO/NIO/AIO ...

  4. 简单的python多线程实例

    今天抽时间又学了一下python的多线程,理解的又多了一些,为了利于理解,写了一段很简单的代码,如下: import threading from time import sleep def task ...

  5. 使用 cxf的程序 在win10 测试部署时报空指针异常

    2018-11-08 15:50:55.072 DEBUG 21524 --- [nio-8080-exec-1] o.s.b.w.s.f.OrderedRequestContextFilter  : ...

  6. 大白话5分钟带你走进人工智能-第31节集成学习之最通俗理解GBDT原理和过程

    目录 1.前述 2.向量空间的梯度下降: 3.函数空间的梯度下降: 4.梯度下降的流程: 5.在向量空间的梯度下降和在函数空间的梯度下降有什么区别呢? 6.我们看下GBDT的流程图解: 7.我们看一个 ...

  7. Python之Pandas库学习(一):简介

    官方文档 1. 安装Pandas windos下cmd:pip install pandas 导入pandas包:import pandas as pd 2. Series对象 带索引的一维数组 创建 ...

  8. 蓝桥杯:最大的算式(爆搜 || DP)

    http://lx.lanqiao.cn/problem.page?gpid=T294 题意:中文题意. 思路:1.一开始想的是,乘号就相当于隔板,把隔板插入到序列当中,同一个隔板的就是使用加法运算, ...

  9. C++中 =default,=delete用法

    =default: 用于显式要求编译器提供合成版本的四大函数(构造.拷贝.析构.赋值) 例如: class A{ public: A() = default; A(const A& a) = ...

  10. 如何正确使用Profibus插头以及终端电阻

    插头与终端电阻在Profibus通讯中有着非常重要的作用,它们使用起来非常简单,没有很多复杂的设置:但是正是由于使用简单,使得很多工程师在使用当中忽略了一些细节,导致很多通讯问题. 1 Profibu ...