Jenkins控制台脚本查看从属服务器每天运行作业的时间百分比
我正在写一个脚本来显示奴隶每天花多少时间来运行各种作业 我似乎无法计算出计算奴隶在一天内运行作业所花费时间的代码Jenkins控制台脚本查看从属服务器每天运行作业的时间百分比,jenkins,groovy,jenkins-plugins,Jenkins,Groovy,Jenkins Plugins,我正在写一个脚本来显示奴隶每天花多少时间来运行各种作业 我似乎无法计算出计算奴隶在一天内运行作业所花费时间的代码 我找到builds.duration,但这看起来像是从机连接以来工作的总时间 这可能不是确切的答案,但这是一个好的开始。几年前,我编写了一个groovy脚本,从这里的节点获取大量信息: 以下是实际代码,如果链接曾经终止: for (aSlave in hudson.model.Hudson.instance.slaves) { println('=================
我找到builds.duration,但这看起来像是从机连接以来工作的总时间 这可能不是确切的答案,但这是一个好的开始。几年前,我编写了一个groovy脚本,从这里的节点获取大量信息: 以下是实际代码,如果链接曾经终止:
for (aSlave in hudson.model.Hudson.instance.slaves) {
println('====================');
println('Name: ' + aSlave.name);
println('getLabelString: ' + aSlave.getLabelString());
println('getNumExectutors: ' + aSlave.getNumExecutors());
println('getRemoteFS: ' + aSlave.getRemoteFS());
println('getMode: ' + aSlave.getMode());
println('getRootPath: ' + aSlave.getRootPath());
println('getDescriptor: ' + aSlave.getDescriptor());
println('getComputer: ' + aSlave.getComputer());
println('\tcomputer.isAcceptingTasks: ' + aSlave.getComputer().isAcceptingTasks());
println('\tcomputer.isLaunchSupported: ' + aSlave.getComputer().isLaunchSupported());
println('\tcomputer.getConnectTime: ' + aSlave.getComputer().getConnectTime());
println('\tcomputer.getDemandStartMilliseconds: ' + aSlave.getComputer().getDemandStartMilliseconds());
println('\tcomputer.isOffline: ' + aSlave.getComputer().isOffline());
println('\tcomputer.countBusy: ' + aSlave.getComputer().countBusy());
//if (aSlave.name == 'NAME OF NODE TO DELETE') {
// println('Shutting down node!!!!');
// aSlave.getComputer().setTemporarilyOffline(true,null);
// aSlave.getComputer().doDoDelete();
//}
println('\tcomputer.getLog: ' + aSlave.getComputer().getLog());
println('\tcomputer.getBuilds: ' + aSlave.getComputer().getBuilds());
}
这可能不是确切的答案,但这是一个良好的开端。几年前,我编写了一个groovy脚本,从这里的节点获取大量信息: 以下是实际代码,如果链接曾经终止:
for (aSlave in hudson.model.Hudson.instance.slaves) {
println('====================');
println('Name: ' + aSlave.name);
println('getLabelString: ' + aSlave.getLabelString());
println('getNumExectutors: ' + aSlave.getNumExecutors());
println('getRemoteFS: ' + aSlave.getRemoteFS());
println('getMode: ' + aSlave.getMode());
println('getRootPath: ' + aSlave.getRootPath());
println('getDescriptor: ' + aSlave.getDescriptor());
println('getComputer: ' + aSlave.getComputer());
println('\tcomputer.isAcceptingTasks: ' + aSlave.getComputer().isAcceptingTasks());
println('\tcomputer.isLaunchSupported: ' + aSlave.getComputer().isLaunchSupported());
println('\tcomputer.getConnectTime: ' + aSlave.getComputer().getConnectTime());
println('\tcomputer.getDemandStartMilliseconds: ' + aSlave.getComputer().getDemandStartMilliseconds());
println('\tcomputer.isOffline: ' + aSlave.getComputer().isOffline());
println('\tcomputer.countBusy: ' + aSlave.getComputer().countBusy());
//if (aSlave.name == 'NAME OF NODE TO DELETE') {
// println('Shutting down node!!!!');
// aSlave.getComputer().setTemporarilyOffline(true,null);
// aSlave.getComputer().doDoDelete();
//}
println('\tcomputer.getLog: ' + aSlave.getComputer().getLog());
println('\tcomputer.getBuilds: ' + aSlave.getComputer().getBuilds());
}