客户端上可以像下面这样配置日志路径以及日志高亮 。
#配置文件:application.ymllogging:file:name:boot.logpattern:#日志高亮file:'%clr(%d{yyyy-MM-ddHH:mm:ss.SSS}){faint}%clr(%5p)%clr(${PID}){magenta}%clr(---){faint}%clr([%15.15t]){faint}%clr(%-40.40logger{39}){cyan}%clr(:){faint}%m%n%wEx'下面是在 Spring Boot Admin 监测页面上查看的客户端应用日志 。
文章插图
Spring Boot Admin Server 查看日志
5. Spring Boot Admin 进阶5.1. 邮件通知Spring Boot Admin Server 支持常见的通知方式,比如邮件通知、电报通知、PagerDuty 通知等,下面将会演示常见的通知方式 - 邮件通知,最后也会演示如何通过监听时间进下设置自定义通知方式 。
Spring Boot Admin Server 的邮件通知通过 Thymeleaf 模板发送 html 格式的电子邮件 。因此,想要使用邮件通知首先要引入 Thymeleaf 依赖以及 spring-boot-starter-mail 依赖,并配置邮件发送者信息和接受者信息 。
1. 添加依赖

文章插图
2. 配置邮件
主要设置发送者信息和接收者信息 。

文章插图
配置好邮件通知之后,重启服务端和客户端,等客户端注册到服务端之后直接终止客户端的运行,稍等片刻就可以在配置的通知接收邮箱里收到客户端实例下线通知了 。

文章插图
Sping Boot Admin Server 邮件通知
邮件通知使用的模板存放在 server 依赖的 classpath:/META-INF/spring-boot-admin-server/mail/status-changed.html 路径,如果想要自定义模板内容 。可以拷贝这个文件放到自己的 templates 目录下,修改成自己想要的效果,然后在配置中指定自定义模板路径 。

文章插图
5.2 自定义通知
自定义通知只需要自己实现 Spring Boot Admin Server 提供的监听通知类即可,下面会演示如何在实例状态改变时输出实例相关信息 。

文章插图
5.2. 访问限制
上面提到过,因为客户端增加了暴漏运行信息的相关接口,所以在生产环境中使用存在风险,而服务端没有访问限制,谁的可以访问也是不合理的 。
下面将会为客户端和服务端分别增加访问限制,客户端主要是限制敏感接口的访问权限,服务端则是全局的访问限制 。这些访问限制都通过 spring 安全框架 security 来实现,所以首先要为客户端和服务端都增加 maven 依赖 。
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId></dependency>1. 服务端在引入安全框架依赖之后,需要配置访问控制,比如静态资源不需要限制,登录登出页面指定等 。

文章插图

文章插图
在 application.yml 配置文件中配置用户名和密码 。
spring:security:user:name:userpassword:123重启服务端,再次访问就需要用户名和密码进行登录了 。
文章插图
Spring Boot Admin Server 登录
【使用 SpringBoot Admin 监控你的 SpringBoot 程序】2. 客户端
客户端在引入安全框架之后,也需要配置访问权限,主要是配置哪些路径可以访问,哪些路径访问需要登录限制,默认所有接口都需要登录限制 。
同样的,客户端应用也需要在配置中配置客户端应用对于敏感接口的登录用户和密码,同时需要配置 Spring Boot Admin Server 的访问用户和密码,还要把自身的用户和密码注册时告诉服务端,不然服务端不能获取到监测数据 。
推荐阅读
- Linux防火墙常用规则配置
- Centos7 使用ssh进行x11图形界面转发
- 精华露和精华液的区别及使用
- 奶粉空罐 罐装奶粉的罐可以反复使用吗
- 黑客使用的技能有哪些你知道吗?
- WebSocket的基本使用
- Nginx+SpringBoot实现负载均衡
- XMLHttpRequest使用入门
- 网站优化的robots.txt使用
- 每月都在交社保,大多数人不会正确使用,一篇文章看懂!
