I wanted to customize logging, to only show un-successful requests.  The  
servlets do their own application specific tracking, so writing out  those is 
un-neccessary.  Wrote this class & placed the jar in  lib/ext:

package jettyReplacements;

import org.eclipse.jetty.server.*;

public final class RequestLogger extends NCSARequestLog{
    public RequestLogger(){
        super();
    }

    public RequestLogger(final String filename){
        super(filename);
    }
    
    @Override
    public void log(final Request request, final Response response){
        if (response.getStatus() != 200) super.log(request, response);
    }
}

I copied etc/jetty-requestlog.xml, edit it as shown below, & referenced it 
in start.ini:

>;?xml version="1.0"?;!DOCTYPE Configure PUBLIC 
>"-//Jetty//Configure//EN" 
>"http://www.eclipse.org/jetty/configure.dtd";!-- 
>=============================================================== --;!-- 
>Configure the Jetty Request Log                                 --;!-- 
>=============================================================== --;Configure 
>id="Server" class="org.eclipse.jetty.server.Server";!-- 
>=========================================================== --;!-- Configure 
>Request Log                                       --;!-- 
>=========================================================== --;Ref 
>id="Handlers";Call name="addHandler";Arg;New 
>id="RequestLog" 
>class="org.eclipse.jetty.server.handler.RequestLogHandler";Set 
>name="requestLog";New id="RequestLogImpl" 
>class="jettyReplacements.RequestLogger";Set 
>name="filename";Property  name="jetty.logs"  
>default="./logs"/;/Set;Set 
>name="filenameDateFormat";/Set;Set 
>name="retainDays";/Set;Set name="append";/Set;Set 
>name="extended";/Set;Set name="logCookies";/Set;Set 
>name="LogTimeZone";/Set;/New;/Set;/New;/Arg;/Call;/Ref;/Configure
_______________________________________________
jetty-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/jetty-users

Reply via email to