У меня есть веб-сервер RESTEasy с множеством методов. Я хочу реализовать logback для отслеживания всех запросов и ответов, но я не хочу добавлять log.info()
к каждому методу.
Может быть, есть способ поймать запросы и ответы в одном месте и занести в журнал. Возможно, что-то вроде фильтра на цепочке запросов HTTP-запроса на RESTEasy.
@Path("/rest")
@Produces("application/json")
public class CounterRestService {
//Don't want use log in controler every method to track requests and responces
static final Logger log = LoggerFactory.getLogger(CounterRestService.class);
@POST
@Path("/create")
public CounterResponce create(@QueryParam("name") String name) {
log.info("create "+name)
try {
CounterService.getInstance().put(name);
log.info("responce data"); // <- :((
return new CounterResponce();
} catch (Exception e){
log.info("responce error data"); // <- :((
return new CounterResponce("error", e.getMessage());
}
}
@POST
@Path("/insert")
public CounterResponce create(Counter counter) {
try {
CounterService.getInstance().put(counter);
return new CounterResponce();
} catch (Exception e){
return new CounterResponce("error", e.getMessage());
}
}
...
}