SpringBoot整合Spring Boot Admin实现服务监控的方法

网友投稿 953 2022-10-17

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

SpringBoot整合Spring Boot Admin实现服务监控的方法

目录1. Server端服务开发1.1. 引入核心依赖1.2. application.yml配置文件1.3. Security配置文件1.4. 主启动类2. Client端服务开发2.1. 引入核心依赖2.2. application.yml配置文件2.3. logback-spring.xml文件2.4. 主启动类3. 验证4. 配置邮件告警4.1. 引入核心依赖4.3. 通知配置文件4.4. 验证

Spring Boot Admin用于管理和监控一个或多个Spring Boot服务,其分为Server端和Client端,Server端相当于一个注册中心,Client端通过Http请求向Server端进行注册,也可以结合Eureka、Nacos等注册中心实现服务注册。

1. Server端服务开发

1.1. 引入核心依赖

de.codecentric spring-boot-admin-starter-server 2.3.1 org.springframework.boot spring-boot-starter-security org.springframework.boot spring-boot-starter-web

1.2. application.yml配置文件

server: port: 8138 servlet: context-path: /adminspring: application: name: springboot-admin-server security: user: name: admin password: 123456

1.3. Security配置文件

1.4. 主启动类

@EnableAdminServer@SpringBootApplicationpublic class AdminServerApplication { public static void main(String[] args) { SpringApplication.run(AdminServerApplication.class, args); }}

2. Client端服务开发

2.1. 引入核心依赖

de.codecentric spring-boot-admin-starter-client 2.3.1 org.springframework.boot spring-boot-starter-web

2.2. application.yml配置文件

2.3. logback-spring.xml文件

${CONSOLE_LOG_PATTERN} UTF-8 ${log.path}/log_file.log %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n ${log.path}/log_file-%d{yyyy-MM-dd}-%i.log 10MB 15

2.4. 主启动类

@SpringBootApplicationpublic class AdminClientApplication { private static Logger logger = LoggerFactory.getLogger(AdminClientApplication.class); public static void main(String[] args) { SpringApplication.run(AdminClientApplication.class, args); logger.info("服务启动成功,当前时间为:{}", LocalDateTime.now()); logger.error("服务启动成功,当前时间为:{}", LocalDateTime.now()); }}

3. 验证

输入用户名和密码:admin/123456,登陆成功后,可以看到如下页面

将滚动条往下拉,可以看到内存、线程等信息

选择日志—>日志文件可以查看到服务的日志信息

选择应用墙选项,可以查看到应用有哪些服务被监控

4. 配置邮件告警

Spring Boot Admin还可以对其监控的服务提供告警功能,当出现重大故障,如服务宕机时,可以及时以邮件方式通知运维人员

4.1. 引入核心依赖

在Server服务中引入邮件依赖

org.springframework.boot spring-boot-starter-mail

4.2. application.yml

在yml配置文件中加入如下配置信息

4.3. 通知配置文件

@Configurationpublic class NotificationConfig { private InstanceRepository instanceRepository; private ObjectProvider> provider; public NotificationConfig(InstanceRepository instanceRepository, ObjectProvider> provider) { this.instanceRepository = instanceRepository; this.provider = provider; } @Bean public FilteringNotifier filteringNotifier() { CompositeNotifier compositeNotifier = new CompositeNotifier(this.provider.getIfAvailable(Collections::emptyList)); return new FilteringNotifier(compositeNotifier, this.instanceRepository); } @Bean @Primary public RemindingNotifier remindingNotifier() { RemindingNotifier remindingNotifier = new RemindingNotifier(filteringNotifier(), this.instanceRepository); //配置每隔多久提示 remindingNotifier.setReminderPeriod(Duration.ofMinutes(1)); //配置每隔多久检查 remindingNotifier.setCheckReminderInverval(Duration.ofSeconds(10)); return remindingNotifier; }}

4.4. 验证

先将Client服务关闭,稍等一会便会收到宕机提示邮件

再次将Client服务启动

到此这篇关于SpringBoot整合Spring Boot Admin实现服务监控的文章就介绍到这了,更多相关Spring Boot Admin服务监控内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

您可能感兴趣的文章:SpringBoot-Admin实现微服务监控+健康检查+钉钉告警如何用Springboot Admin监控你的微服务应用详解用Spring Boot Admin来监控我们的微服务使用spring-boot-admin对spring-boot服务进行监控的实现方法详解Spring boot Admin 使用eureka监控服务详解Spring Boot Admin监控服务上下线邮件通知Spring boot admin 服务监控利器详解

上一篇:腾讯开源消息中间件TubeMQ总体介绍分析
下一篇:Python利用Charles 实现全部自动答题思路流程分析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~