2017-09-04 49 views
1

获取詹金斯指标数据,我需要与API调用通过API

What I need with the API call

我需要为每一个时间轴信息通过API调用詹金斯指标插件构建什么。我正在使用Web API为我的jenkins中的工作获取数据。然而,打电话给$JenkinsUrl/metrics/APIkey是没有领先的。任何想法我怎么能实现这些信息?

+0

更准确地说,如何定位各建立了就业和获取数据?我现在知道的唯一API调用是'$ JENKINS_URL/metrics/$ METRICS_API_KEY',但是我找不到如何将此目标设置为特定版本并获取时间轴信息的方法。 – imujjwalanand

回答

1

每个构建的所有三位时间线信息(队列时间,构建时间,总时间)都可以通过“get build”API获取。

在显示“队列中等待8.1秒”的屏幕上,点击页脚中的“REST API”链接,然后点击“JSON API”,然后在结果API URL的末尾添加&depth=2

请注意,如果您在API json中搜索特定值,则时间将以毫秒为单位。在解析json之后,构建时间在“duration”属性下,另外两个在“actions”属性下的数组中。对我来说,这是数组的第三个元素,而是可能会有所不同(找到一个与_class“jenkins.metrics.impl.TimeInQueueAction”):

{ 
    "_class": "jenkins.metrics.impl.TimeInQueueAction", 
    "queuingDurationMillis": 16, 
    "totalDurationMillis": 4365 
} 

所以在我的例子中,建立时间为4349和队列时间是16,所以总时间是4349 + 16 = 4365毫秒。

而不是增加&depth=2到URL的末尾,你可能能够通过附加此的url,达到您想要的三个值:&tree=duration,actions[queuingDurationMillis,totalDurationMillis]

+0

这正是我正在寻找的。然而,在我问这个问题之后,我在一些线程中找到了上述解释,但我还没有意识到如何找到构建时间。这使我的工作完成。不能感谢足够:) – imujjwalanand