У меня есть собственное исключение, подобное этому
@ResponseStatus(HttpStatus.UNAUTHORIZED)
public class AccessException extends RuntimeException {
}
Но когда я бросаю его из @RestController, он регистрирует это:
2018-04-17 11:44:58.239 WARN 17928 --- [nio-8080-exec-3] .w.s.m.a.ResponseStatusExceptionResolver : Resolved exception caused by Handler execution: site.user.AccessException
Я попытался проверить исходный код, но не смог найти, где это регистрируется. Я не хочу отключать ведение журнала, потому что оно может регистрировать другие вещи, которые меня интересуют. Я просто не думаю, что такое настраиваемое исключение должно регистрироваться каждый раз.




Вы можете установить уровень журнала для класса org.springframework.web.servlet.mvc.annotation.ResponseStatusExceptionResolver на ERROR. Таким образом, вы потеряете журналы WARN, DEBUG и TRACE только для этого класса.
Если есть какие-то исключения уровня WARN, которые вы хотите видеть в этом классе, я вижу два варианта:
org.springframework.web.servlet.mvc.annotation.ResponseStatusExceptionResolver в свою кодовую базу, измените логирование. Убедитесь, что ваша копия находится вверху пути к классам, а Spring - внизу. Это своего рода взлом. ResponseStatusExceptionResolver - это деталь реализации Spring. Он может быть изменен / перемещен / удален в будущем выпуске.В Spring вы можете добавить эту строку в свой application.properties, чтобы указать уровень ведения журнала для определенного класса:
logging.level.site.user.AccessException=ERROR
или же
logging.level.site.user.AccessException=OFF
В том же классе есть еще один регистратор уровня предупреждений для неаннотированных классов исключений, которые я не хочу терять.