2 Quick questions for update of statistics package to RT3

Hello list,
after a long hiatus, I rose to the occassion and am in the midst of
trying to update the much sought after statistics package to integrate
better with RT3. I have two questions:

  1. How do I configure my apache to use Apache::GD::Graph for creating
    images when RT3 runs via fastcgi not mod_perl? i.e., I need the
    mod_fastcgi equivalent to:

| <Location /chart>
|
| SetHandler perl-script
| PerlHandler +Apache::GD::Graph
|
|

  1. The statistics package uses a ‘BLOODY HACK’ to iterate through lists
    of tickets. The original code yields the following error:

error:
Can’t locate object method “Next” via package “RT::EasySearch” (perhaps
you forgot to load “RT::EasySearch”?) at
/opt/rt3/share/html/Statistics/TimeToResolve/index.html line 47.

context:


43:$tix->LimitQueue (VALUE => $queue) if $queue;
44:$tix->LimitStatus(VALUE => “resolved”);
45:$tix->UnLimit;
46:if ($tix->Count) {
47: while (my $t = $tix->RT::EasySearch::Next) { # BLOODY HACK
48: my $when = $t->ResolvedObj->Unix - $t->CreatedObj->Unix;
49: next unless $when > 0; # Doubly bloody hack
50: my $max = (606024*2) / 1800;
51: my $x = int($when / 1800);

code stack:
/opt/rt3/share/html/Statistics/TimeToResolve/index.html:47
/opt/rt3/share/html/autohandler:163

The raw error is below. I appreciate any help!

Regards,
Harald

raw error:

Can’t locate object method “Next” via package “RT::EasySearch” (perhaps
you forgot to load “RT::EasySearch”?) at
/opt/rt3/share/html/Statistics/TimeToResolve/index.html line 47.

Trace begun at
/usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Exceptions.pm line 128
HTML::Mason::Exceptions::rethrow_exception(‘Can’t locate object method
"Next" via package “RT::EasySearch” (perhaps you forgot to load
"RT::EasySearch"?) at
/opt/rt3/share/html/Statistics/TimeToResolve/index.html line 47.^J’)
called at /opt/rt3/share/html/Statistics/TimeToResolve/index.html line
47
HTML::Mason::Commands::ANON(‘queue’, 5, ‘queue’, 5) called at
/usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Component.pm line 133
HTML::Mason::Component::run(‘HTML::Mason::Component::
FileBased=HASH(0x94113c8)’, ‘queue’, 5, ‘queue’, 5) called at
/usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Request.pm line 1056
eval {…}(‘HTML::Mason::Component::FileBased=HASH(0x94113c8)’,
‘queue’, 5, ‘queue’, 5) called at
/usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Request.pm line 1050
HTML::Mason::Request::comp(‘HTML::Mason::Request::CGI=HASH(0x94a1c68)’,
‘HTML::Mason::Component::FileBased=HASH(0x94113c8)’, ‘queue’, 5,
‘queue’, 5) called at
/usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Request.pm line 746
HTML::Mason::Request::call_next(‘HTML::Mason::Request::
CGI=HASH(0x94a1c68)’, ‘queue’, 5) called at
/opt/rt3/share/html/autohandler line 163
HTML::Mason::Commands::ANON(‘queue’, 5) called at
/usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Component.pm line 133
HTML::Mason::Component::run(‘HTML::Mason::Component::
FileBased=HASH(0x8a207b4)’, ‘queue’, 5) called at
/usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Request.pm line 1056
eval {…}(‘HTML::Mason::Component::FileBased=HASH(0x8a207b4)’,
‘queue’, 5) called at
/usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Request.pm line 1050
HTML::Mason::Request::comp(‘HTML::Mason::Request::CGI=HASH(0x94a1c68)’,
‘HASH(0x94a1a40)’, ‘HTML::Mason::Component::FileBased=HASH(0x8a207b4)’,
‘queue’, 5) called at
/usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Request.pm line 334
eval {…}(‘HTML::Mason::Request::CGI=HASH(0x94a1c68)’,
‘HASH(0x94a1a40)’, ‘HTML::Mason::Component::FileBased=HASH(0x8a207b4)’,
‘queue’, 5) called at
/usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Request.pm line 334
eval {…}(‘HTML::Mason::Request::CGI=HASH(0x94a1c68)’,
‘HASH(0x94a1a40)’, ‘HTML::Mason::Component::FileBased=HASH(0x8a207b4)’,
‘queue’, 5) called at
/usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Request.pm line 292
HTML::Mason::Request::exec(‘HTML::Mason::Request::CGI=HASH(0x94a1c68)’)
called at /usr/local/lib/perl5/site_perl/5.8.0/HTML/Mason/Interp.pm
line 226

Harald Wagener wrote:

  1. The statistics package uses a ‘BLOODY HACK’ to iterate through lists
    of tickets. The original code yields the following error:

error:?
Can’t locate object method “Next” via package “RT::EasySearch” (perhaps
you forgot to load “RT::EasySearch”?) at
/opt/rt3/share/html/Statistics/TimeToResolve/index.html line 47.

Try replacing RT::EasySearch with RT::SearchBuilder, although
I’m not sure why

while (my $t = $tix->Next)

wouldn’t work… but I guess Simon had his reasons :slight_smile:
Phil Homewood, Systems Janitor, http://www.SnapGear.com
pdh@snapgear.com Ph: +61 7 3435 2810 Fx: +61 7 3891 3630
SnapGear - Custom Embedded Solutions and Security Appliances