Spring Boot Admin监控服务上下线邮件通知
程序员文章站
2022-07-07 14:42:56
...
转载自:http://cxytiandi.com/blog/detail/13376 https://my.oschina.net/lsf930709/blog/847720
叙述
微服务架构下,服务的数量少则几十,多则上百,对服务的监控必不可少。
如果是以前的单体项目,启动了几个项目是固定的,可以通过第三方的监控工具对其进行监控,然后实时告警。
在微服务下,服务数量太多,并且可以随时扩展,这个时候第三方的监控功能就不适用了,我们可以通过Spring Boot Admin连接注册中心来查看服务状态,这个只能在页面查看。
很多时候更希望能够自动监控,通过邮件告警,某某服务下线了这样的功能。在Spring Boot Admin中其实已经有这样的功能了,我们只需要配置一些邮件的信息就可以使用。
环境
首先引入邮件需要的依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
配置
然后在配置文件中增加邮件服务器的信息:
spring.mail.host=smtp.qq.com
aaa@qq.com
spring.mail.password=qq邮箱的授权码
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
# 发送给谁
aaa@qq.com
# 是谁发送出去的
aaa@qq.com
配置完成之后,当服务上线下线的时候,您的邮箱就可以收到邮件啦。
异常
附,可能会遇到的异常:
Caused by: javax.mail.AuthenticationFailedException: 535 Error: ÇëʹÓÃÊÚȨÂëµÇ¼¡£ÏêÇéÇë¿´: http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256
at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:932)
at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:843)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:748)
at javax.mail.Service.connect(Service.java:366)
at org.springframework.mail.javamail.JavaMailSenderImpl.connectTransport(JavaMailSenderImpl.java:501)
at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:421)
... 32 more
遇到这个异常的时候不要着急,是因为还没有去邮箱那里设置开启POP3/SMTP服务,操作步骤如下:
邮箱—>设置—>账户,然后拉下来,找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务
开启服务:POP3/SMTP服务
开启好了POP3/SMTP服务之后,会有一个授权码,这个授权码就是上述说到的spring.mail.password
推荐阅读
-
服务监控之spring-boot-admin
-
Spring Boot Admin监控服务上下线邮件通知
-
spring boot admin服务监控
-
spring cloud微服务快速教程之(六) 应用监控 spring boot admin
-
使用spring-boot-admin对spring-boot服务进行监控的实现方法
-
SpringBoot 2.0 学习(八)使用Spring Boot Admin监控服务
-
Spring Boot Admin 2.0 监控Spring Cloud服务
-
服务监控之spring-boot-admin
-
spring boot admin服务监控
-
spring cloud微服务快速教程之(六) 应用监控 spring boot admin