带有 HTTP 附加程序的 Log4J 故障转移附加程序
Log4J failover appender with HTTP appender
所以我将 failoverappender 与主要的 HTTP appender 一起使用。 FailoverAppender 文档状态:
FailoverAppender 将捕获 Appender 中的异常,然后将事件路由到不同的 appender。
我找不到任何文档,但是当 HTTPappender 实际抛出异常时。所以我想知道的是,如果我的 HTTP post 请求 returns 4XX 或 5XX 代码,这实际上会引发 log4j 异常并激活故障转移吗?
是的,如果返回 4xx
或 5xx
状态代码,将使用故障转移附加程序。
HttpAppender
抛出哪些异常取决于 HttpManager
in use. Right now the HttpURLConnectionManager
is hardcoded into Log4j, which relies upon your system's implementation of HttpURLConnection
实现的实现。
A 4xx
或 5xx
状态码是 OpenJDK 中的标准 HttpURLConnection
抛出异常的原因之一(参见 source code)。
所以我将 failoverappender 与主要的 HTTP appender 一起使用。 FailoverAppender 文档状态:
FailoverAppender 将捕获 Appender 中的异常,然后将事件路由到不同的 appender。
我找不到任何文档,但是当 HTTPappender 实际抛出异常时。所以我想知道的是,如果我的 HTTP post 请求 returns 4XX 或 5XX 代码,这实际上会引发 log4j 异常并激活故障转移吗?
是的,如果返回 4xx
或 5xx
状态代码,将使用故障转移附加程序。
HttpAppender
抛出哪些异常取决于 HttpManager
in use. Right now the HttpURLConnectionManager
is hardcoded into Log4j, which relies upon your system's implementation of HttpURLConnection
实现的实现。
A 4xx
或 5xx
状态码是 OpenJDK 中的标准 HttpURLConnection
抛出异常的原因之一(参见 source code)。