Какова лучшая практика для ведения журнала консоли, если зависимость от плагина jenkins использует slf4j? - PullRequest
0 голосов
/ 22 мая 2019

Я разрабатываю плагин Jenkins, который использует другую библиотеку.Плагин - это оболочка, которая настраивает библиотеку и использует ее.Идея похожа на нарушение-комментарии-к-github-плагину .Мало шансов изменить логи в библиотеке.На стороне Дженкинса у меня есть TaskListener.logger: PrintStream.Но библиотека регистрирует полезную информацию через SLF4J.

Каковы наилучшие методы для решения этой ситуации?Может быть, вы знаете какой-нибудь хорошо написанный плагин в качестве примера?

1 Ответ

0 голосов
/ 29 мая 2019

Я не знаю, что лучше для ведения журналов, но я создал адаптер , который по крайней мере выполняет эту работу.

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
}
...