springboot admin,用于监控基于Spring Boot 的应用,并提供UI界面,是一个很好使,很方便的利器;项目要加入Admin监控目前主要有两中方式,一种是通过Admin client,另外一种就是通过eureka,将应用注册到eureka,他通过内置的zuul机制,可以读取到服务中心所有注册的应用,实现监控,本文主要介绍第二种方式。
首先要有eureka的服务注册中心,这个在本系列文章中已经介绍过,这里我们就不在多说,直接介绍spring boot admin项目的开发。
首先引入pom依赖:
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> <mybatis.spring.boot.version>1.3.0</mybatis.spring.boot.version> </properties> <dependencies> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-server</artifactId> <version>1.4.6</version> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-server-ui</artifactId> <version>1.4.6</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Camden.SR5</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>build-info</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
这里一定要注意springcloud的版本使用,要和springboot版本兼容,测试修改过多个版本,最终确定
Camden.SR5和上面的springboot版本是兼容的,这样配置在本地使用idea直接启动程序可以正常使用,
但是在使用maven编译成jar包是会报错,记住吧test包中的测试类删掉就可以编译成功了,这是一个坑,搞了一天才弄成功。
当前日志级别管理仅限 Logback,通过 JMX 实现,所以需要依赖 jolokia 。同时,还需要配置 Logback 的 JMXConfigurator
:
logback.xml
<?xml version="1.0" encoding="UTF-8"?> <configuration> <include resource="org/springframework/boot/logging/logback/base.xml"/> <jmxConfigurator/> </configuration>
启动类如下:
@Configuration @EnableAutoConfiguration @EnableDiscoveryClient @EnableAdminServer public class AdminserverApplication { public static void main(String[] args) { SpringApplication.run(AdminserverApplication.class, args); } }
配置文件:
# 解决windows下运行时无法识别主机名的问题 spring.boot.admin.client.prefer-ip=true server.port=7086 spring.application.name=zk_admin eureka.instance.preferIpAddress=true eureka.client.service-url.defaultZone=http://172.16.1.28:7082/eureka/,http://172.16.1.29:7082/eureka/ #定义各种额外的详情给服务端显示 #从pom.xml中获取 info.app.name="@project.name@" info.app.description="@project.description@" info.app.version="@project.version@" info.spring-boot-version="@project.parent.version@" info.version=@project.version@ #宕机邮件提示 spring.mail.host=smtp.126.com spring.mail.username=**** spring.mail.password=***** spring.boot.admin.notify.mail.from=***** spring.boot.admin.notify.mail.to=****** management.security.enabled=false management.security.roles=SUPERUSER security.user.name=xjgz2018 security.user.password=xjgz2018. security.basic.enabled=false #开启shutdown的安全验证 endpoints.health.sensitive= true endpoints.cors.allowed-methods=HEAD,GET,POST #启用shutdown endpoints.shutdown.enabled=true #禁用密码验证 endpoints.shutdown.sensitive=false
配置文件中还增加了服务状态变化邮件提示,以方便服务的管理。
服务启动后访问 http://127.0.0.1:7086
页面如下:
现在还有一个问题,如果提供服务的应用使用了redis的话,redis状态会处于down状态,有时候应用的redis是可用的,有时候是不可也用的,这个问题暂时还没有找到原因。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/15850.html