nisbos


Spring Boot Admin

<h1>概述</h1> <h3>Spring Boot Actuator</h3> <pre><code>Actuator是Spring Boot的模块,它在应用中添加了REST/JMS端点,方便监控和管理应用。端点提供了健康检查、指标监控、访问日志、线程转储、堆转储和环境信息等等。</code></pre> <p>Actuator 提供了 13 个接口,具体如下表所示。</p> <p><img src="https://www.showdoc.cc/server/api/common/visitfile/sign/a443fe147baaba27d09ddf5e83085efe?showdoc=.jpg" alt="" /></p> <h3>Spring Boot Actuator 与 Spring Boot Admin</h3> <pre><code> Actuator功能强大,便于其他应用使用端点(只需要简单的REST调用)。但是开发人员使用时就没那么方便了。对于开发人员,有良好的交互界面会更方便浏览监控数据和管理应用。这正是Spring Boot Admin做的工作。它为actuator端点提供了良好的交互界面,并提供了额外的特性。 Spring Boot Admin 是一个针对spring-boot的actuator接口进行UI美化封装的监控工具。他可以返回在列表中浏览所有被监控spring-boot项目的基本信息比如:Spring容器管理的所有的bean、详细的Health信息、内存信息、JVM信息、垃圾回收信息、各种配置信息(比如数据源、缓存列表和命中率)等,Threads 线程管理,Environment 管理等。</code></pre> <h3>Spring Boot Admin</h3> <pre><code> Spring Boot Admin 是一个管理和监控 Spring Boot 应用程序的开源软件。每个应用都认为是一个客户端,通过 HTTP 或者使用 Eureka 注册到 admin server 中进行展示,Spring Boot Admin UI 部分使用 VueJs 将数据展示在前端。 Spring Boot Admin不是Spring团队提供的模块,它是由Codecentric公司创建的,代码在Github上公开。</code></pre> <p><br></p> <h1>环境安装</h1> <h3>监控方(参照nisbos-springboot-admin)</h3> <h4>a.引入maven依赖</h4> <pre><code> &lt;!-- spring cloud --&gt; &lt;dependency&gt; &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt; &lt;artifactId&gt;spring-cloud-starter-netflix-eureka-client&lt;/artifactId&gt; &lt;/dependency&gt; &lt;!-- spring boot admin --&gt; &lt;dependency&gt; &lt;groupId&gt;de.codecentric&lt;/groupId&gt; &lt;artifactId&gt;spring-boot-admin-starter-server&lt;/artifactId&gt; &lt;version&gt;2.2.3&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt; &lt;artifactId&gt;spring-boot-starter-security&lt;/artifactId&gt; &lt;/dependency&gt; &lt;!-- 不强制依赖,spring boot admin 查看类等操作的时候会用到--&gt; &lt;dependency&gt; &lt;groupId&gt;org.jolokia&lt;/groupId&gt; &lt;artifactId&gt;jolokia-core&lt;/artifactId&gt; &lt;/dependency&gt;</code></pre> <h4>b.启动类</h4> <pre><code>打上注解:@EnableAdminServer 新增安全校验相关:SecurityPermitAllConfig、SecuritySecureConfig</code></pre> <h4>c.application.yml</h4> <pre><code>spring: security: #登录账户密码 user: name: "nisbos" password: "nisbos" eureka: client: service-url: defaultZone: http://nisbos:nisbos@localhost:1111/eureka/ 注意被监控方服务连接的eureka地址和这边的eureka地址要一致</code></pre> <h3>被监控方</h3> <h4>a.application.yml</h4> <pre><code>#放开权限,可以被spring boot admin监控到 management: endpoints: web: exposure: include: '*' endpoint: health: show-details: ALWAYS</code></pre> <p><br></p> <h1>场景预览</h1> <p><img src="https://www.showdoc.cc/server/api/common/visitfile/sign/9c282b6e22e20fe75f7dc4271dcd6ec6?showdoc=.jpg" alt="" /></p> <pre><code>通过上图可以看到,Spring Boot Admin可以通过可视化界面监控到被监控方的内存,垃圾回收的信息</code></pre> <p><br></p> <h1>快速入门</h1> <h3>启动本地服务,监控nisbos-feign-provider项目为例</h3> <h5>a.启动服务</h5> <pre><code>启动nisbos-feign-provider项目 启动nisbos-springboot-admin项目</code></pre> <h5>b.查看nisbos-feign-provider项目JVM相关信息</h5> <p><img src="https://www.showdoc.cc/server/api/common/visitfile/sign/27497fb9b07e58a95a96216e75bf77c3?showdoc=.jpg" alt="" /></p>

页面列表

ITEM_HTML