本文以两个独立服务为例,http使用hutool工具
- 引入依赖(provider和consumer)
<dependency>
<groupId>com.yomahub</groupId>
<artifactId>tlog-all-spring-boot-starter</artifactId>
<version>1.5.0</version>
</dependency>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.8.11</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
- 日志配置(provider和consumer)
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false">
<springProperty name="APP_NAME" source="spring.application.name"/>
<property name="LOG_HOME" value="./logs" />
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${LOG_HOME}/${APP_NAME}.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<FileNamePattern>${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<MaxHistory>30</MaxHistory>
<maxFileSize>1000MB</maxFileSize>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- 这里替换成AspectLogbackAsyncAppender -->
<appender name="ASYNC_FILE" class="com.yomahub.tlog.core.enhance.logback.async.AspectLogbackAsyncAppender">
<discardingThreshold>0</discardingThreshold>
<queueSize>2048</queueSize>
<includeCallerData>true</includeCallerData>
<appender-ref ref="FILE"/>
</appender>
<root level="INFO">
<appender-ref ref="STDOUT" />
<appender-ref ref="ASYNC_FILE" />`在这里插入代码片`
</root>
</configuration>
- 编码
provider:
@SpringBootApplication
@RestController
@Slf4j
public class SpringbootTlogApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootTlogApplication.class, args);
}
@GetMapping("request")
public void aa(HttpServletRequest request) {
log.info("-----------请求---------");
}
}
consumer:
package com.tlog.springboottlog.controller;
import cn.hutool.http.HttpRequest;
import com.yomahub.tlog.hutoolhttp.TLogHutoolhttpInterceptor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author CaiDingNu
* @desc
* @date 2023/01/17 15:47
*/
@RestController
@Slf4j
public class TestController {
static final TLogHutoolhttpInterceptor tLogHutoolhttpInterceptor = new TLogHutoolhttpInterceptor();
@GetMapping("a")
public void aa(Integer name) {
log.info("开始请求---------------------------");
String s = HttpRequest.get("http://127.0.0.1:911/user/request").addInterceptor(tLogHutoolhttpInterceptor).execute().body();
log.info("请求结束-------------------------{}",s);
}
}
- 结果
在logs文件夹下查看日志文件
consumer:
provider:
官方文档:https://tlog.yomahub.com/ gitee:https://gitee.com/dromara/TLog