Skip to content

Get statistics with Inespections  #235

@Super8film87

Description

@Super8film87

Hey,

I've trouble to find a solution to get statics of InspectionStatsE & InspectionStatsW.
If I check following url

http://<teamcity>/app/rest/builds/id:<id>/statistics

I see the correct payload:

<properties count="16">
<script/>
<property name="ArtifactsSize" value="2242155"/>
<property name="BuildDuration" value="34495"/>
<property name="BuildDurationNetTime" value="33403"/>
<property name="buildStageDuration:artifactsPublishing" value="319"/>
<property name="buildStageDuration:buildFinishing" value="500"/>
<property name="buildStageDuration:buildStepRUNNER_33274" value="30902"/>
<property name="buildStageDuration:buildStepRUNNER_33275" value="2501"/>
<property name="buildStageDuration:firstStepPreparation" value="189"/>
<property name="buildStageDuration:toolsUpdating" value="1"/>
<property name="BuildTestStatus" value="1"/>
<property name="InspectionStatsE" value="11"/>
<property name="InspectionStatsW" value="6490"/>
<property name="queueWaitReason:Waiting_for_the_build_queue_distribution_process" value="78"/>
<property name="serverSideBuildFinishing" value="701"/>
<property name="SuccessRate" value="1"/>
<property name="TimeSpentInQueue" value="85"/>
</properties>

if I try to collect the data via velocity

#set ($statsValues = $build.statisticValues)
{
#foreach ($mapEntry in $statsValues.entrySet())
  #if ( $mapEntry.key == 'InspectionStatsE' || $mapEntry.key == 'InspectionStatsW')
    "$mapEntry.key": $mapEntry.value.intValue(),
  #end
#end
"statsValues" : "$statsValues",
## or like this

"getStatisticValues": "${build.getStatisticValues()}"
}

but this only responding:

"statsValues": "{buildStageDuration:buildStepRUNNER_29664=346475, buildStageDuration:artifactsPublishing=551, buildStageDuration:buildStepRUNNER_26288=10884, buildStageDuration:buildStepRUNNER_31602=536, serverSideBuildFinishing=48, buildStageDuration:buildStepRUNNER_31601=297, buildStageDuration:buildStepRUNNER_24038=539, buildStageDuration:sourcesUpdate=681, queueWaitReason:Waiting_for_the_build_queue_distribution_process=68, buildStageDuration:buildFinishing=710, buildStageDuration:toolsUpdating=1, buildStageDuration:firstStepPreparation=2, BuildDurationNetTime=358731}",
  "getStatisticValues": "{buildStageDuration:buildStepRUNNER_29664=346475, buildStageDuration:artifactsPublishing=551, buildStageDuration:buildStepRUNNER_26288=10884, buildStageDuration:buildStepRUNNER_31602=536, serverSideBuildFinishing=48, buildStageDuration:buildStepRUNNER_31601=297, buildStageDuration:buildStepRUNNER_24038=539, buildStageDuration:sourcesUpdate=681, queueWaitReason:Waiting_for_the_build_queue_distribution_process=68, buildStageDuration:buildFinishing=710, buildStageDuration:toolsUpdating=1, buildStageDuration:firstStepPreparation=2, BuildDurationNetTime=358731}"

Additional test:

#set ($InspectionStatsE_value = $build.getStatisticValue("InspectionStatsE"))
#set ($InspectionStatsW_value = $build.getStatisticValue("InspectionStatsW"))
{
"inpsectionError" : "$InspectionStatsE_value",
"inpsectionWarnings" : "$InspectionStatsW_value"
}

If I check on Preview Template Payload

I see correct payload

{
  "inpsectionError": "11",
  "inpsectionWarnings": "6490"
}

on endpoint-viewer:

{
  "inpsectionError": "$InspectionStatsE_value",
  "inpsectionWarnings": "$InspectionStatsW_value"
}

Can you provide some guidance - #https://javadoc.jetbrains.net/teamcity/openapi/current/jetbrains/buildServer/serverSide/SBuild.html#getFullStatistics()
Do I check the wrong commands?

TeamCity Server: TeamCity Enterprise 2023.05.4 (build 129421)
Plugin: 1.2.5

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions