Loggning
Queuety loggar varje jobb- och arbetsflödeshändelse i databastabellen queuety_logs. Det finns inga loggfiler. Alla poster kan sökas via PHP API och CLI.
Händelsetyper
Varje loggpost har en händelsetyp från enumen LogEvent:
| Händelse | Beskrivning |
|---|---|
started |
Jobbkörningen startade |
completed |
Jobbet slutfördes utan fel |
failed |
Ett försök kastade ett undantag och kommer att göras om (det sista försöket loggar endast buried) |
buried |
Jobbet har förbrukat alla omförsök |
retried |
Jobbet schemalades för omförsök |
workflow_started |
Arbetsflödet skickades iväg |
workflow_completed |
Alla steg i arbetsflödet slutfördes |
workflow_failed |
Arbetsflödessteget misslyckades permanent |
workflow_paused |
Arbetsflödet pausades |
workflow_resumed |
Arbetsflödet återupptogs |
workflow_cancelled |
Arbetsflödet avbröts |
workflow_rewound |
Arbetsflödet spolades tillbaka till ett tidigare steg |
workflow_forked |
Arbetsflödet förgrenades till ett nytt arbetsflöde |
workflow_deadline_exceeded |
Arbetsflödet missade sin tidsfrist must_complete_within() |
debug |
Meddelande på felsökningsnivå (när QUEUETY_DEBUG är aktiverat) |
Loggfält
Varje loggpost innehåller:
| Fält | Beskrivning |
|---|---|
id |
Autoincrementerande ID |
event |
Händelsetypsträng |
handler |
Hanterarnamn eller klass |
job_id |
Tillhörande jobb-ID (kan vara null) |
workflow_id |
Tillhörande arbetsflödes-ID (kan vara null) |
step_index |
Arbetsflödesstegets index (kan vara null) |
attempt |
Försöksnummer |
duration_ms |
Körningstid i millisekunder |
error_message |
Felmeddelande om körningen misslyckades |
created_at |
Tidsstämpel |
Söka i loggar via PHP
PHP
$logger = Queuety::logger();
// Logs for a specific job
$logs = $logger->for_job( 42 );
// Logs for a specific workflow
$logs = $logger->for_workflow( 7 );
// Logs for a specific handler
$logs = $logger->for_handler( 'send_email', 50 );
// Logs for a specific event type
$logs = $logger->for_event( \Queuety\Enums\LogEvent::Failed, 50 );
// Logs since a datetime
$logs = $logger->since( new \DateTimeImmutable( '-1 hour' ), 100 );
Söka i loggar via CLI
Shell
# Recent logs (last 24 hours)
wp queuety log
# Logs for a specific job
wp queuety log --job=42
# Logs for a specific workflow
wp queuety log --workflow=7
# Logs for a handler
wp queuety log --handler=send_email
# Logs for an event type
wp queuety log --event=failed
# Logs since a datetime
wp queuety log --since="2025-01-01 00:00:00"
# Custom limit and format
wp queuety log --limit=100 --format=json
Loggbevarande
Loggar sparas tills du rensar dem. Konstanten QUEUETY_LOG_RETENTION_DAYS läses av Config::log_retention_days(), men används ännu inte till något och rensar därför ingenting (#15). Det går inte heller att nå underkommandot wp queuety log purge (#11).
Rensa från PHP, till exempel från en egen schemalagd aktivitet eller med wp eval:
PHP
$count = Queuety::logger()->purge( 30 );