jetty访问日志自定义格式

Jetty日志主要有两种:访问日志和应用日志。访问日志主要记录客户端访问jetty的每一个请求,格式可以自定义;应用日志需要在应用中配置日志格式文件。

Jetty自定义访问日志格式必须使用外部jar,具体配置方式可以参考如下链接https://logback.qos.ch/access.html#jetty

1.引用3个jar到lib/ext包中logback-access-1.1.7.jar and logback-core-1.1.7.jar  and slf4j-api-1.7.25.jar

2.修改etc/jetty.xml文件

<Set name="handler">
     <New id="Handlers" class="org.eclipse.jetty.server.handler.HandlerCollection">
       <Set name="handlers">
        <Array type="org.eclipse.jetty.server.Handler">
          <Item>
            <New id="Contexts" class="org.eclipse.jetty.server.handler.ContextHandlerCollection"/>
          </Item>
          <Item>
            <New id="DefaultHandler" class="org.eclipse.jetty.server.handler.DefaultHandler"/>
          </Item>
          <Item>
             <New id="RequestLog" class="org.eclipse.jetty.server.handler.RequestLogHandler"/>
          </Item>
        </Array>
       </Set>
     </New>
   </Set>


<Ref id="RequestLog">
  <Set name="requestLog">
         <New id="requestLogImpl" class="ch.qos.logback.access.jetty.RequestLogImpl">
             <Set name="name">logback-access</Set>
             <Set name="resource">/logback-access.xml</Set>
             <Call name="start"/>
         </New>
  </Set>
</Ref>

3.在logback-access.xml配置输出格式

<configuration>
 <!-- always a good activate OnConsoleStatusListener -->
 <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" /> 

 <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
 <file>logs/access.log</file>
 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
 <fileNamePattern>logs/access.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
 </rollingPolicy>
 <encoder>
 <pattern>{"remote_addr":"%h","http_user_agent":"%i{User-Agent}","time_local":"%date{yyyy-MM-dd HH:mm:ss.SSS}","request":"%r","service_host":"%A","service_name":"%v","status":"%s","body_bytes_sent":"%b","request_time":"%D","app_name":"appname"}</pattern>
 </encoder>
 </appender>
 
 <appender-ref ref="FILE" />
</configuration>

参考地址https://logback.qos.ch/manual/layouts.html#AccessPatternLayout

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值