Jenkins正常运行时间 - 自上次重启后多久

时间:2016-10-21 11:35:58

标签: jenkins

是否可以看到Jenkins实例/主机运行了多长时间?

我试过环顾“管理詹金斯”,但在那里找不到它。我知道我可以登录并检查机器上的进程,但是可以在Jenkins Web UI中进行吗?

此网址在重新启动时会显示一条白线......但这并不直观。

<jenkins-url>/monitoring?part=graph&graph=usedMemory&period=mois

3 个答案:

答案 0 :(得分:12)

你可以在Jenkins web-ui上运行groovy脚本:Manage Jenkins&gt;脚本控制台,并使用Jenkins API。如果您想知道Jenkins已经运行了多少天:

import java.util.concurrent.TimeUnit
long lastRestarted = Jenkins.instance.toComputer().getConnectTime()
long now =  System.currentTimeMillis()
println TimeUnit.MILLISECONDS.toDays(now - lastRestarted)
主计算机的

getConnectTime()应该是重新启动的时间。 http://javadoc.jenkins.io/hudson/model/Computer.html#getConnectTime()

答案 1 :(得分:0)

很长一段时间以来,Jenkins Core中都存在Uptime类(Jenkins 1.538)。因此,使用与脚本控制台相同的原理,可以使代码更具可读性和鲁棒性:

println "Jenkins has been started " + (ExtensionList.lookupSingleton(Uptime.class).uptime / 1000 / 60 ) + " minutes ago"

显示哪个,例如:

Jenkins已于175.8678166667分钟前启动

注意:ExtensionList.lookupSingleton在Jenkins 2.87中引入。因此,如果您使用的是早期版本,请改用ExtensionList.lookup(Uptime.class).get(0)

答案 2 :(得分:-1)

只需检查<jenkins_url>/log/all上的“所有系统日志”-将日志滚动到顶部。

不需要Groovy脚本。

P.S。但是,如前所述,仅当重新启动是最近的并且相应的日志条目未被覆盖时,此选项才有效。