Skip to content

ScheduleLog

Viames Marino edited this page Feb 23, 2026 · 1 revision

Pair framework: ScheduleLog

Pair\Models\ScheduleLog persists execution outcomes of scheduled tasks.

When to use

Use ScheduleLog to audit periodic jobs, inspect failures, and expose scheduler health in admin dashboards.

Main behavior

  • _init() defines model schema and constraints for scheduler logs.
  • Stores status, messages, and execution metadata.

Implementation examples

Basic write

$log = new \Pair\Models\ScheduleLog();
$log->task = 'cleanup-temp-files';
$log->status = 'success';
$log->message = 'Removed 42 files';
$log->store();

Failure trace

try {
    (new CleanupService())->run();
    $log = new \Pair\Models\ScheduleLog();
    $log->task = 'cleanup-temp-files';
    $log->status = 'success';
    $log->message = 'Cleanup completed';
    $log->store();
} catch (\Throwable $e) {
    $log = new \Pair\Models\ScheduleLog();
    $log->task = 'cleanup-temp-files';
    $log->status = 'error';
    $log->message = $e->getMessage();
    $log->store();
}

Common pitfalls

  • Logging only success events hides operational risk.
  • Avoid huge exception traces in a single column; store concise summaries.

See also: Schedule, Log, ErrorLog.

Clone this wiki locally