monthly statistics page?

Hello,

Is there a way to configure TeamCity to get monthly statistics for all projects on one page?

I need this for my boss to give him a brief overview of how much all the projects have improved compared to the previous month / months.
Basically i think of one page with a list of all build configurations having all the historical charts aside. (or any better presentation)

We're using TeamCity 8.0.1 Enterprise.

Thanks.

5 comments
Comment actions Permalink

Hi Daniel,

There is no bundled functionality like that at this time.
The closest you can get is to place statndard statistics charts available on Statistics tab of a build configuration on a single page: on Statistics tab of a project.

As to custom reports, they can be implemented via TeamCity Java plugin. If you have a clear view of what kind of charts you need, you can file those as separate feature requests into our tracker: Whenn we get many votes for them, we might implement the charts ourselves.

0
Comment actions Permalink

I tried the Java plugin approach, but even then, i can only get the data stored in the current visible build configuration history. The charts show much more historic data.

But still, this is quite slow, as i have to do this for many build configurations and i have to use expensive loops for filtering out builds in specific months.

0
Comment actions Permalink

Daniel,

> I tried the Java plugin approach,  but even then, i can only get the data stored in the current visible  build configuration history. The charts show much more historic data.

With Java API you can get almost any data you might want (provided it is available to the TeamCity server). The question, however, might be how to present that data - that can require some UI-level effort.


> But  still, this is quite slow, as i have to do this for many build  configurations and i have to use expensive loops for filtering out  builds in specific months.

Going through the builds should have reasonable performance. Of course, that will require some time to go through all the builds...
With reports it is often tolerable to allow some time to generate a report.
If you need fast UI without report generation time, you would need to do some kind of data preparation/caching in background.

The task can require some coding effort specifically, to add the features which are yet missing from default TeamCity setup.
If you have TeamCity API questions - feel free to ask them.

0
Comment actions Permalink

Well, if a take a look at a chart of one build configuration. There is data going back to november 2012 with dozens of data samples.

How can i get these samples programatically? Where is it stored? I did not even find this in the database.

Using ...

SFinishedBuild.getFullStatistics();

... is not giving me that information

Edit:
I am interested in getting the full statistics data (including already cleaned builds). This seems to be still available somehow.


Thanks,
Daniel

0
Comment actions Permalink

Daniel,

OK. I see what you mean now.

You can use something like this to get all values for the given statisticsKey and externalBuildTypeId:

  List<BuildValue> getAllStatistics(final String statKey, final String buildTypeId, final ValueProviderRegistry registry /* get this from Spring*/) {
    ValueProvider vp = registry.getValueProvider(statKey);

    BuildChartSettings settings = new BuildChartSettings(Collections.<String, String[]>emptyMap());
    settings.setBuildTypeId(buildTypeId);
    return vp.getDataSet(settings);
  }

0

Please sign in to leave a comment.