Пример #1
0
$log_id = date('mdYHis');
LogHelper::log_notice("{$log_id}: Cron invoked for processing next job in queue.");
if (!QueueUtil::isJobsInProgress()) {
    LogHelper::log_notice("{$log_id}: No job is in progress. Getting next job.");
    try {
        $job_details = QueueUtil::getNextJob();
    } catch (Exception $claim_exception) {
        LogHelper::log_error("{$log_id}: Error while fetching job from queue: " . $claim_exception);
        return;
    }
    if ($job_details) {
        try {
            $job_id = $job_details['job_id'];
            LogHelper::log_notice("{$log_id}: Fetched next job from queue for job id:" . $job_details['job_id']);
            LogHelper::log_notice("{$log_id}: Claiming job from queue:" . $job_id);
            $job_claimed = QueueUtil::claimJob($job_id);
            if ($job_claimed) {
                LogHelper::log_notice("{$log_id}: Job {$job_id} is claimed for processing.");
                LogHelper::log_notice("{$log_id}: Started processing job {$job_id}.");
                $queue_job = new QueueJob($job_details);
                $queue_job->setLogId($log_id);
                $queue_job->processJob();
                LogHelper::log_notice("{$log_id}: Completed processing job {$job_id}.");
                LogHelper::log_notice("{$log_id}: Started udpating status 2 for job {$job_id}.");
                $job_details = array('status' => 2, 'end_time' => time(), 'filename' => $queue_job->getFileName());
                $job_log = "~~{$log_id}: File generated Successfully on " . date("m-d-Y, H:i:s");
                LogHelper::log_notice("{$log_id}: jobId:" . $job_id);
                LogHelper::log_notice("{$log_id}: filename:" . $queue_job->getFileName());
                LogHelper::log_notice("{$log_id}: jobLog:" . $job_log);
                QueueUtil::updateJobDetails($job_id, $job_details, $job_log);
                LogHelper::log_notice("{$log_id}: Completed udpating status 2 for job {$job_id}.");