Ugrás a tartalomhoz

Naplózás

A Queuety minden feladat- és munkafolyamat-eseményt a queuety_logs adatbázistáblába naplóz. Nincsenek naplófájlok. Minden bejegyzés lekérdezhető a PHP API és a CLI használatával.

Eseménytípusok

Minden naplóbejegyzés az LogEvent felsorolás egy eseménytípusát tartalmazza:

Esemény Leírás
started A feladat végrehajtása elindult
completed A feladat sikeresen befejeződött
failed Egy próbálkozás kivételt dobott, ezért újrapróbálás következik (az utolsó próbálkozás csak buried eseményt naplóz)
buried A feladat minden újrapróbálási kísérletet kimerített
retried A feladat újrapróbálásra lett ütemezve
workflow_started A munkafolyamat el lett indítva
workflow_completed A munkafolyamat minden lépése befejeződött
workflow_failed A munkafolyamat egyik lépése véglegesen meghiúsult
workflow_paused A munkafolyamat szüneteltetve lett
workflow_resumed A munkafolyamat folytatódott
workflow_cancelled A munkafolyamat megszakadt
workflow_rewound A munkafolyamat visszaállt egy korábbi lépésre
workflow_forked A munkafolyamatból új munkafolyamat vált le
workflow_deadline_exceeded A munkafolyamat elmulasztotta a must_complete_within() határidőt
debug Hibakeresési szintű üzenet (ha a QUEUETY_DEBUG engedélyezve van)

Naplómezők

Minden naplóbejegyzés a következőket tartalmazza:

Mező Leírás
id Automatikusan növekvő azonosító
event Eseménytípus-karakterlánc
handler A kezelő neve vagy osztálya
job_id Kapcsolódó feladatazonosító (lehet null)
workflow_id Kapcsolódó munkafolyamatazonosító (lehet null)
step_index Munkafolyamat-lépés indexe (lehet null)
attempt Próbálkozás száma
duration_ms Végrehajtás időtartama ezredmásodpercben
error_message Hiba esetén a hibaüzenet
created_at Időbélyeg

Naplók lekérdezése a PHP segítségével

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 );

Naplók lekérdezése a CLI segítségével

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

Naplók megőrzése

A naplókat addig őrizzük meg, amíg nem törli őket. A QUEUETY_LOG_RETENTION_DAYS állandót a Config::log_retention_days() beolvassa, de egyelőre semmi sem használja, ezért nem töröl semmit (#15). A wp queuety log purge alparancs sem érhető el (#11).

Törölje a naplókat a PHP segítségével, például saját ütemezett feladatából vagy a wp eval használatával:

PHP
$count = Queuety::logger()->purge( 30 );