eclipse - 重定向 ILog 消息

标签 eclipse logging eclipse-rcp ilog

我目前正在开发 RCP Eclipse 应用程序。出于日志记录的目的,我使用 SFL4J 而不是 log4j。对于我自己的代码,这很有效,因为我可以指定正确的记录器(LoggerFactory.getLogger ... logger.debug ...)。但是如何将所有插件日志重定向到同一位置,以便我可以在 log4j-LogFile 中看到其他 rcp 插件的所有异常。如何在日志文件中记录未捕获的异常?

我听说过一些有关 ILog 的信息,但我不知道如何将其重定向到我的 log4j/slf4j 实现。

那么将所有插件消息记录在一个日志文件中的最佳方法是什么?

最佳答案

要捕获整个平台的日志事件,请创建一个 ILogListener 实例并使用 Platform.addLogListener(ILogListener) 注册它。

对于记录未捕获的异常,一种方法是创建一个新的 ThreadGroup 并重写 uncaughtException(Thread t, Throwable e) 来记录异常。然后,您必须在该线程组中启动一个新线程并在其中执行其他所有操作。我在 IPlatformRunnable 实现的 run 方法中处理了这个问题。

关于eclipse - 重定向 ILog 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/156821/

相关文章:

eclipse - 如何在 Equinox 中获取 bundle 的类加载器?

Groovy 脚本的 Eclipse RCP 独立导出问题

logging - 使用一些指标导出器 + Prometheus + Grafana 监控日志文件

eclipse - Eclipse 插件中的 Clojure 类路径问题

java - 在java中的SWT树中父子树中检查和取消选中组合

java - 更改两个 Eclipse 实例之一的颜色

eclipse - Pydev "Undefine variable from import"在 Ubuntu 上使用 pygame 而不是 Windows

c# - 将数据从SSIS错误日志表加载到SQL Server表时出错

java - Tinylog 是否可以与池连接一起使用?

java - 我可以在 SWT FileDialog 过滤器中隐藏文件扩展名吗?