制作自定义 SLF4J 记录器

Make a custom SLF4J Logger

我有一个使用 slf4j 进行日志记录的应用程序。现在我想添加一个功能,每当我记录错误时,都会调用特定的 url 。 目前我在应用程序级别添加了一个包装器方法,它发送 http 请求然后调用记录器方法。但是这样我就错过了一些输出,一些异常只是在没有发送相应请求的情况下被记录下来。 我正在尝试制作我的自定义记录器 class。我的问题是我应该扩展哪个 classes(或要实现的接口)。 我不能扩展 Logger class 因为它的构造函数不是 public。实现 Logger 接口似乎令人生畏,因为所有方法都是抽象的。 NOPLogger 没有这些问题,但它的 info(或 error...)方法是最终的,不能扩展,它们什么都不做,猜猜名字的由来。 我已经实现了 ILoggerFactory 接口到 return 我自己的 Logger 实例。

如果您的记录器库是 Logback,您可能会误用 filters。让一切都通过你的过滤器,如果它是一个错误,另外发送你的 HTTP 请求。