dtcms网站开发教程,法治网站的建设整改措施,上海网站建设公司网,网站开发和游戏开发的区别添加Actuator功能
Spring Boot Actuator可以帮助程序员监控和管理SpringBoot应用#xff0c;比如健康检查、内存使用情况统计、线程使用情况统计等。我们在SpringBoot项目中添加Actuator功能#xff0c;即可使用Actuator监控
项目#xff0c;用法如下#xff1a;
在被监…添加Actuator功能
Spring Boot Actuator可以帮助程序员监控和管理SpringBoot应用比如健康检查、内存使用情况统计、线程使用情况统计等。我们在SpringBoot项目中添加Actuator功能即可使用Actuator监控
项目用法如下
在被监控的项目中添加Actuator起步依赖 org.springframework.boot spring-boot-starter-actuator
在配置文件中开启所有监控端点 #开启所有监控端点 management.endpoints.web.exposure.include*
测试: 访问项目http://localhost:8080/actuator
图片
可以看到有很多json格式的字符串这些都是该路径下的相关资源信息并且通过URL可以调用actuator的功能 图片
例如查询日志信息数据访问localhost:8080/actuator/loggers
图片
SpringBoot指标监控 Spring Boot Admin
Actuator使用JSON格式展示了大量指标数据不利于我们查看我们可以使用可视化工具Spring Boot Admin查看actuator生成指标数据。Spring Boot Admin是一个独立的项目我们需要创建并运 行该项目。
创建Spring Boot Admin服务端项目
创建SpringBoot项目添加SpringMVC和Spring Boot Admin服务端起步依赖 org.springframework.boot spring-boot-starter-web de.codecentric spring-boot-admin-starter-server org.springframework.boot spring-boot-starter-test test
修改配置文件
因为这里是服务端项目要监控其他项目因此要单独设置一个端口就为9090吧然后再自定义一下日志格式
端口号
server.port9090 #日志格式 logging.pattern.console%d{YYYY-MM-dd HH:mm:ss.SSS} %clr(%-5level) — [%-15thread] %cyan(%-50logger{50}):%msg%n
修改启动类
这里我们需要在启动类上方添加注解证明这是一个指标监控服务端 package com.example.springbootadmin; import de.codecentric.boot.admin.server.config.EnableAdminServer; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; SpringBootApplication // 开启SpringBoot Admin Server端 EnableAdminServer public class SpringbootadminApplication { public static void main(String[] args) { SpringApplication.run(SpringbootadminApplication.class, args); } }
运行项目 图片 这里是还没有连接项目进行指标监控的
连接Spring Boot Admin项目
同样地被监控项目添加Spring Boot Admin客户端起步依赖 de.codecentric spring-boot-admin-starter-client
修改配置文件
应用服务 WEB 访问端口
server.port8080 #Spring boot admin访问地址 spring.boot.admin.client.urlhttp://localhost:9090 #日志格式 logging.pattern.console%d{YYYY-MM-dd HH:mm:ss.SSS} %clr(%-5level) — [%-15thread] %cyan(%-50logger{50}):%msg%n
运行项目
此时Spring Boot Admin即可连接被监控的项目再刷新就可以看到有实例连接成功。
图片
SpringBoot日志管理
SpringBoot默认使用Logback组件作为日志管理。Logback是log4j创始人设计的一个开源日志组件。在SpringBoot项目中我们不需要额外的添加Logback的依赖因为在 spring-boot-parent 中已经包含了Logback的依赖。
在 /resources 下添加Logback配置文件logback.xml ?xml version1.0 encodingUTF-8 ? %d{HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n ${LOG_HOME}/server.%d{yy99-MM-dd}.log 30 %d{HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n 10MB 注Logback配置文件名为logback-test.xml或logback.xml如果classpath下没有这两个文件LogBack会自动进行最小化配置。
运行结果如下图 图片
在代码中打印日志 package com.example.springbootdlogback.controller; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; Controller public class PrintLogController { private final static Logger looger LoggerFactory.getLogger(PrintLogController.class); RequestMapping(“/printlog”) ResponseBody public String showInfo(){ looger.info(“记录日志”); return “Hello Back!”; } } 如果日志过多可以屏蔽一些包的日志在配置文件中配置
屏蔽or包中的日志输出
#屏蔽org包中的日志输出