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

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

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

瀏覽:104日期: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)目,可以使用客戶端注冊(cè)或者Eureka服務(wù)發(fā)現(xiàn)向服務(wù)端提供監(jiān)控信息。

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

通過SpringBootAdmin,你可以通過華麗大氣的界面訪問到整個(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,引入如下依賴

<!-- 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)類

@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è)置 》 賬戶 》紅框處獲取 授權(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)類:

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); }}

通知類:

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ā)送工具類

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(); } }}

消息類:

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)文章:
主站蜘蛛池模板: 长沙印刷厂-包装印刷-画册印刷厂家-湖南省日大彩色印务有限公司 青州搬家公司电话_青州搬家公司哪家好「鸿喜」青州搬家 | 无菌检查集菌仪,微生物限度仪器-苏州长留仪器百科 | 废旧物资回收公司_广州废旧设备回收_报废设备物资回收-益美工厂设备回收公司 | 重庆LED显示屏_显示屏安装公司_重庆LED显示屏批发-彩光科技公司 重庆钣金加工厂家首页-专业定做监控电视墙_操作台 | 税筹星_灵活用工平台_企业财务顾问_财税法薪综合服务平台 | 东莞市海宝机械有限公司-不锈钢分选机-硅胶橡胶-生活垃圾-涡电流-静电-金属-矿石分选机 | Dataforth隔离信号调理模块-信号放大模块-加速度振动传感器-北京康泰电子有限公司 | 重庆波纹管|重庆钢带管|重庆塑钢管|重庆联进管道有限公司 | 电动高尔夫球车|电动观光车|电动巡逻车|电动越野车厂家-绿友机械集团股份有限公司 | 镀锌方管,无缝方管,伸缩套管,方矩管_山东重鑫致胜金属制品有限公司 | 亮点云建站-网站建设制作平台 | 欧景装饰设计工程有限公司-无锡欧景装饰官网 | 江西高职单独招生-江西单招考试-江西高职单招网| 健康管理师报名入口,2025年健康管理师考试时间信息网-网站首页 塑料造粒机「厂家直销」-莱州鑫瑞迪机械有限公司 | 申江储气罐厂家,储气罐批发价格,储气罐规格-上海申江压力容器有限公司(厂) | 不锈钢水箱厂家,不锈钢保温水箱-山东桑特供水设备 | 交通信号灯生产厂家_红绿灯厂家_电子警察监控杆_标志杆厂家-沃霖电子科技 | 烟雾净化器-滤筒除尘器-防爆除尘器-除尘器厂家-东莞执信环保科技有限公司 | 盛源真空泵|空压机-浙江盛源空压机制造有限公司-【盛源官网】 | 上海皓越真空设备有限公司官网-真空炉-真空热压烧结炉-sps放电等离子烧结炉 | 六自由度平台_六自由度运动平台_三自由度摇摆台—南京全控科技 | 微量水分测定仪_厂家_卡尔费休微量水分测定仪-淄博库仑 | 考试试题_试卷及答案_诗词单词成语 - 优易学 | 动库网动库商城-体育用品专卖店:羽毛球,乒乓球拍,网球,户外装备,运动鞋,运动包,运动服饰专卖店-正品运动品网上商城动库商城网 - 动库商城 | 混合生育酚_醋酸生育酚粉_琥珀酸生育酚-山东新元素生物科技 | 反渗透水处理设备|工业零排放|水厂设备|软化水设备|海南净水设备--海南水处理设备厂家 | 整车VOC采样环境舱-甲醛VOC预处理舱-多舱法VOC检测环境仓-上海科绿特科技仪器有限公司 | 聚氨酯复合板保温板厂家_廊坊华宇创新科技有限公司 | 根系分析仪,大米外观品质检测仪,考种仪,藻类鉴定计数仪,叶面积仪,菌落计数仪,抑菌圈测量仪,抗生素效价测定仪,植物表型仪,冠层分析仪-杭州万深检测仪器网 | 艾默生变频器,艾默生ct,变频器,ct驱动器,广州艾默生变频器,供水专用变频器,风机变频器,电梯变频器,艾默生变频器代理-广州市盟雄贸易有限公司官方网站-艾默生变频器应用解决方案服务商 | 广东护栏厂家-广州护栏网厂家-广东省安麦斯交通设施有限公司 | 科箭WMS仓库管理软件-TMS物流管理系统-科箭SaaS云服务 | 电缆接头_防水接头_电缆防水接头 - 乐清市新豪电气有限公司 | 高温热泵烘干机,高温烘干热泵,热水设备机组_正旭热泵 | 骨灰存放架|骨灰盒寄存架|骨灰架厂家|智慧殡葬|公墓陵园管理系统|网上祭奠|告别厅智能化-厦门慈愿科技 | 淬火设备-钎焊机-熔炼炉-中频炉-锻造炉-感应加热电源-退火机-热处理设备-优造节能 | 多米诺-多米诺世界纪录团队-多米诺世界-多米诺团队培训-多米诺公关活动-多米诺创意广告-多米诺大型表演-多米诺专业赛事 | 解放卡车|出口|济南重汽|报价大全|山东三维商贸有限公司 | 耐火砖厂家,异形耐火砖-山东瑞耐耐火材料厂 | 世界箱包品牌十大排名,女包小众轻奢品牌推荐200元左右,男包十大奢侈品牌排行榜双肩,学生拉杆箱什么品牌好质量好 - Gouwu3.com | 航空障碍灯_高中低光强航空障碍灯_民航许可认证航空警示灯厂家-东莞市天翔航天科技有限公司 |