Jenkins MultiJob-将子作业的控制台输出合并为一个输出

Jenkins MultiJob-将子作业的控制台输出合并为一个输出,jenkins,jenkins-plugins,Jenkins,Jenkins Plugins,我有一个Jenkins多工项目(),假设有10个儿童工作。每个作业都有控制台输出,这对我来说非常重要。与其打开10个选项卡并在它们之间跳来跳去观看输出,有没有办法将每个作业的所有控制台输出集中到一个选项卡中?我是否可以将所有这些输出发送到主/多作业的控制台,而不是简单地列出每个子作业的[成功]或[失败] 我在找类似的东西,我发现了那篇帖子 在此基础上,我做了一些类似于我的多重作业的事情,只做了一个阶段作业 import hudson.model.* import com.tikal.jenkin

我有一个Jenkins多工项目(),假设有10个儿童工作。每个作业都有控制台输出,这对我来说非常重要。与其打开10个选项卡并在它们之间跳来跳去观看输出,有没有办法将每个作业的所有控制台输出集中到一个选项卡中?我是否可以将所有这些输出发送到主/多作业的控制台,而不是简单地列出每个子作业的[成功]或[失败]

我在找类似的东西,我发现了那篇帖子

在此基础上,我做了一些类似于我的多重作业的事情,只做了一个阶段作业

import hudson.model.*
import com.tikal.jenkins.plugins.multijob.*;

void log(msg) {
  manager.listener.logger.println(msg)
}

threshold = Result.SUCCESS

void aggregate_results() {
    failed = false

    mainJob = manager.build.getProject().getName()
    job = hudson.model.Hudson.instance.getItem(mainJob)

    log "---------------------------------------------------------------------------------------------------------------"
    log "Aggregated status report"
    log "---------------------------------------------------------------------------------------------------------------"

    log("${mainJob}    #${manager.build.getNumber()} - ${manager.build.getResult()}")

    job.getLastBuild().getSubBuilds().each { subBuild->
      subJob = subBuild.getJobName() 
      subJobNumber = subBuild.getBuildNumber()
      job = hudson.model.Hudson.instance.getItem(subBuild.getJobName())
      log "${subJob}   #${subJobNumber} - ${job.getLastCompletedBuild().getResult()}"
      log job.getLastCompletedBuild().getLog()
    }
}

try {
  aggregate_results()
} catch(Exception e) {
  log("ERROR: ${e.message}")
  log("ERROR: Failed Status report aggregation")
}

我在找类似的东西,我找到了那个帖子

在此基础上,我做了一些类似于我的多重作业的事情,只做了一个阶段作业

import hudson.model.*
import com.tikal.jenkins.plugins.multijob.*;

void log(msg) {
  manager.listener.logger.println(msg)
}

threshold = Result.SUCCESS

void aggregate_results() {
    failed = false

    mainJob = manager.build.getProject().getName()
    job = hudson.model.Hudson.instance.getItem(mainJob)

    log "---------------------------------------------------------------------------------------------------------------"
    log "Aggregated status report"
    log "---------------------------------------------------------------------------------------------------------------"

    log("${mainJob}    #${manager.build.getNumber()} - ${manager.build.getResult()}")

    job.getLastBuild().getSubBuilds().each { subBuild->
      subJob = subBuild.getJobName() 
      subJobNumber = subBuild.getBuildNumber()
      job = hudson.model.Hudson.instance.getItem(subBuild.getJobName())
      log "${subJob}   #${subJobNumber} - ${job.getLastCompletedBuild().getResult()}"
      log job.getLastCompletedBuild().getLog()
    }
}

try {
  aggregate_results()
} catch(Exception e) {
  log("ERROR: ${e.message}")
  log("ERROR: Failed Status report aggregation")
}