The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
#!/usr/bin/env perl
use strict;
use warnings;

use RT -init;

my $attributes = RT::Attributes->new( RT->SystemUser );
$attributes->Limit( FIELD => 'Name',       VALUE => 'SpamReports' );
$attributes->Limit( FIELD => 'ObjectType', VALUE => 'RT::Ticket' );

my $tickets = 0;
my $reports = 0;

my $tickets_deleted = 0;
my $deleted = 0;

my %users;

while (my $attr = $attributes->Next) {
    $tickets++;

    my $users = $attr->Content || [];
    $reports += @$users;

    $users{$_}++ for @$users;

    if ($attr->Object->Status eq 'deleted') {
        $tickets_deleted++;
        $deleted += @$users;
    }
}

my $u = RT::User->new( RT->SystemUser );

printf "Average %4.1f reports per ticket\n", $reports/$tickets;
printf "Average %4.1f reports per deleted ticket\n", $deleted/$tickets_deleted;
printf "Top users:\n";
printf "   %4d %s\n", @$_
    for map { $u->Load($_); [$users{$_}, $u->Name]; } (sort { $users{$b} <=> $users{$a} } keys %users)[0..9];