如果jenkins插件依赖项正在使用slf4j,则控制台记录的最佳做法是什么?

时间:2019-05-22 10:34:34

标签: jenkins jenkins-plugins slf4j

我正在开发使用另一个库的Jenkins插件。该插件是一个包装器,用于配置一个库并使用它。一个想法类似于violation-comments-to-github-plugin。几乎没有机会更改库中的日志记录。在詹金斯方面,我有TaskListener.logger: PrintStream。但是lib正在通过SLF4J记录有用的信息。

应对这种情况的最佳实践是什么?也许您知道一些写得很好的插件作为例子?

1 个答案:

答案 0 :(得分:0)

我最不知道什么是日志记录的最佳实践,但是我创建了an adapter,它至少可以完成这项工作。

override fun perform(run: Run<*, *>, workspace: FilePath, launcher: Launcher, listener: TaskListener) {
    val logger = SLF4JOutputStreamAdapter(listener.logger, logLevel.levelInt)

    val builder = AutoMergerBuilder()
            .logger(logger) // I had implement this method in the library
}