Установка только перед журналами запросов CommonsRequestLoggingFilter в Spring Boot - PullRequest
0 голосов
/ 04 февраля 2019

CommonsRequestLoggingFilter довольно хорошо регистрирует запросы, но в моем случае это то же самое, что и до и после обработки запроса, что является дубликатом и избыточностью.Я хочу избавиться от логов после обработки запросов, но не смог найти, как это сделать.Есть идеи?

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.filter.CommonsRequestLoggingFilter;

@Configuration
public class RequestLoggingFilterConfig {

    @Bean
    public CommonsRequestLoggingFilter logFilter() {
        CommonsRequestLoggingFilter filter = new CommonsRequestLoggingFilter();
        filter.setIncludeClientInfo(true);
        filter.setIncludeHeaders(true);
        filter.setIncludePayload(false);
        filter.setIncludeQueryString(true);
        return filter;
    }
}

Я начал с здесь.

1 Ответ

0 голосов
/ 24 мая 2019

Класс org.springframework.web.filter.CommonsRequestLoggingFilter является просто подклассом org.springframework.web.filter.AbstractRequestLoggingFilter .Таким образом, пропустите CommonsRequestLoggingFilter и напишите свой собственный подкласс и оставьте перезаписанный метод afterRequest() пустым.

public class CustomizedRequestLoggingFilter extends AbstractRequestLoggingFilter {

    @Override
    protected void beforeRequest(HttpServletRequest httpServletRequest, String message) {
        this.logger.debug(message);
    }

    @Override
    protected void afterRequest(HttpServletRequest httpServletRequest, String message) {

    }
}

Используйте этот класс вместо org.springframework.web.filter.CommonsRequestLoggingFilter

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...