I am trying to embed Jetty 6.1 in another program. Jetty is dumping INFO-log information and I need to turn it off. Is there a simple way to disable logging programmaticaly?
I've had success in creating a dummy logger that discards everything it's ever asked to log, and then passing it into Log.setLog(...).
E.g.
private static class DummyLogger implements Logger {
@Override
public String getName() {
return "DummyLogger";
}
@Override
public void warn(String msg, Object... args) {}
@Override
public void warn(Throwable thrown) {}
@Override
public void warn(String msg, Throwable thrown) {}
@Override
public void info(String msg, Object... args) {}
@Override
public void info(Throwable thrown) {}
@Override
public void info(String msg, Throwable thrown) {}
@Override
public boolean isDebugEnabled() {return false; }
@Override
public void setDebugEnabled(boolean enabled) {}
@Override
public void debug(String msg, Object... args) {}
@Override
public void debug(Throwable thrown) {}
@Override
public void debug(String msg, Throwable thrown) {}
@Override
public Logger getLogger(String name) {return this; }
@Override
public void ignore(Throwable ignored) {}
}
For reference, I used these packages:
import org.eclipse.jetty.util.log.Log;
import org.eclipse.jetty.util.log.Logger;
instead of the mortbay ones, but they should probably behave the same (or at least similarly).