Registro
Queuety registra cada evento de trabajo y flujo de trabajo en la tabla de base de datos queuety_logs. No hay archivos de registro. Todas las entradas se pueden consultar mediante PHP API y CLI.
Tipos de eventos
Cada entrada de registro tiene un tipo de evento del enum LogEvent:
| Evento | Descripción |
|---|---|
started |
Se inició la ejecución del trabajo |
completed |
El trabajo se completó correctamente |
failed |
Un intento produjo una excepción y se volverá a intentar (el intento final solo registra buried) |
buried |
El trabajo agotó todos los intentos de reintento |
retried |
Se programó un reintento del trabajo |
workflow_started |
Se inició el flujo de trabajo |
workflow_completed |
Se completaron todos los pasos del flujo de trabajo |
workflow_failed |
El paso del flujo de trabajo falló de forma permanente |
workflow_paused |
Se pausó el flujo de trabajo |
workflow_resumed |
Se reanudó el flujo de trabajo |
workflow_cancelled |
Se canceló el flujo de trabajo |
workflow_rewound |
El flujo de trabajo volvió a un paso anterior |
workflow_forked |
El flujo de trabajo se bifurcó en uno nuevo |
workflow_deadline_exceeded |
El flujo de trabajo incumplió su plazo must_complete_within() |
debug |
Mensaje de nivel de depuración (cuando está habilitado QUEUETY_DEBUG) |
Campos del registro
Cada entrada de registro contiene:
| Campo | Descripción |
|---|---|
id |
ID autoincremental |
event |
Cadena del tipo de evento |
handler |
Nombre del controlador o clase |
job_id |
ID del trabajo asociado (admite nulo) |
workflow_id |
ID del flujo de trabajo asociado (admite nulo) |
step_index |
Índice del paso del flujo de trabajo (admite nulo) |
attempt |
Número de intento |
duration_ms |
Duración de la ejecución en milisegundos |
error_message |
Mensaje de error, si se produjo un fallo |
created_at |
Marca de tiempo |
Consultar registros mediante 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 );
Consultar registros mediante 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
Retención de registros
Los registros se conservan hasta que los elimine. QUEUETY_LOG_RETENTION_DAYS lee la constante Config::log_retention_days(), pero todavía no se usa, así que no elimina nada (#15). Tampoco se puede acceder al subcomando wp queuety log purge (#11).
Elimine los registros desde PHP, por ejemplo, con su propia tarea programada o con wp eval:
PHP
$count = Queuety::logger()->purge( 30 );