log4j模板及注释

########################### 配置日志输出到控制台--开始 ###########################
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out
#配置 stdout 日志输出的布局模式为:org.apache.log4j.PatternLayout
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
#配置 stdout 日志输出的格式
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p %c{1}:%L - %m%n
########################### 配置日志输出到控制台--结束 ###########################

########################### 配置日志输出到指定的文件(ServletDemo.log)--开始 ###########################
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=mylog/ServletDemo.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
#定义 file 输出文件的最大长度
#log4j.appender.file.MaxFileSize = 1KB
#定义 file 的备份文件数
#log4j.appender.file.MaxBackupIndex = 3
#定义 file 的布局模式为PatternLayout
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p %c{1}:%L - %m%n
########################### 配置日志输出到指定的文件(ServletDemo.log)--结束 ###########################

#配置日志输入的类型及显示位置,格式:输入的日志级别,输出位置1,....,输出位置N
#Log4j默认把日志信息分为五个等级:debug < info < warn < error < fatal,如果设置 info等级,则小于 info 等级的日志不输出
log4j.rootLogger=info, stdout, file

log4j.appender.stdout=org.apache.log4j.ConsoleAppender  名为stdout的输出端是控制台

log4j.appender.stdout.Target=System.out   就是把日志输出到系统标准输出设备上,默认就是这个值。

log4j.appender.file=org.apache.log4j.FileAppender  名为stdout的输出目的地是文件


这段代码是一个实现了Feign中RequestInterceptor接口的拦截器类,其作用是在Feign发送请求前拦截请求,并将请求头中的所有信息添加到请求模板中,从而实现将请求头信息转发到下游服务的目的。 ``` @Slf4j // lombok注解,用于自动生成日志对象 @Component // Spring注解,将该类声明为一个组件 public class FeignRequestInterceptor implements RequestInterceptor { @Override public void apply(RequestTemplate requestTemplate) { // 实现RequestInterceptor接口中的apply方法 try { HttpServletRequest request = RequestUtil.getRequest(); // 获取当前请求的HttpServletRequest对象 Enumeration<String> headerNames = request.getHeaderNames(); // 获取请求头中所有的头字段名称 while (headerNames.hasMoreElements()) { // 遍历头字段名称 String headerName = headerNames.nextElement(); // 获取当前头字段名称 requestTemplate.header(headerName, request.getHeader(headerName)); // 将当前头字段名称和对应的值添加到请求模板中 } } catch (Exception e) { log.warn(e.getMessage(), e); // 记录异常信息到日志中 } } } ``` 总体来看,本段代码实现了一个Feign请求拦截器,用于在Feign发送请求前将请求头中的所有信息添加到请求模板中,从而实现将请求头信息转发到下游服务的目的。具体实现上,通过获取当前请求的HttpServletRequest对象,遍历其中的所有头字段名称,将其和对应的值添加到请求模板中。在处理过程中,如果出现异常,则会将异常信息记录到日志中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值