SpringBoot使用admin+actuator实现日志可视化的方法
作者:天宇_任
如何在SpringBoot中使用Admin和Actuator实现日志可视化,需配置pom依赖、yml参数及logback路径,确保两者一致,启动服务后通过指定端口访问日志界面,并检查404错误原因,感兴趣的朋友一起看看吧
1:创建admin服务端
pom文件依赖如下
<dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-server</artifactId> <version>2.3.1</version> </dependency>
yml配置如下
server: port: 8081
management: trace: http: enabled: true endpoints: web: exposure: include: "*" endpoint: health: show-details: always
如果需要注册到nacos或者其他注册中心,可以按需添加
启动类需要加上
@EnableAdminServer注解启动
2:服务端配置
pom配置如下
dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> <version>2.3.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>2.3.7.RELEASE</version> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-client</artifactId> <version>2.3.1</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> <version>2.3.7.RELEASE</version> </dependency>
yml配置如下
server: port: 8080 # 微服务端口 spring: application: name: clientServer # 服务名称 boot: admin: client: url: http://localhost:8081 # Admin Server地址
logging: config: classpath:logback-spring.xml file: name: logs/clientServer/debug.log pattern: file: "%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n" management: endpoints: web: exposure: include: "*" # 暴露所有Actuator端点(生产环境建议按需配置) endpoint: health: show-details: always logfile: external-file: ${logging.file.name} enabled: true
logback-spring中的地址要和yml地址一致,例:
<?xml version="1.0" encoding="UTF-8"?> <configuration debug="false" scan="false"> <springProperty scop="context" name="spring.application.name" source="spring.application.name" defaultValue=""/> <property name="log.path" value="logs/clientServer" /> <!-- 彩色日志格式 --> <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}" /> <!-- 彩色日志依赖的渲染类 --> <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" /> <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" /> <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" /> <!-- Console log output --> <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>${CONSOLE_LOG_PATTERN}</pattern> </encoder> </appender> <!-- Log file debug output --> <appender name="debug" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${log.path}/debug.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <fileNamePattern>${log.path}/%d{yyyy-MM}/debug.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern> <maxFileSize>50MB</maxFileSize> <maxHistory>30</maxHistory> </rollingPolicy> <encoder> <pattern>%date [%thread] %-5level [%logger{50}] %file:%line - %msg%n</pattern> </encoder> </appender> <!-- Log file error output --> <appender name="error" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${log.path}/error.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <fileNamePattern>${log.path}/%d{yyyy-MM}/error.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern> <maxFileSize>50MB</maxFileSize> <maxHistory>30</maxHistory> </rollingPolicy> <encoder> <pattern>%date [%thread] %-5level [%logger{50}] %file:%line - %msg%n</pattern> </encoder> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>ERROR</level> </filter> </appender> <!-- Level: FATAL 0 ERROR 3 WARN 4 INFO 6 DEBUG 7 --> <root level="INFO"> <appender-ref ref="console" /> <appender-ref ref="debug" /> <appender-ref ref="error" /> </root> </configuration>
启动服务端,打开http://localhost:8081/
就可以看到注册进去的服务了
点击对应的服务名可以看到服务对应的日志
如果日志页面报错404,一定要检查yml配置的日志路径和logback-spring.xml中的路径是否一致
到此这篇关于SpringBoot使用admin+actuator实现日志可视化的文章就介绍到这了,更多相关SpringBoot日志可视化内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!