SpringBoot Admin健康检查功能的实现

 更新时间:2021年06月19日 15:47:48   作者:骑马看象  
admin主要就是告诉运维人员,服务出现异常,然后进行通知(微信、邮件、短信、钉钉等)可以非常快速通知到运维人员,相当报警功能,接下来通过本文给大家介绍SpringBoot Admin健康检查的相关知识,一起看看吧

admin

监控检查,检查的是什么了。检查的是应用实例状态,说白了就是被查服务提供信息给检查服务端。在spring cloud 中可以有两种方式进行健康检查,一种是应用主动上报到admin服务端,第二种就是的admin项目eureka服务端拉取信息。
admin主要就是告诉运维人员,服务出现异常,然后进行通知(微信、邮件、短信、钉钉等)可以非常快速通知到运维人员,相当报警功能。应用中如果没有监控服务状态功能,又需要及时通知运维人员服务状态,就可以使用这个admin服务。

实现admin功能

创建客户端

创建新的模块服务
依赖引入

<!-- Admin 服务 -->
<dependency>
	<groupId>de.codecentric</groupId>
	<artifactId>spring-boot-admin-starter-server</artifactId>
</dependency>
<!-- Admin 界面  -->
<dependency>
	<groupId>de.codecentric</groupId>
	<artifactId>spring-boot-admin-server-ui</artifactId>
</dependency>
<!--如果使用eureka拉取方式就需要引入依赖-->
<dependency>
   <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>

启动添加注解

@SpringBootApplication
@EnableAdminServer
public class AdminApplication {}

添加配置信息

#设置服务注册中心的URL,用于client和server端交流
eureka.client.service-url.defaultZone=http://eureka1.com:7100/eureka/,http://eureka2.com:7200/eureka/
server.port=8081
spring.application.name=admin

主动上报的服务端

如果服务已经添加注册中就不需要进行这步。
依赖引入

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
    <groupId>de.codecentric</groupId>
    <artifactId>spring-boot-admin-starter-client</artifactId>
</dependency>

添加配置

management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always
spring.boot.admin.client.url=http://localhost:8081

实现效果

所有应用信息
在这里插入图片描述
在线状态
在这里插入图片描述
查看单个服务信息
在这里插入图片描述
在这里插入图片描述
所有配置信息,包括默认值都是显示出来,这样就旁边查看配置信息。
在这里插入图片描述
环境信息,这个包含本地环境信息,运行环境信息。
在这里插入图片描述

异常通知

邮件通知

依赖加载

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

添加配置

# qq邮箱设置
spring.mail.host=smtp.qq.com
spring.mail.username=79811111
spring.mail.password=ssssdfffdddfff
spring.mail.properties.mail.smpt=true
spring.mail.properties.mail.starttls.enable=true
spring.mail.properties.mail.starttls.required=true

#收件邮箱
spring.boot.admin.notify.mail.to=243333355@qq.com
# 发件邮箱
spring.boot.admin.notify.mail.from=79811111@qq.com

qq邮箱怎么获取授权码
在这里插入图片描述
在这里插入图片描述
当服务异常就会收到邮件
在这里插入图片描述

其他通知

自定义通知类型类继承AbstractStatusChangeNotifier类重写doNotify(InstanceEvent event, Instance instance)方法,加载bean初始就可以了。

代码地址

https://gitee.com/zhang798/spring-cloud/tree/admin
分支:admin

git clone https://gitee.com/zhang798/spring-cloud.git -b admin

以上就是SpringBoot Admin健康检查的详细内容,更多关于SpringBoot 健康检查的资料请关注脚本之家其它相关文章!

相关文章

  • spring cloud-给Eureka Server加上安全的用户认证详解

    spring cloud-给Eureka Server加上安全的用户认证详解

    这篇文章主要介绍了spring cloud-给Eureka Server加上安全的用户认证详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • SpringBoot JVM参数调优方式

    SpringBoot JVM参数调优方式

    这篇文章主要介绍了SpringBoot JVM参数调优方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • 使用CORS实现JavaWeb跨域请求问题的方法

    使用CORS实现JavaWeb跨域请求问题的方法

    这篇文章主要介绍了使用Cors实现JavaWeb跨域请求问题的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-09-09
  • Java中Map.Entry()含义及方法使用代码

    Java中Map.Entry()含义及方法使用代码

    这篇文章主要介绍了Java中Map.Entry()含义及方法使用的相关资料,Map.Entry是Java中Map的静态内部接口,用于表示键值对,其核心作用是高效访问和操作Map中的键值对,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-06-06
  • java中你的项目应该如何正确分层

    java中你的项目应该如何正确分层

    这篇文章主要介绍了java中你的项目应该如何正确分层,业务分层对于代码规范是比较重要,决定着以后的代码是否可复用,感兴趣的可以了解一下
    2021-04-04
  • SpringBoot整合Elasticsearch实现索引和文档的操作方法

    SpringBoot整合Elasticsearch实现索引和文档的操作方法

    Elasticsearch 基于 Apache Lucene 构建,采用 Java 编写,并使用 Lucene 构建索引、提供搜索功能,本文分步骤通过综合案例给大家分享SpringBoot整合Elasticsearch的相关知识,感兴趣的朋友跟随小编一起看看吧
    2021-05-05
  • Java加密 消息摘要算法MAC实现详解

    Java加密 消息摘要算法MAC实现详解

    这篇文章主要介绍了Java 消息摘要算法MAC实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • Java GUI插入图片不显示问题解决方法

    Java GUI插入图片不显示问题解决方法

    大家好,本篇文章主要讲的是Java GUI插入图片不显示问题解决方法,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2022-01-01
  • Java实现发送HTML内容并带附件的电子邮件

    Java实现发送HTML内容并带附件的电子邮件

    这篇文章主要为大家详细介绍了如何使用Java实现发送HTML内容并带附件的电子邮件,文中的示例代码讲解详细,有需要的小伙伴可以参考一下
    2025-01-01
  • Spring获取当前类在容器中的beanname实现思路

    Spring获取当前类在容器中的beanname实现思路

    这篇文章主要介绍了Spring获取当前类在容器中的beanname,实现思路只需继承BeanNameAware接口,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07

最新评论