电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

瀏覽:105日期:2022-06-25 13:59:01

本文主要介紹了Spring Cloud Admin的使用,分享給大家,具體如下:

源碼地址:https://github.com/muxiaonong/Spring-Cloud/tree/master/cloudadmin

Admin 簡(jiǎn)介

官方文檔:What is Spring Boot Admin?

SpringBootAdmin是一個(gè)用于管理和監(jiān)控SpringBoot微服務(wù)的社區(qū)項(xiàng)目,可以使用客戶(hù)端注冊(cè)或者Eureka服務(wù)發(fā)現(xiàn)向服務(wù)端提供監(jiān)控信息。

注意,服務(wù)端相當(dāng)于提供UI界面,實(shí)際的監(jiān)控信息由客戶(hù)端Actuator提供

通過(guò)SpringBootAdmin,你可以通過(guò)華麗大氣的界面訪問(wèn)到整個(gè)微服務(wù)需要的監(jiān)控信息,例如服務(wù)健康檢查信息、CPU、內(nèi)存、操作系統(tǒng)信息等等

本篇文章使用SpringBoot 2.3.3.RELEASE、SpringCloud Hoxton.SR6、SpringBoot Admin 2.2.3版本,此外,服務(wù)注冊(cè)中心采用eureka

一、SpringCloud使用SpringBoot Admin

1.1 創(chuàng)建一個(gè)SpringBoot項(xiàng)目,命名為admin-test,引入如下依賴(lài)

<!-- Admin 服務(wù) --> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-server</artifactId> <version>2.2.1</version> </dependency> <!-- Admin 界面 --> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-server-ui</artifactId> <version>2.2.1</version> </dependency>

1.2 啟動(dòng)類(lèi)

@SpringBootApplication@EnableAdminServerpublic class AdminTestApplication { public static void main(String[] args) { SpringApplication.run(AdminTestApplication.class, args); } }

1.3 配置文件

spring.application.name=admin-testmanagement.endpoints.jmx.exposure.include=*management.endpoints.web.exposure.include=*management.endpoint.health.show-details=always# spring cloud access&secret configalibaba.cloud.access-key=****alibaba.cloud.secret-key=****

1.4 啟動(dòng)項(xiàng)目

輸入項(xiàng)目地址:http://localhost:8080/applications

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

二、配置郵件通知

2.1 pom

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

2.2 郵件配置

spring.mail.host=smtp.qq.comspring.mail.username=單純QQ號(hào)spring.mail.password=授權(quán)碼spring.mail.properties.mail.smpt.auth=truespring.mail.properties.mail.smpt.starttls.enable=truespring.mail.properties.mail.smpt.starttls.required=true#收件郵箱spring.boot.admin.notify.mail.to=xxxx@qq.com# 發(fā)件郵箱spring.boot.admin.notify.mail.from= xxxx@qq.com

2.3 QQ郵箱設(shè)置

找到自己的QQ郵箱

QQ郵箱 》 設(shè)置 》 賬戶(hù) 》紅框處獲取 授權(quán)碼

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

我們將 consumer 服務(wù)下線后,

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

接著我們就收到了郵件通知,告訴我們服務(wù)關(guān)閉了

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

三、發(fā)送釘釘群通知

找到群里面的 群設(shè)置 》 智能群助手 》 添加機(jī)器人

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

注意:這里的自定義關(guān)鍵詞一定要和項(xiàng)目的關(guān)鍵字匹配

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

獲取 Webhook 到項(xiàng)目中,這個(gè)是后面要使用到的

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

啟動(dòng)類(lèi):

import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.context.annotation.Bean;import de.codecentric.boot.admin.server.config.EnableAdminServer;import de.codecentric.boot.admin.server.domain.entities.InstanceRepository;@SpringBootApplication@EnableAdminServerpublic class AdminApplication {public static void main(String[] args) {SpringApplication.run(AdminApplication.class, args);} @Bean public DingDingNotifier dingDingNotifier(InstanceRepository repository) { return new DingDingNotifier(repository); }}

通知類(lèi):

import java.util.Map;import com.alibaba.fastjson.JSONObject;import de.codecentric.boot.admin.server.domain.entities.Instance;import de.codecentric.boot.admin.server.domain.entities.InstanceRepository;import de.codecentric.boot.admin.server.domain.events.InstanceEvent;import de.codecentric.boot.admin.server.notify.AbstractStatusChangeNotifier;import reactor.core.publisher.Mono;public class DingDingNotifier extends AbstractStatusChangeNotifier {public DingDingNotifier(InstanceRepository repository) { super(repository); } @Override protected Mono<Void> doNotify(InstanceEvent event, Instance instance) { String serviceName = instance.getRegistration().getName(); String serviceUrl = instance.getRegistration().getServiceUrl(); String status = instance.getStatusInfo().getStatus(); Map<String, Object> details = instance.getStatusInfo().getDetails(); StringBuilder str = new StringBuilder(); str.append('服務(wù)預(yù)警 : 【' + serviceName + '】'); str.append('【服務(wù)地址】' + serviceUrl); str.append('【狀態(tài)】' + status); str.append('【詳情】' + JSONObject.toJSONString(details)); return Mono.fromRunnable(() -> { DingDingMessageUtil.sendTextMessage(str.toString()); }); }}

發(fā)送工具類(lèi)

import java.io.InputStream;import java.io.OutputStream;import java.net.HttpURLConnection;import java.net.URL;import com.alibaba.fastjson.JSONObject;public class DingDingMessageUtil {public static String access_token = 'Token'; public static void sendTextMessage(String msg) { try { Message message = new Message(); message.setMsgtype('text'); message.setText(new MessageInfo(msg)); URL url = new URL('https://oapi.dingtalk.com/robot/send?access_token=' + access_token); // 建立 http 連接 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setDoOutput(true); conn.setDoInput(true); conn.setUseCaches(false); conn.setRequestMethod('POST'); conn.setRequestProperty('Charset', 'UTF-8'); conn.setRequestProperty('Content-Type', 'application/Json; charset=UTF-8'); conn.connect(); OutputStream out = conn.getOutputStream(); String textMessage = JSONObject.toJSONString(message); byte[] data = textMessage.getBytes(); out.write(data); out.flush(); out.close(); InputStream in = conn.getInputStream(); byte[] data1 = new byte[in.available()]; in.read(data1); System.out.println(new String(data1)); } catch (Exception e) { e.printStackTrace(); } }}

消息類(lèi):

public class Message {private String msgtype; private MessageInfo text; public String getMsgtype() { return msgtype; } public void setMsgtype(String msgtype) { this.msgtype = msgtype; } public MessageInfo getText() { return text; } public void setText(MessageInfo text) { this.text = text; }}

public class MessageInfo { private String content; public MessageInfo(String content) { this.content = content; } public String getContent() { return content; } public void setContent(String content) { this.content = content; }}

我們下線一個(gè)服務(wù)后,就可以看到釘釘群就發(fā)了消息的通知

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

同時(shí),當(dāng)我們啟動(dòng)服務(wù)的時(shí)候,也會(huì)有消息通知我們服務(wù)啟動(dòng)了

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)

四 總結(jié)

上面就是我們對(duì)admin 健康檢查的實(shí)際應(yīng)用,在企業(yè)中一般會(huì)有短信通知+釘釘群通知和郵件,感興趣的小伙伴可以去試試看,還是挺好玩的,還有一個(gè)就是微信通知,在服務(wù)號(hào) 模板消息感興趣的小伙伴可以自行去研究看看,大家加油~

到此這篇關(guān)于Spring Cloud Admin健康檢查 郵件、釘釘群通知的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Spring Cloud Admin 通知內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: 釘釘
相關(guān)文章:
主站蜘蛛池模板: 酒瓶_酒杯_玻璃瓶生产厂家_徐州明政玻璃制品有限公司 | 济南轻型钢结构/济南铁艺护栏/济南铁艺大门-济南燕翔铁艺制品有限公司 | 百度关键词优化_网站优化_SEO价格 - 云无限好排名 | 德国GMN轴承,GMN角接触球轴承,GMN单向轴承,GMN油封,GMN非接触式密封 | 考勤系统_人事考勤管理系统_本地部署BS考勤系统_考勤软件_天时考勤管理专家 | 赛尔特智能移动阳光房-阳光房厂家-赛尔特建筑科技(广东)有限公司 | 沧州友城管业有限公司-内外涂塑钢管-大口径螺旋钢管-涂塑螺旋管-保温钢管生产厂家 | 聚合氯化铝厂家-聚合氯化铝铁价格-河南洁康环保科技 | 懂研帝_专业SCI论文润色机构_SCI投稿发表服务公司 | 缝纫客| 衢州装饰公司|装潢公司|办公楼装修|排屋装修|别墅装修-衢州佳盛装饰 | 球磨机,节能球磨机价格,水泥球磨机厂家,粉煤灰球磨机-吉宏机械制造有限公司 | 高空重型升降平台_高空液压举升平台_高空作业平台_移动式升降机-河南华鹰机械设备有限公司 | 生物颗粒燃烧机-生物质燃烧机-热风炉-生物颗粒蒸汽发生器-丽水市久凯能源设备有限公司 | 海外仓系统|国际货代系统|退货换标系统|WMS仓储系统|海豚云 | 广州展览设计公司_展台设计搭建_展位设计装修公司-众派展览装饰 广州展览制作工厂—[优简]直营展台制作工厂_展会搭建资质齐全 | 华溶溶出仪-Memmert稳定箱-上海协烁仪器科技有限公司 | 协议书_协议合同格式模板范本大全 | TwistDx恒温扩增-RAA等温-Jackson抗体-默瑞(上海)生物科技有限公司 | 膜结构停车棚-自行车棚-膜结构汽车棚加工安装厂家幸福膜结构 | 缓蚀除垢剂_循环水阻垢剂_反渗透锅炉阻垢剂_有机硫化物-郑州威大水处理材料有限公司 | 杭州公司变更法人-代理记账收费价格-公司注销代办_杭州福道财务管理咨询有限公司 | 中红外QCL激光器-其他连续-半导体连续激光器-筱晓光子 | 拉曼光谱仪_便携式|激光|显微共焦拉曼光谱仪-北京卓立汉光仪器有限公司 | SRRC认证_电磁兼容_EMC测试整改_FCC认证_SDOC认证-深圳市环测威检测技术有限公司 | AGV无人叉车_激光叉车AGV_仓储AGV小车_AGV无人搬运车-南昌IKV机器人有限公司[官网] | 定做大型恒温循环水浴槽-工业用不锈钢恒温水箱-大容量低温恒温水槽-常州精达仪器 | 网站建设,北京网站建设,北京网站建设公司,网站系统开发,北京网站制作公司,响应式网站,做网站公司,海淀做网站,朝阳做网站,昌平做网站,建站公司 | 生物颗粒燃烧机-生物质燃烧机-热风炉-生物颗粒蒸汽发生器-丽水市久凯能源设备有限公司 | 冷轧机|两肋冷轧机|扁钢冷轧机|倒立式拉丝机|钢筋拔丝机|收线机-巩义市华瑞重工机械制造有限公司 | 无机纤维喷涂棉-喷涂棉施工工程-山东华泉建筑工程有限公司▲ | 冷热冲击试验箱_温度冲击试验箱价格_冷热冲击箱排名_林频厂家 | 冲击式破碎机-冲击式制砂机-移动碎石机厂家_青州市富康机械有限公司 | 捆扎机_气动捆扎机_钢带捆扎机-沈阳海鹞气动钢带捆扎机公司 | 东莞市海宝机械有限公司-不锈钢分选机-硅胶橡胶-生活垃圾-涡电流-静电-金属-矿石分选机 | 二手回收公司_销毁处理公司_设备回收公司-找回收信息网 | 浩方智通 - 防关联浏览器 - 跨境电商浏览器 - 云雀浏览器 | 广东燎了网络科技有限公司官网-网站建设-珠海网络推广-高端营销型外贸网站建设-珠海专业h5建站公司「了了网」 | 仓储笼_金属箱租赁_循环包装_铁网箱_蝴蝶笼租赁_酷龙仓储笼租赁 测试治具|过炉治具|过锡炉治具|工装夹具|测试夹具|允睿自动化设备 | 安驭邦官网-双向万能直角铣头,加工中心侧铣头,角度头[厂家直销] 闸阀_截止阀_止回阀「生产厂家」-上海卡比阀门有限公司 | 山东石英砂过滤器,除氟过滤器「价格低」-淄博胜达水处理 |