Geather redmine statistics by projects and trackers via redmine rest api and its internal queries
Perl
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
debian
lib/Redmine
t
.gitignore
Changes
MANIFEST
META.yml
Makefile.PL
README

README

NAME
    Redmine::Stat - Perl extension for dealing with Redmine Rest api.

SYNOPSIS
            use Redmine::Stat;
            my $redmine = new Redmine::Stat;

            $redmine->auth_key('your_secret_key_to_api');
            $redmine->url('https://your.redmine.url');
            $redmine->query_id(100500) #id of redmine query, which stats your are gathering


            use Redmine::Stat;
            my $redmine = new Redmine::Stat->new(
                    auth_key        => 'your_secret_key_to_api',
                    url             => 'https://your.redmine.url');
                    query_id        => 100500,
            );



            $redmine->query(); #this does all the work

            $issues_count   = $redmine->total_issues;
            $projects_count = $redmine->total_projects;
            $trackers_count = $redmine->total_trackers;

            foreach ($redmine->projects)
            {
                    print "Project: ". $_->{name} . " ";
                    print "Path: ". $_->{redmine_path} ." ";
                    print "Descripttion: ". $_->{description} ." ";
                    print "Issues count: ". $_->{issues_count} ." ";
                    print "\r\n";
            }

            foreach ($redmine->trackers)
            {
                    print "Tracker: ". $_->{name}  ." ";
                    print "Issues count: ". $_->{issues_count} ." ";
                    print "\r\n";
            }

            $trackers{bug} = $redmine->tracker('BUG'); #you can search trackers by name
            $trackers{feature} = $remdine->tracker(4); #or by redmine id

            $projects{test.com} = $redmine->project('test.com'); #projects by name
            $projects{test.org} = $redmine->project(15); #by id
            $projects{test.net} = $redmine->project('test_net') #by redmine project path

DESCRIPTION
    This module is designed for statistic purposes only, it does not apply
    CRUD or any other operations. I have wrote this module because i wanted
    to combine RRDtool with my Redmine.

    Redmine::Stat works with Redmine REST api
    (<http://www.redmine.org/projects/redmine/wiki/Rest_api>). By default
    redmine forces clients to use pagination, and does not allow unlimited
    queries, what is a bad idea imho. You need some modifications in Redmine
    core for this module to work correctly. Otherwise, if you don't need
    by-project or by-tracker issue statistics, you may not modify Redmine -
    this module will deal with "meta" fields, such as total_count. Maximum
    limit (100) is located as a Magick number in
    app/controllers/application_controller.rb:415 as of my version 1.4.2.

    You may get almost any statistics by creating your own queries in
    redmine, and parsing them through this module.

SEE ALSO
    Redmine REST api <http://www.redmine.org/projects/redmine/wiki/Rest_api>
    Net::Redmine

AUTHOR
    Fedor A Borshev, <fedor@shogo.ru>

COPYRIGHT AND LICENSE
    Copyright (C) 2012 by Fedor A Borshev

    This library is free software; you can redistribute it and/or modify it
    under the same terms as Perl itself, either Perl version 5.10.1 or, at
    your option, any later version of Perl 5 you may have available.