SpringBoot与监控
2021-03-15 01:30
阅读:639
YPE html>
标签:事件 ons 次数 垃圾 monit depend htm logger yml
SpringBoot与监控
本文只是介绍最基本的使用
1、SpringBootAdmin是什么?
- Spring Boot Admin 是由 codecentric 组织开发的开源项目,使用 Spring Boot Admin 可以管理和监控你的 Spring Boot 项目。它分为客户端和服务端两部分,客户端添加到你的 Spring Boot 应用增加暴漏相关信息的 HTTP 接口,然后注册到 Spring Boot Admin 服务端,这一步骤可以直接向服务端注册,也可以通过 Eureka 或者 Consul 进行注册。而 Spring Boot Admin Server 通过 Vue.js 程序监控信息进行可视化呈现。并且支持多种事件通知操作
2、SpringBootAdmin的作用?
- 应用运行状态,如时间、垃圾回收次数,线程数量,内存使用走势。
- 应用性能监测,通过选择 JVM 或者 Tomcat 参数,查看当前数值。
- 应用环境监测,查看系统环境变量,应用配置参数,自动配置参数。
- 应用 bean 管理,查看 Spring Bean ,并且可以查看是否单例。
- 应用计划任务,查看应用的计划任务列表。
- 应用日志管理,动态更改日志级别,查看日志。
- 应用 JVM 管理,查看当前线程运行情况,dump 内存堆栈信息。
- 应用映射管理,查看应用接口调用方法、返回类型、处理类等信息。
3、源代码和官方手册(官方手册私以为是最好的学习资料)
- 源代码地址:https://github.com/codecentric/spring-boot-admin
- 官方使用手册:https://codecentric.github.io/spring-boot-admin/current/
4、环境准备
- nacos:2.1.0
- spring-boot-admin-starter-server:2.2.2
- spring-boot-starter-web:2.2.2
- spring-boot-starter-actuator:2.2.2
- spring-boot-admin-starter-client:2.2.2
- JDK:1.8
- 开发工具:IDEA 2019.3
5、搭建admin端
5.1、pom
com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-discovery
de.codecentric
spring-boot-admin-starter-server
2.2.2 org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-actuator
5.2、yml
server:
port: 9000
spring:
application:
name: cloud-monitoring-admin
cloud:
nacos:
discovery:
#配置Nacos地址
server-addr: localhost:18848
# 测试暴露所有端点
management:
endpoints:
web:
exposure:
include: "*"
endpoint:
health:
show-details: ALWAYS
5.3、启动类
@SpringBootApplication( exclude = {DataSourceAutoConfiguration.class})
@EnableDiscoveryClient
//该注解启动监控
@EnableAdminServer
public class MonitoringAdminApplication {
public static void main(String[] args) {
SpringApplication.run(MonitoringAdminApplication.class,args);
}
}
5.4、启动nacos和监控admin端
- 该服务以经注册在nacos上
-
http://localhost:9000/、
监控admin端已经搭建成功
6、搭建client端
6.1、pom
de.codecentric
spring-boot-admin-starter-client
2.2.2 org.mybatis.spring.boot
mybatis-spring-boot-starter
2.0.0 org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-actuator
org.springframework.boot
spring-boot-starter-test
test org.projectlombok
lombok
true
6.2、yaml
server:
port: 9002
spring:
application:
name: cloud-monitoring-client-02
cloud:
nacos:
discovery:
server-addr: localhost:18848 #配置Nacos地址
#监控暴漏所有端点
management:
endpoints:
web:
exposure:
include: ‘*‘
endpoint:
health:
show-details: ALWAYS
# 启动日志任务
logfile:
enabled: true
#日志的配置
logging:
file:
name: RiestSpringWeb.log.2020-11-20.0.log
pattern:
#日志格式
file: ‘%clr(%d{yyyy-MM-dd HH: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‘
6.3、启动类
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
@EnableDiscoveryClient
public class MonitoringClient02Application {
public static void main(String[] args) {
SpringApplication.run(MonitoringClient02Application.class, args);
}
}
6.4、启动client
- 已经被监控
6.5、日志的动态设置
- 可以看到启动日志已经输出到web见面
- 动态设置日志输出级别
7、配置邮件通知功能(admin端配置)
7.1、加入邮件以及模板引擎的依赖(admin的pom)
org.springframework.boot
spring-boot-starter-mail
org.springframework.boot
spring-boot-starter-thymeleaf
7.2、加入邮件配置
server:
port: 9000
spring:
application:
name: cloud-monitoring-admin
cloud:
nacos:
discovery:
server-addr: localhost:18848 #配置Nacos地址
# 开启springbootadmin的邮件任务
boot:
admin:
notify:
mail:
# 逗号分隔的邮件收件人列表
to: 2575101192@qq.com
# 开启邮箱通知
enabled: true
# 不需要发送通知的状态:从状态A:到状态B
ignore-changes: {"UNKNOWN:UP"}
# 逗号分隔的抄送收件人列表
# cc: 2575101192@qq.com
# 发件人
from: 2575101192@qq.com
#邮件模板
template: "classpath:templates/RegisterSuccess.html"
mail:
host: smtp.qq.com
port: 465
username: 2575101192@qq.com
default-encoding: utf-8
# 密码配置成授权码
password: qq邮箱授权码
properties:
mail:
smtp:
ssl:
enable: true
management:
endpoints:
web:
exposure:
include: "*"
endpoint:
health:
show-details: ALWAYS
7.3、qq邮箱设置拿到授权码
7.4、写一个简单的模板(在admin 的resource/templates/RegisterSuccess.html)
注册成功通知
您好!
springbootadmin监控:
标题: xxx应用下线
请检查!!!
7.5、启动admin的client
7.6、关闭client端
后续收到对应的邮件通知
TO BE CONTINUED
SpringBoot与监控
标签:事件 ons 次数 垃圾 monit depend htm logger yml
原文地址:https://www.cnblogs.com/dgjword/p/14016016.html
评论
亲,登录后才可以留言!