如何从 API 或 DB(SQL) 获取上季度(3 个月)的 TeamCity 构建统计信息?
How to get TeamCity builds statistics for last quarter(3 month) from API or DB(SQL)?
TeamCity 问题跟踪器 link https://youtrack.jetbrains.com/issue/TW-50234
我想计算 "builds" 上周的延迟并与平均值进行比较。上个月和平均。上个季度。
上个月可以通过 REST API 轻松获取,如下所示:
https://teamcity/app/rest/builds?locator=buildType:(id:<BUILD_ID>)&fields=count,build(number,status,queuedDate,finishDate)
来自负载的最新条目是 20170502T131511+0300
但是如何获取更多数据 - 最近 3 个月的数据?
我可以访问 SQL 数据库(我们使用 PostgreSQL)并且 SQL 是很好的解决方案。
您可能会遇到响应的分页:尝试为项目集合包含响应实体 (builds
) 的 nextHref
属性(即使用 &fields=count,nextHref
而不是仅 &fields=count
你可能会得到 link 到输出的第二页)。
根据您的情况,可以使用以下定位器尺寸来控制响应中的构建数量:
count:<number>
- 仅提供指定数量的构建
start:<number>
- 从指定位置开始列出列表中的构建(从零开始)
lookupLimit:<number>
- 将处理限制为仅最新的 N 个构建(默认为 5000)。如果最近 N 个构建中的 none 匹配构建定位器的其他指定条件,则返回 404 响应
基于日期的输出应该没有限制,但如果配置了一些清理规则,显然可能没有数据。
TeamCity 问题跟踪器 link https://youtrack.jetbrains.com/issue/TW-50234
我想计算 "builds" 上周的延迟并与平均值进行比较。上个月和平均。上个季度。 上个月可以通过 REST API 轻松获取,如下所示:
https://teamcity/app/rest/builds?locator=buildType:(id:<BUILD_ID>)&fields=count,build(number,status,queuedDate,finishDate)
来自负载的最新条目是 20170502T131511+0300
但是如何获取更多数据 - 最近 3 个月的数据? 我可以访问 SQL 数据库(我们使用 PostgreSQL)并且 SQL 是很好的解决方案。
您可能会遇到响应的分页:尝试为项目集合包含响应实体 (builds
) 的 nextHref
属性(即使用 &fields=count,nextHref
而不是仅 &fields=count
你可能会得到 link 到输出的第二页)。
根据您的情况,可以使用以下定位器尺寸来控制响应中的构建数量:
count:<number>
- 仅提供指定数量的构建start:<number>
- 从指定位置开始列出列表中的构建(从零开始)lookupLimit:<number>
- 将处理限制为仅最新的 N 个构建(默认为 5000)。如果最近 N 个构建中的 none 匹配构建定位器的其他指定条件,则返回 404 响应
基于日期的输出应该没有限制,但如果配置了一些清理规则,显然可能没有数据。