你心心念念想得到的人,也许正是别人已经玩腻了的人!!!所以,我们现在正在想学习的东西,正是人家已经玩了很久已经很腻的人了~~~所以现在立刻马上开始

Spring Boot Admin  是个什么东东?为什么要用他?

Spring Boot Admin简介:

Spring Boot Admin 是一个管理和监控Spring Boot 应用程序的开源软件。每个应用都认为是一个客户端,通过HTTP或者使用 Eureka注册到admin server中进行展示,Spring Boot Admin UI部分使用AngularJs将数据展示在前端。

Spring Boot Admin 是一个针对spring-boot的actuator接口进行UI美化封装的监控工具。他可以:在列表中浏览所有被监控spring-boot项目的基本信息,详细的Health信息、内存信息、JVM信息、垃圾回收信息、各种配置信息(比如数据源、缓存列表和命中率)等,还可以直接修改logger的level。

这篇文章给大家介绍如何使用Spring Boot Admin对Spring Boot应用进行监控。

Admin Server:  pom文件引入admin-server、admin-server-ui

 <dependencies><!--         <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-eureka</artifactId></dependency> --><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></dependencies>

配置文件:

server.port=8070

服务启动类:

package com.inspire.efficacy.admin;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;import de.codecentric.boot.admin.config.EnableAdminServer;@SpringBootApplication
@EnableAdminServer
public class SpringBootAdminApp {public static void main(String[] args) {SpringApplication.run(SpringBootAdminApp.class, args);}
}

服务启动,浏览器访问:http://10.2.8.42:8070/

Admin Client:

配置文件信息:

spring.boot.admin.url=http://10.2.8.42:8070
management.security.enabled=false

pom文件依赖关系:

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

启动类:

package com.inspire.efficacy.basicdata;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.transaction.annotation.EnableTransactionManagement;@EnableDiscoveryClient
@SpringBootApplication
@EnableTransactionManagement
public class EfficiencyBasicdataApp {public static void main(String[] args) {SpringApplication.run(EfficiencyBasicdataApp.class, args);}
}

配置完成之后,启动Client端服务,再次访问服务:http://10.2.8.42:8070  可以看到客户端的相关信息:

首页会展示被监控的各个服务,点击详情可以查看某个服务的具体监控信息

通过上图可以看出,Spring Boot Admin以图形化的形式展示了应用的各项信息,这些信息大多都来自于Spring Boot Actuator提供的接口。

===================至此,spring boot admin就全部配置完成了=====================================

把项目放到linux服务器上后,就完全不好使了。

服务器是A、B两台,A主要放admin server   B主要放admin client,问题出现在 admin server上注册的admin client

显示http://localhost:2100  所有的服务都是offline ,查询资料是因为注入监控中心是根据hosts里面的名称来找的,所有

vim /etc/hosts改掉对应关系就可以了。

============================================================================================

接下来我们给监控中心加登录页,避免裸奔,以及生产环境避免所有人都可以登录

首先pom文件增加

     <dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-server-ui-login</artifactId><version>1.5.6</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId><version>1.4.5.RELEASE</version></dependency>

增加配置信息:

package com.inspire.efficacy.admin.config;import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.builders.WebSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(securedEnabled = true, prePostEnabled = true, proxyTargetClass = true)
public class SecuritySecureConfig extends WebSecurityConfigurerAdapter {private static Logger logger = LoggerFactory.getLogger(SecuritySecureConfig.class);@Overridepublic void configure(WebSecurity web) throws Exception {//忽略css.jq.img等文件web.ignoring().antMatchers("/**.html","/**.css", "/img/**", "/**.js","/third-party/**");}@Overrideprotected void configure(HttpSecurity http) throws Exception {     logger.info("configure method has been invoked start...");http.csrf().disable() //HTTP with Disable CSRF.authorizeRequests() //Authorize Request Configuration.antMatchers( "/login","/api/**","/**/heapdump","/**/loggers","/**/liquibase","/**/logfile","/**/flyway","/**/auditevents","/**/jolokia").permitAll() //放开"/api/**":为了给被监控端免登录注册并解决Log与Logger冲突.and().authorizeRequests().antMatchers("/**").hasRole("USER").antMatchers("/**").authenticated().and() //Login Form configuration for all others.formLogin().loginPage("/login.html").loginProcessingUrl("/login").permitAll().defaultSuccessUrl("/").and() //Logout Form configuration.logout().deleteCookies("remove").logoutSuccessUrl("/login.html").permitAll().and().httpBasic();logger.info("configure method has been invoked end...");}}

application.properties文件中:

server.port=8070
spring.application.name=Spring Boot Admin Web
spring.boot.admin.url=http://localhost:${server.port}
#\u8BA9\u63A7\u5236\u5668\u8F93\u51FA\u7684json\u683C\u5F0F\u66F4\u7F8E\u89C2
spring.jackson.serialization.indent-output=true
#\u5141\u8BB8\u533F\u540D\u7528\u6237\u5B8C\u5168\u8BBF\u95EEhealth\u7AEF\u70B9
endpoints.health.sensitive=false
#spring boot default user.name='user'
security.user.name=admin
#spring boot dafault user.password \u9879\u76EE\u542F\u52A8\u65F6\u6253\u5370\u5728\u63A7\u5236\u53F0
security.user.password=admin
security.basic.enabled=false
management.security.enabled=false

所有的配置都加上后,访问localhost:8070   可以完全访问登录页:

Spring Boot Admin监控中心详细讲解相关推荐

  1. Spring Boot Admin:微服务应用监控

    摘要 Spring Boot Admin 可以对SpringBoot应用的各项指标进行监控,可以作为微服务架构中的监控中心来使用,本文将对其用法进行详细介绍. Spring Boot Admin 简介 ...

  2. Spring Boot Admin的使用

    文章目录 配置Admin Server 配置admin client 配置安全主键 Hazelcast集群 Spring Boot Admin的使用 前面的文章我们讲了Spring Boot的Actu ...

  3. 《深入理解 Spring Cloud 与微服务构建》第十五章 微服务监控 Spring Boot Admin

    <深入理解 Spring Cloud 与微服务构建>第十五章 微服务监控 Spring Boot Admin 文章目录 <深入理解 Spring Cloud 与微服务构建>第十 ...

  4. 五分钟学会 Spring Boot Admin:微服务应用监控(小白必看,一看就会教程)

    Spring Boot Admin:微服务应用监控 Spring Boot Admin 简介 监控信息演示 结合注册中心使用 功能演示 添加登录认证 文末福利 Spring Boot Admin 可以 ...

  5. Spring Boot Admin 2.1.0 全攻略

    点击上方"方志朋",选择"置顶或者星标" 你的关注意义重大! Spring Boot Admin是一个开源社区项目,用于管理和监控SpringBoot应用程序. ...

  6. Spring Boot Admin –用于管理Spring Boot应用程序的Admin UI

    作为微服务开发的一部分,我们许多人都将Spring Boot与Spring Cloud功能一起使用. 在微服务领域,我们将有许多Spring Boot应用程序将在相同/不同的主机上运行. 如果将Spr ...

  7. MOSS 代替Spring Boot Admin 的服务治理工具

    1.1 什么是服务治理 服务治理,我也称之为微服务治理,是指用来管理微服务的整个生命周期.包括应用的创建,服务名的规范,服务的上下线,服务的迁移,整个服务的生老病死等方方面面的治理. 1.2 Moss ...

  8. Spring Boot Admin工程搭建(Eureka)

    其实网上有很多资料都说得很详细,但有时按照他们的例子去做了,就会出现各种各种的问题,归其原因,是因为版本的问题,所以我来贴一下完整的示例. 先来看看pom文件 <?xml version=&qu ...

  9. SpringBoot实战(十三):Spring Boot Admin 动态修改日志级别

    强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan [前言] 之前关于线上输出日志一直有个困惑:如何可以动态调整的日志级别,来保证系统在正常运行时性 ...

最新文章

  1. 分布式消息队列Kafka集群安装
  2. QT的QDesignerContainerExtension类的使用
  3. Spring字段依赖注入示例
  4. mysql dml ddl优先级_MYSQL入门操作和常规DML、DDL、DQL使用
  5. 多线程Thread类创建多线程
  6. 在CentOS 6安装Mysql问题
  7. Kaldi AMI数据集脚本学习4---train_mono.sh
  8. 4K视频在线看,网速跟不上怎么办?
  9. 启动Flume Agent出现“A fatal error occurred while running“解决方法
  10. 数字证书格式转换:.key和.crt转换成.pem格式
  11. imac 升级 ssd_如何在较旧的2007-2009 iMac中安装SSD
  12. [狗子的PM之路]数据埋点
  13. 一次买房子血淋淋的教训
  14. 数据结构学习(考研408)
  15. mahout第一篇-----Mahout学习路线图
  16. 垃圾收集器回收种类 以及七种垃圾收集器
  17. Word2013使用 插入题注的方式为word自带编辑器编辑的公式进行编号
  18. openssl s_server s_client 相关命令参数
  19. linux命令:nl命令
  20. 使用html与css实现一个漂亮的网页

热门文章

  1. Linux mail命令使用和sendmail配置
  2. 速看!2022年6月编程语言排行榜出炉!第一名太牛啦
  3. STM32H743使用PA0,PA1作为ADC输入的坑!!
  4. 如何制作Excel斜线表头
  5. Excel基础操作(数据分析)归纳笔记
  6. 易基因|Science:单细胞甲基化测序鉴定哺乳动物的新神经元亚型和调节元件
  7. python混淆矩阵,详解使用python绘制混淆矩阵(confusion_matrix)
  8. java中什么叫服务?
  9. su切换特别慢 linux,秋明 | 系统su切换用户时间非常长
  10. linux u盘空间越小 写入越慢,解决U盘容量变小问题