Καταγραφή
Το Queuety καταγράφει κάθε συμβάν εργασίας και ροής εργασίας στον πίνακα βάσης δεδομένων queuety_logs. Δεν υπάρχουν αρχεία καταγραφής. Μπορείτε να αναζητήσετε όλες τις εγγραφές μέσω των PHP API και CLI.
Τύποι συμβάντων
Κάθε εγγραφή καταγραφής έχει έναν τύπο συμβάντος από το enum LogEvent:
| Συμβάν | Περιγραφή |
|---|---|
started |
Ξεκίνησε η εκτέλεση της εργασίας |
completed |
Η εργασία ολοκληρώθηκε με επιτυχία |
failed |
Η προσπάθεια προκάλεσε εξαίρεση και θα επαναληφθεί (η τελευταία προσπάθεια καταγράφει μόνο buried) |
buried |
Η εργασία εξάντλησε όλες τις προσπάθειες επανάληψης |
retried |
Προγραμματίστηκε επανάληψη της εργασίας |
workflow_started |
Έγινε αποστολή της ροής εργασίας |
workflow_completed |
Ολοκληρώθηκαν όλα τα βήματα της ροής εργασίας |
workflow_failed |
Το βήμα της ροής εργασίας απέτυχε οριστικά |
workflow_paused |
Η ροή εργασίας τέθηκε σε παύση |
workflow_resumed |
Η ροή εργασίας συνεχίστηκε |
workflow_cancelled |
Η ροή εργασίας ακυρώθηκε |
workflow_rewound |
Η ροή εργασίας επανήλθε σε προηγούμενο βήμα |
workflow_forked |
Η ροή εργασίας διακλαδώθηκε σε νέα ροή εργασίας |
workflow_deadline_exceeded |
Η ροή εργασίας έχασε την προθεσμία της must_complete_within() |
debug |
Μήνυμα επιπέδου εντοπισμού σφαλμάτων (όταν είναι ενεργοποιημένο το QUEUETY_DEBUG) |
Πεδία καταγραφής
Κάθε εγγραφή καταγραφής περιέχει:
| Πεδίο | Περιγραφή |
|---|---|
id |
Αυτόματα αυξανόμενο αναγνωριστικό |
event |
Συμβολοσειρά τύπου συμβάντος |
handler |
Όνομα ή κλάση χειριστή |
job_id |
Σχετικό αναγνωριστικό εργασίας (nullable) |
workflow_id |
Σχετικό αναγνωριστικό ροής εργασίας (nullable) |
step_index |
Δείκτης βήματος ροής εργασίας (nullable) |
attempt |
Αριθμός προσπάθειας |
duration_ms |
Διάρκεια εκτέλεσης σε χιλιοστά του δευτερολέπτου |
error_message |
Μήνυμα σφάλματος σε περίπτωση αποτυχίας |
created_at |
Χρονική σήμανση |
Αναζήτηση καταγραφών μέσω 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 );
Αναζήτηση καταγραφών μέσω CLI
Κέλυφος
# 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
Διατήρηση καταγραφών
Οι καταγραφές διατηρούνται μέχρι να τις διαγράψετε. Η σταθερά QUEUETY_LOG_RETENTION_DAYS διαβάζεται από το Config::log_retention_days(), αλλά δεν χρησιμοποιείται ακόμη, επομένως δεν διαγράφει τίποτα (#15). Δεν είναι επίσης δυνατή η πρόσβαση στην υποεντολή wp queuety log purge (#11).
Διαγράψτε τις καταγραφές από το PHP, για παράδειγμα από τη δική σας προγραμματισμένη εργασία ή με το wp eval:
PHP
$count = Queuety::logger()->purge( 30 );