Spring Boot 2 включает Stacktrace, когда не задан параметр Trace - PullRequest
0 голосов
/ 28 апреля 2018

после обновления с Spring Boot 1.5.12 до 2.0.1 система включает трассировку стека в случае ошибки, даже если параметр трассировки «trace» не указан в URL-адресе (или ошибочно указан с недопустимым значением) ).

Я настроил

server.error.include-StackTrace = на след-парам

в моем приложении. Свойства.

Когда я вызываю мое приложение, которое выдает ошибку, через http://localhost/myApp система возвращает заполненный след.

Когда я звоню через http://localhost/myApp?trace=false, это не так.

Когда я звоню по номеру http://localhost/myApp?trace=hugo, он делает это и также http://localhost/myApp?trace=true.

В Spring Boot 1 этого не было. Там система включала трассировку стека, только когда одна указанная трасса = true, что является ожидаемым поведением.

Было ли это поведение изменено с версии 1 на 2?

Чао, Майкл

1 Ответ

0 голосов
/ 17 января 2019

это код в springboot2.0.3

protected boolean getTraceParameter(HttpServletRequest request) {
    String parameter = request.getParameter("trace");
    return !"false".equalsIgnoreCase(parameter);
}

в springboot2.1

protected boolean getTraceParameter(HttpServletRequest request) {
    String parameter = request.getParameter("trace");
    if (parameter == null) {
        return false;
    }
    return !"false".equalsIgnoreCase(parameter);
}

обновить версию Springboot до 2.1, чтобы решить проблему

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