com.aol.micro.server.log4j.rest.Log4jRootLoggerResource Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of micro-log4j Show documentation
Show all versions of micro-log4j Show documentation
Opinionated rest microservices
package com.aol.micro.server.log4j.rest;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import com.aol.micro.server.auto.discovery.SingletonRestResource;
import com.aol.micro.server.log4j.service.Log4jRootLoggerChecker;
@Component
@Path("/log4j/rootlogger")
public class Log4jRootLoggerResource implements SingletonRestResource {
private final Log4jRootLoggerChecker checker;
@Autowired
public Log4jRootLoggerResource(Log4jRootLoggerChecker checker ){
this.checker = checker;
}
Log4jRootLoggerResource() {
this.checker = null;
}
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/get/level")
public String getLevel() {
return Logger.getRootLogger().getLevel().toString();
}
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/change/to/all")
public String changeToAll() {
Logger.getRootLogger().setLevel(Level.ALL);
return getLevel();
}
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/change/to/debug")
public String changeToDebug() {
Logger.getRootLogger().setLevel(Level.DEBUG);
return getLevel();
}
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/change/to/error")
public String changeToError() {
Logger.getRootLogger().setLevel(Level.ERROR);
return getLevel();
}
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/change/to/fatal")
public String changeToFatal() {
Logger.getRootLogger().setLevel(Level.FATAL);
return getLevel();
}
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/change/to/info")
public String changeToInfo() {
Logger.getRootLogger().setLevel(Level.INFO);
return getLevel();
}
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/change/to/off")
public String changeToOff() {
Logger.getRootLogger().setLevel(Level.OFF);
return getLevel();
}
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/change/to/trace")
public String changeToTrace() {
Logger.getRootLogger().setLevel(Level.TRACE);
return getLevel();
}
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/change/to/warn")
public String changeToWarn() {
Logger.getRootLogger().setLevel(Level.WARN);
return getLevel();
}
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/checker/is/{active}")
public String setCheckerActive(@PathParam("active") final boolean active) {
checker.setActive(active);
return String.valueOf(checker.isActive());
}
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("/checker/level/{correctLevelStr}")
public String setCheckerCorrectLevel(@PathParam("correctLevelStr") final String correctLevelStr) {
checker.setCorrectLevelStr(correctLevelStr);
return checker.getCorrectLevelStr();
}
}