SpringBootAdmin+SpringCloud整合[视频教程]_第1页
SpringBootAdmin+SpringCloud整合[视频教程]_第2页
SpringBootAdmin+SpringCloud整合[视频教程]_第3页
SpringBootAdmin+SpringCloud整合[视频教程]_第4页
SpringBootAdmin+SpringCloud整合[视频教程]_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、SpringBootAdmin+SpringCloud整合视频教程疯狂创客圈釜典图书面试必备+面试必备+面试必备【】疯狂创客圈经典图书:大厂必备+大厂必备+大厂必备【】入大厂+涨工资必备:高并发【亿级流量实战】实战系列【SpringCloudgin秒杀】实战系列【】此文的配套视频:稍后放出使用SpringBootAdmin进行日志的记录SpringBootAdmin用来管理和监控SpringBoot、SpringCloud应用程序,它利用spring-boot-starter-actuator提供的功能,将各个微服务的状态整合到一起,并提供良好的界面查看支持,并且能够动态的修改实例Spring

2、BootAdmin分为server端和client端,server端可查看各个微服务的状态,client端将微服务注册到server端。1、SpringBootAdmin简介使用SpringBootAdmin进行日志的记录,可以很轻松的是实现对SpringBoot、SpringCloud项目运行状态的监控。SpringBootAdmin本身也是一个Web应用,每个SpringBoot应用程序都被视为客户端并注册到器。SpringBootAdmin是一个开源社区项目,用于管理和监控SpringBoot应用程序。应用程序作为SpringBootAdminClient向为SpringBootAdmi

3、nServer注册(通过HTTP)或使用SpringCloud注册中心(Eureka,Nacos)发现。Ul是的Vue.js应用程序,展示SpringBootAdminClient的Actuator端点上的一些监控。常见的功能如下:显示健康状况显示详细信息,例如和内存指标micrometer.i指标数据源指标缓存指标显示内部信息关注并下载日志文件查看系统和环境属性查看SpringBoo配置属性支持SpringClouds可发布en和reresendpoint轻松的日志级别管理与交互s查看线程转储查看ttptrces查看审核事件查看tt端点查看预定的任务查看和删除活动会话(使用springses

4、sion查看lyyi数据库迁移下载epdump状态更改通知(通过电子邮件,Slc,ipc等t状态更改的事件日志(非持久性)SpringBootAdmi背后的数据采集是由SpringBootActuto点提供。ctu相关映射启动时会自动加载2、使用SpringBootAdm监控服务Admin-Server并注册到Nacos:创建一个SpringBoot项目,命名为provider-monitor,引入如下SpringCloud、Nacos、SpringBootAdmin的依赖:1.1导入依赖springootdminstrtersererdependencygroupdde.codecentri

5、cgroupdrtictdspringootdminstrtersererrtictdersionspringootdmin.ersionersiondependency健康检查dependencyorg.springframework.bootspring-boot-starter-actuatororg.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-security版本需要配套,否则会抛出异常:springoot.ersion2.ASEorg.sartifactI

6、dspdependencramework.boot-starteroot/groupIcurity/artifactI在sc-admin-server工的配置文件application.yml中配置springsecurity的用户名和密码,这时需要在服务注册时带上metadata-map的信息,如下:spring:security:user:name:adminpassword:admineureka:instance:metadata-map::$user.password:$spring.security.user.pa

7、sswordEnableWebSecurity注解以及WebSecurityConfigurerAdapter起配合提供基于web的security。继承了WebSecurityConfigurerAdapter之后,再加上几行代码,我们就能实现要求用户在进入应用的任何URL之前都进行验证的功能,写一个配置类SecuritySecureConfig继承WebSecurityConfigurerAdapter,配置如下:ectedvoiormattedconr:offigure(HttpSecurityhttp)throwsExceptionaveuestAwareAutnticationSuc

8、cessHandlersuccessHauccessHaer.setTargetUrlParameter(redirectTouccessHaer.setDaultTargetUrl(adminContextPath+rrareAuthenticationSuccessHattp.authorizeRequests()授予对所有静态资产和登录页面的公共访问权限。.atatcraottata.atatcraottato必须对每个其他请求进行身份验证.aut.auttcat.aformLogin().loginPage(adminottato).successHandler(successHa.l

9、ogout().logoutUrl(adminConttatoout.a启用克持。这是prinoot注册所必需的t.ttaic().and(orattr:on配置登录和注销1.4启动器类添加EnableAdminServer注解acaco.craymaker.springcloud.adminserver;ort.cocentric.boot.admin.server.config.Enablortor.rframework.boot.SpringApplicationortor.rframework.boot.autoconfigure.SpringBootAicatioortor.rfra

10、mework.cloud.client.discovery.EnableDiscoveSpringBootApplicationEnableAdminServerEnableDiscoveryClientuccaerverApplicatioctatcaroaication.rucation.claaradmin会自己拉取Eureka上注册的app信息,主动去注册。这也是唯一区别之前入门中手动注册的地方,就是client端不需要admin-client的依赖,也不需要配置admin地址了,一切全部由admin-server自己实现。这样的设计对环境变化很友好,不用改了admin-server后

11、去改所有app的配置了。1.5、测试onurationccassSecuritySecureConfigextendSecurityConfigurerAdapterrivatefinalStringadminContextPath;ublicSecuritySecureConfig(AdminServerPropertiesadminServerProperttis.aontextPath=adminServerProperties.getContextPath();au公开当前应用程序的审核事件信息。需要一个uo。tor显示应用程序中所有的完整列表。3.actuator启用和暴露端点执行器

12、端点使您可以监视应用程序并与之交互SpringBoot包含许多内置端点,您可以添加自己的端点。例如health端点提供基本的应用程序运行状况信息。每个端点都可以启用或禁用。这控制了是否创建了端点以及它的bean在应用程序上下文中是否存在。为了可以远程访问,端点还必须通过JMX或HTTP公开。大多数应用程序选择HTTP,其中终结点的ID和前缀/actuator映射到URL。例如,默认情况下health端点映射到/actuator/health。端点列表:ID描述cacco显示所有的整理列表ouratorort公开r的属性oura显示已应用的所有数据库迁移。需要一个或多个公开可用的缓存。显示在配置

13、和自动配置类上评估的条件以及它们匹配或不匹配的原因。显示应用程序运行状况信息。tttrac显示跟踪信息(默认情况下,最近1个请求响应交换)。需要一个ttracoior显示任意应用程序信息。ratora显示rIt图ra需要对T的依赖。ratocor显示和修改应用程序中记录器的配置。ase显示已应用的所有ii数据库迁移。需要一个或多个iae。eanmetric显示当前应用程序的指标信息。mappin显示所有eetap路径的整理列表。cheduledta显示应用程序中的计划任务。ession允许从prine支持的会话存储中检索和删除用户会话。需要使用prine的基于ervie的e应用程序。hutdo

14、wn使应用程序正常关闭。默认禁用。threaddump执行线程转储。heapdmp返回hpro堆转储文件。oloia通过公开e(当olo在类路径上时,不适用于elUx需要对的依赖oloia-coreloile返回日志文件的内容(如果已设置oin.ile.n或haein.ile属性h。支持使用Pang头来检索部分日志文件的内容。condition显示在配置和自动配置类上评估的条件以及它们匹配或不匹配的原因。promethe以Promethe服务器可以抓取的格式公开指标。需要对的依Micrometer-reitry-promethe3.1启用端点默认情况下,除了shutdown端点是关闭的,其它的

15、都是启用的。management.endpoint.enabled1)启用shutdown端点management.endpoint.shutdown.enabled=true2)关闭默认端点management.endpoints.enabled-by-default=false3)启用info端点.enabled=true禁用的端点将从应用程序上下文中完全删除。如果只想更改公开端点的技术,请使用ncld和excld属性。3.2暴露端点停止公开所有在JMX上公开的端点,只公开info和health两个端点,使用如下属性:management.e

16、ndpointmx.exposure.include=health,info通过HTTP公开所有的端点,除了env和beans端点,使用如下的属性:management.endpoints.management.endpoints.eb.exposure.include=*eb.exposure.exclude=env,bean端点参考资料:4微服务Provide改造对前面的service-consumer-demo、service-provider-demo两个微服务进行改造,力口入spring-boot-admin的监控。4.1导入依赖-admin-client-dependencyde.

17、codecentricspring-boot-admin-starter-client2.2配置yml服务名pring:applicationname:admin-client指定admin监控中心地址boot:adminclient:rlhttp服务端口erver:port:9010localhost定义日志文件输出路径注释后不显示本服务的loi模块logginfiledata/adminTest/looutput.loincld暴露端点management:endpointeexporeinclde在访问actatorhe显示完整信息endpointhealth:ho-detailalay

18、使用context-path很多时候项目由于模块比较多,通常会配置servlet的context-path属性增加一节路径加以区分不同服务,如下erver:portservlet:context-pathactivitypring:clodnacodiscovery:erver-addr如果您的应用程序是Web应用程序(SpringMVC,SpringWebFlux或Jersey),则可以使用以下附加端点:ID描述metadata:management:context-path:$server.servlet.context-path/actuator力口上springsecu

19、r密马在SpringBootAdminServer中统一配置采用springsecurity提供安全保障,客户端需要配置security账号密码,服务注册时带上metadata-map信息.5实现在线日志查看具体操作:5.1、添加jar包org.slf4jslf4j-api 在application.ym平级文件夹中添加logback-spring.xm置文件?xmlversion=1.0encoding=UTF-8?configuration$APP_Name定义日志文件的存储地址勿在ogac的配置中使用相对路径,请根据需求配置路径-conversionRuleconver

20、sionWord=wExconverterClass=org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter彩色日志依赖的渲染类-彩色日志格式-propertyname=CONSOLE_LOG_PATTERNvalue=adminTest$CONSOLE_LOG_PATTERN:-%clr(%dyyyy-MM-ddHH:mm:ss.aint%clr-%5p)%clrmagenta!控-制台输出-appendername=STDOUTclass=ch.qos.logback.core.C

21、onsoleAppender$CONSOLE_LOG_PATTERNutf8/appender按照每天生成日志文件-appendername=FILEclass=ch.qos.logback.core.rolling.RollingFileAppender$LOG_HOME/output.log$LOG_HOME/output-%dyyyy-MM-dd.log/FileNamePattern30格式化输出:表示日期,threa表示线程名,-5leel级别从左显示5个字符宽度msg:日志消息,n是换行符-patternyyyy-mmss.threa-5leellogger5-msgnpatter

22、nencoer/appender-shoparametersorhibernate专为Iibernate定制-loggername=org.hibernate.type.descriptor.sql.BasicBinderlevel=WARN/loggername=org.hibernate.type.descriptor.sql.BasicExtractorlevel=WARN/loggername=org.hibernate.SQLlevel=WARN/loggername=org.hibernate.engine.QueryParameterslevel=DEBUG/loggername=org.hibernate.engine.query.HQLQueryPlanlevel=WARN/日志输出级别,注意:如果不写appener-rere,将导致springbootm找不到文件,无法查看日志-rootleelappener-rerelog.path如何使用环境变量呢?某些情况下需要变量设置个默认值,以防出现比较恶心的_IS_UNDEFINED后缀(log4j不存在的变量会留空)只要使用:操-作符即可(冒号+减号)。比如log.pat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论