java - 通过 logback 设置 Undertow 日志级别
问题描述
我在项目中使用 undertow 作为嵌入式休息服务器。该项目使用 logback 进行日志记录。我想做的是通过我的 logback 配置配置所有 Undertow 的日志记录。
我知道我可以通过传递这样的系统属性来启用 sl4fj:
System.setProperty("org.jboss.logging.provider", "slf4j"
但是,它并不打算配置所有 Undertow 的日志记录。例如,如果我在处理程序中的 HttpServerExchange 对象上将 http 状态代码设置为 501,我总是会看到打印的 RuntimeException。
此异常来自 HttpServerExchange setStatusCode(...) 方法。
public HttpServerExchange setStatusCode(final int statusCode) {
if (statusCode < 0 || statusCode > 999) {
throw new IllegalArgumentException("Invalid response code");
}
int oldVal = state;
if (allAreSet(oldVal, FLAG_RESPONSE_SENT)) {
throw UndertowMessages.MESSAGES.responseAlreadyStarted();
}
if(statusCode >= 500) {
**if(UndertowLogger.ERROR_RESPONSE.isDebugEnabled()) {
UndertowLogger.ERROR_RESPONSE.debugf(new RuntimeException(), "Setting error code %s for exchange %s", statusCode, this);
}**
}
this.state = oldVal & ~MASK_RESPONSE_CODE | statusCode & MASK_RESPONSE_CODE;
return this;
}
如何通过 logback 将 UndertowLogger.ERROR_RESPONSE 的日志级别设置为 INFO?
谢谢
解决方案
推荐阅读
- postgresql - EC2 ubuntu 机器无法连接到 PostgreSQL RDS
- python - 如何从 Django Queryset 中获取前 4 个对象
- node.js - 如何使用下划线在字符串数组中查找字符串的完全匹配
- javascript - 该脚本仅激活主菜单项。如何使代码适用于子项
- python - django:在带有注释的 Sum 函数中使用 if else 或 while else?无法计算总和('
我想为我的
Sum
函数设置一个条件,annotate
我尝试使用Case
When
但它在我的情况下不起作用这是我的models.py
- javascript - 在 UI 中处理 API 的数据和错误的流程
- css - 如何根据字符宽度在css中设置宽度?
- c++ - OpenMP 与有序指令和关键指令并行
- ios - 停留在指南 5.1.1 - 法律 - 隐私 - 数据收集和存储
- c - 在具有类型成员的结构定义处编译错误,指向 C 中的结构数组的指针