在Jenkins中,单击“生成执行器状态”时,我只能看到与可用磁盘空间有关的统计信息(URI:/computer)。我问的是如何监控Jenkins的可用系统内存(RAM)?

,因为有时当我的执行程序过多时(尽管配置了交换空间,但没有下面的执行程序),Jenkins冻结或崩溃很多。



评论

您可能会发现监视插件很有用:wiki.jenkins-ci.org/display/JENKINS/Monitoring

旁注:大量交换将使功能最强大的服务器都爬网,从而减慢所有流程,包括Jenkins执行程序和本地监视解决方案。更糟糕的是:内存垃圾收集器也将运行缓慢,进一步满足了这种情况。为了获得良好的性能,我建议将交换大小保持在很小的水平,主要是在为多个执行者共享同一台服务器时主要依赖于实际的RAM大小,并避免大量的超额认购。

#1 楼

看一下Monitoring插件。以下是有关它的更多详细信息(来自链接页面):



图表,内存,CPU,平均系统负载,http响应时间(按天,周,月,年份或自定义期限
http请求的统计信息,包括平均响应时间,平均cpu时间,按请求以及按日,周,月,年或自定义时期的平均响应大小
错误和日志
当前http请求
线程
堆直方图(按类划分的实例和大小)
Http会话
OS的进程列表
MBeans
用于GC,堆转储和使会话无效
用html或pdf报告
用英语,德语,法语,葡萄牙语或中文
Jenkins安全性
对于Jenkins节点(一般为从属):


节点的报告位于http://yourhost/monitoring/nodes

内存,cpu,系统平均负载,正在运行的内部版本数,内部队列长度,内部版本的所有节点的汇总图表时间段
的详细统计信息构建时间和按周期划分的构建步骤
每个节点的线程,进程列表和MBean
所有节点的堆直方图汇总


每个单独的节点(每个http://yourhost/computer中的“节点”),可以从上下文菜单的“监视”页面或该节点的详细信息中获取报告和操作:


线程,进程列表,仅该节点的MBean
该节点的堆直方图
用于GC,堆转储的操作


还有更多...



信用:Assaf Lavie(谁在评论中第一次提到它,但由于某种原因并未将其作为实际答案...)。

#2 楼

至于解决方法,可以通过直接在脚本控制台(位于/computer/(master)/script)中调用Groovy命令来检查实际内存。命令示例:

println "free -m".execute().text


评论


替代命令:awk'/ MemFree:/ {print $ 2}'/ proc / meminfo仅适用于不带ram的kB或内存和交换的替代方法:awk'/(Mem | Swap)Free:/ {print}'

–滕西拜
17年1月1日在14:12

我不确定awk脚本是否可以通过Jenkins脚本控制台执行。如我所见,Jenkins脚本控制台仅适用于Groovy

– olyv
17年11月20日在8:44