X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2Fbin%2Ffreeside-queued;h=f5284e7082fc592981d5810eaa68e71dfacf4a5d;hb=b4aea58e0d04ff1930397e0f96ecdc50748b748b;hp=2a88c5605931be15299c5b8167407ab6db33beb1;hpb=f4830f3d053be44857e1a5701b2dde2a3de0d584;p=freeside.git diff --git a/FS/bin/freeside-queued b/FS/bin/freeside-queued index 2a88c5605..f5284e708 100644 --- a/FS/bin/freeside-queued +++ b/FS/bin/freeside-queued @@ -11,6 +11,7 @@ use FS::Conf; use FS::Record qw(qsearch); use FS::queue; use FS::queue_depend; +use FS::queue_stat; use FS::Log; use FS::Cron::expire_user_pref qw( expire_user_pref ); @@ -140,6 +141,8 @@ while (1) { foreach my $job ( @jobs ) { + my $start_date = time; + $log->debug('locking queue job', object => $job); my %hash = $job->hash; @@ -193,7 +196,7 @@ while (1) { dbh->{'private_profile'} = {} if UNIVERSAL::can(dbh, 'sprintProfile'); #auto-use classes... - if ( $ljob->job =~ /(FS::(part_export|cust_main|cust_pkg|Cron)::\w+)::/ + if ( $ljob->job =~ /(FS::(part_export|cust_main|cust_pkg|part_pkg|Cron)::\w+)::/ || $ljob->job =~ /(FS::\w+)::/ ) { @@ -236,6 +239,20 @@ while (1) { dbh->commit; # for the job itself } + if ( $ljob->job eq 'FS::cust_main::queued_bill' ) { + my $queue_stat = new FS::queue_stat { + 'jobnum' => $ljob->jobnum, + 'job' => $ljob->job, + 'custnum' => $ljob->custnum, + 'insert_date' => $ljob->_date, + 'start_date' => $start_date, + 'end_date' => time, + }; + my $error = $queue_stat->insert; + die $error if $error; + dbh->commit; #for the stat + } + if ( UNIVERSAL::can(dbh, 'sprintProfile') ) { open(PROFILE,">%%%FREESIDE_LOG%%%/queueprofile.$$.".time) or die "can't open profile file: $!";