Skip to content

Get statistics with Inespections  #235

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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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