SpringBoot-Admin如何实现微服务监控+健康检查+钉钉告警
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,小编给大家分享一下SpringBoot-Admin如何实现微服务监控+健康检查+钉钉告警,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!基于SpringCloud微服务平台,进行服务实
千家信息网最后更新 2025年01月31日SpringBoot-Admin如何实现微服务监控+健康检查+钉钉告警
小编给大家分享一下SpringBoot-Admin如何实现微服务监控+健康检查+钉钉告警,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
基于SpringCloud微服务平台,进行服务实例监控及健康检查,注册中心为eureka,SpringBoot提供了很好的组件SpringBoot Admin,2.X版本直接可以配置钉钉机器人告警。
效果:可以实现eureka注册的实例上线、下线触发钉钉告警。监控我们的服务实例健康检查。
搭建admin-server
pom依赖
4.0.0 org.springframework.boot spring-boot-starter-parent 2.4.11 com.example admin-server 1.0.0 etc-admin-server Spring Boot Admin监控eureka服务实例和健康检查,钉钉告警 1.8 2.4.3 2020.0.4 org.springframework.boot spring-boot-starter-security org.springframework.boot spring-boot-starter-web de.codecentric spring-boot-admin-starter-server org.springframework.cloud spring-cloud-starter-netflix-eureka-client org.springframework.boot spring-boot-starter-test test org.springframework.cloud spring-cloud-dependencies ${spring-cloud.version} pom import de.codecentric spring-boot-admin-dependencies ${spring-boot-admin.version} pom import ${project.name} org.springframework.boot spring-boot-maven-plugin
application.yml配置
spring: application: name: admin-server security: user: name: "admin" password: "pwd" boot: admin: notify: dingtalk: enabled: true webhookUrl: 'https://oapi.dingtalk.com/robot/send?access_token=钉钉机器人access_token' secret: '钉钉机器人secret' message: '服务告警: #{instance.registration.name} #{instance.id} is #{event.statusInfo.status}'server: port: 9002eureka: client: registryFetchIntervalSeconds: 5 service-url: defaultZone: 'http://127.0.0.1:8020/eureka/' instance: hostname: ${spring.cloud.client.ip-address} instance-id: ${spring.cloud.client.ip-address}:${server.port} prefer-ip-address: true ip-address: ${spring.cloud.client.ip-address} leaseRenewalIntervalInSeconds: 10 health-check-url-path: /actuator/health metadata-map: user.name: ${spring.security.user.name} user.password: ${spring.security.user.password}management: endpoints: web: exposure: include: "*" endpoint: health: show-details: ALWAYS
启动类
package com.example;import de.codecentric.boot.admin.server.config.EnableAdminServer;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.client.discovery.EnableDiscoveryClient;/** * @author xxx */@EnableAdminServer@EnableDiscoveryClient@SpringBootApplicationpublic class AdminServerApplication { public static void main(String[] args) { SpringApplication.run(AdminServerApplication.class, args); }}
config类
package com.example;import de.codecentric.boot.admin.server.config.AdminServerProperties;import org.springframework.context.annotation.Configuration;import org.springframework.security.config.annotation.web.builders.HttpSecurity;import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;import org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler;import org.springframework.security.web.csrf.CookieCsrfTokenRepository;/** * WebSecurity配置 * @author xxxx */@Configurationpublic class WebSecurityConfigure extends WebSecurityConfigurerAdapter { private final String adminContextPath; public WebSecurityConfigure(AdminServerProperties adminServerProperties) { this.adminContextPath = adminServerProperties.getContextPath(); } @Override protected void configure(HttpSecurity http) throws Exception { // @formatter:off SavedRequestAwareAuthenticationSuccessHandler successHandler = new SavedRequestAwareAuthenticationSuccessHandler(); successHandler.setTargetUrlParameter("redirectTo"); successHandler.setDefaultTargetUrl(adminContextPath + "/"); http.authorizeRequests() .antMatchers(adminContextPath + "/assets/**").permitAll() .antMatchers(adminContextPath + "/login").permitAll() .anyRequest().authenticated() .and() .formLogin().loginPage(adminContextPath + "/login").successHandler(successHandler).and() .logout().logoutUrl(adminContextPath + "/logout").and() .httpBasic().and() .csrf() .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse()) .ignoringAntMatchers( adminContextPath + "/instances", adminContextPath + "/actuator/**" ); // @formatter:on }}
启动后效果
看完了这篇文章,相信你对"SpringBoot-Admin如何实现微服务监控+健康检查+钉钉告警"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
服务
健康
检查
监控
实例
机器
机器人
配置
效果
篇文章
下线
完了
平台
更多
服务平台
版本
知识
组件
行业
资讯
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
oracle数据库如何自学
mac局域网服务器
wdlinux数据库地址
订餐系统数据库
找软件开发外包公司哪家好
中科院宁波软件开发中心
湖南的计算机软件开发的公司
流媒体服务器开发
《网络安全法》是一部 法律
计算机软件开发的过程
空间数据库试题
awn云服务器国内注册
重庆量化积分管理软件开发公司
游戏更新出现与服务器连接被重置
算力服务器的海关编码
浙江驰聘网络技术有限公司
鞍山网络安全资质申请哪家好
如何查看本地服务器的数据备份
软件和网络技术哪个挣钱
矿井无线传感器网络技术
福建 维修 软件开发
龙岩数据库审计厂家
迷你玩家炸掉mc服务器原版视频
方舟服务器改技能点
关于中国网络技术发展的作文
嘉兴南湖区软件开发地址
如何设置微信服务器
虚拟身份证 软件开发
传感器网络技术的意义
全国信息网络技术有限公司