Riferimento CLI
Tutte le operazioni Queuety sono disponibili tramite WP-CLI nel namespace wp queuety per impostazione predefinita.
Definite QUEUETY_CLI_COMMAND prima dell'avvio di Queuety se volete pubblicare lo stesso albero di comandi con una radice diversa, come wp themequeue.
Per gli harness degli agenti e altre integrazioni virtual-bash, considerate questa pagina come riferimento per le persone e usate il bridge PHP come contratto per le macchine:
Queuety::cli_command_map()espone il catalogo serializzabile dei comandiQueuety::resolve_cli_command( $path, $args, $assoc_args )trasforma l'inputwp queuety ...analizzato in un piano di esecuzione normalizzato che privilegia i callable diretti PHP
In questo albero non ci sono comandi per le macchine a stati; esaminatele tramite PHP API descritte in Macchine a stati.
Comandi per i job
wp queuety work
Avvia un worker che elabora i job.
wp queuety work [--queue=<queue>] [--once] [--workers=<n>]
wp queuety work [--queue=<queue>] [--min-workers=<n>] --max-workers=<n>
| Opzione | Descrizione |
|---|---|
--queue=<queue> |
Queue(s) da elaborare, separati da virgole per ordinarli per priorità (predefinito: default) |
--once |
Elabora al massimo un job e termina (termina subito anche quando non ci sono job disponibili da acquisire) |
--workers=<n> |
Avvia N processi worker separati (richiede le estensioni pcntl e posix, così come --min-workers e --max-workers) |
--min-workers=<n> |
Numero minimo di worker per un pool adattivo. Richiede --max-workers |
--max-workers=<n> |
Numero massimo di worker per un pool adattivo |
# Single worker on default queue
wp queuety work
# Process a specific queue
wp queuety work --queue=emails
# Process multiple queues in priority order
wp queuety work --queue=critical,default,low
# One-shot mode
wp queuety work --once
# Multi-worker mode
wp queuety work --workers=4
# Adaptive worker pool
wp queuety work --queue=providers --min-workers=2 --max-workers=6
Quando vengono specificate più code, il worker tenta di acquisire un job da ciascuna nell'ordine indicato. Vince la prima coda con un job disponibile. --workers mantiene fisso il pool. --min-workers e --max-workers attivano il ridimensionamento adattivo per gli stessi comandi. Consultate Worker per le strategie di distribuzione e Gestione delle risorse per il modello di ammissione alla base dei pool adattivi.
wp queuety flush
Elabora tutti i job in attesa e termina.
wp queuety flush [--queue=<queue>]
| Opzione | Descrizione |
|---|---|
--queue=<queue> |
Queue(s) da svuotare, separati da virgole per ordinarli per priorità (predefinito: default) |
# Flush a single queue
wp queuety flush --queue=emails
# Flush multiple queues in priority order
wp queuety flush --queue=critical,default,low
wp queuety dispatch
Invia un job dalla riga di comando.
wp queuety dispatch <handler> [--payload=<json>] [--queue=<queue>] [--priority=<priority>] [--delay=<seconds>]
| Opzione | Descrizione |
|---|---|
<handler> |
Nome del gestore o classe (obbligatorio) |
--payload=<json> |
Payload JSON (predefinito: {}) |
--queue=<queue> |
Nome della coda (predefinito: default) |
--priority=<priority> |
Livello di priorità 0-3 (predefinito: 0) |
--delay=<seconds> |
Ritardo in secondi (predefinito: 0) |
wp queuety dispatch send_email --payload='{"to":"user@example.com"}' --queue=emails
wp queuety status
Mostra le statistiche delle code.
wp queuety status [--queue=<queue>]
| Opzione | Descrizione |
|---|---|
--queue=<queue> |
Filtra per nome della coda |
wp queuety list
Elenca i job.
wp queuety list [--queue=<queue>] [--status=<status>] [--format=<format>]
| Opzione | Descrizione |
|---|---|
--queue=<queue> |
Filtra per coda |
--status=<status> |
Filtra per stato (pending, processing, completed, failed, buried) |
--format=<format> |
Formato di output: table (predefinito), json, csv, yaml |
wp queuety inspect
Mostra tutti i dettagli di un job, inclusi il payload e la cronologia dei log.
wp queuety inspect <id>
| Opzione | Descrizione |
|---|---|
<id> |
ID del job (obbligatorio) |
wp queuety retry
Riprova un job specifico.
wp queuety retry <id>
| Opzione | Descrizione |
|---|---|
<id> |
ID del job da riprovare (obbligatorio) |
wp queuety retry-buried
Riprova tutti i job archiviati.
wp queuety retry-buried
wp queuety bury
Sposta manualmente un job in archivio.
wp queuety bury <id>
| Opzione | Descrizione |
|---|---|
<id> |
ID del job da archiviare (obbligatorio) |
wp queuety delete
Elimina un job.
wp queuety delete <id>
| Opzione | Descrizione |
|---|---|
<id> |
ID del job da eliminare (obbligatorio) |
wp queuety recover
Recupera i job non aggiornati bloccati nello stato processing.
wp queuety recover
wp queuety purge
Elimina i job completati.
wp queuety purge [--older-than=<days>]
| Opzione | Descrizione |
|---|---|
--older-than=<days> |
Elimina i job più vecchi di N giorni (predefinito: QUEUETY_RETENTION_DAYS) |
wp queuety pause
Metti in pausa una coda, così i worker la saltano.
wp queuety pause <queue>
| Opzione | Descrizione |
|---|---|
<queue> |
Nome della coda da mettere in pausa (obbligatorio) |
wp queuety resume
Riprendi una coda in pausa.
wp queuety resume <queue>
| Opzione | Descrizione |
|---|---|
<queue> |
Nome della coda da riprendere (obbligatorio) |
wp queuety metrics
Mostra le metriche per gestore.
wp queuety metrics [--minutes=<minutes>] [--format=<format>]
| Opzione | Descrizione |
|---|---|
--minutes=<minutes> |
Finestra temporale in minuti (predefinita: 60) |
--format=<format> |
Formato di output: table (predefinito), json, csv, yaml |
wp queuety discover
Individua le classi handler in una directory.
wp queuety discover <directory> <namespace> [--register]
| Opzione | Descrizione |
|---|---|
<directory> |
Directory in cui cercare le classi handler (obbligatorio) |
<namespace> |
Prefisso namespace PSR-4 della directory (obbligatorio) |
--register |
Registra effettivamente gli handler individuati |
Comandi del workflow
wp queuety workflow status
Mostra lo stato e l'avanzamento del workflow.
wp queuety workflow status <id>
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
status stampa il passaggio corrente, il nome facoltativo del passaggio, i metadati di versione/hash, la modalità di attesa, il riepilogo degli artefatti e un blocco WaitInfo JSON quando il workflow è in attesa di segnali o dipendenze.
wp queuety workflow list
Elenca i workflow.
wp queuety workflow list [--status=<status>] [--format=<format>]
| Opzione | Descrizione |
|---|---|
--status=<status> |
Filtra per stato: running, completed, failed, paused, waiting_for_signal, waiting_for_workflows, cancelled |
--format=<format> |
Formato di output: table (predefinito), json, csv, yaml |
Il comando restituisce al massimo 50 workflow. Legge un valore --limit, ma WP-CLI attualmente rifiuta il flag perché il comando non lo dichiara (#12); usa Queuety::list_workflows() per impostare un limite diverso.
La tabella predefinita include StepName e WaitMode per facilitare la consultazione dei workflow bloccati.
wp queuety workflow retry
Riprova un flusso di lavoro non riuscito a partire dal passaggio che ha causato l'errore.
wp queuety workflow retry <id>
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
wp queuety workflow approve
Invia un segnale di approvazione a un workflow.
wp queuety workflow approve <id> [--data=<json>] [--signal=<name>]
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
--data=<json> |
Payload dell'oggetto JSON facoltativo |
--signal=<name> |
Sostituisce il nome del segnale di approvazione (predefinito: approval, corrispondente a wait_for_approval(); un passaggio wait_for_decision() è in ascolto di approved per impostazione predefinita, quindi passa --signal=approved in quel caso) |
wp queuety workflow reject
Invia un segnale di rifiuto a un workflow.
wp queuety workflow reject <id> [--data=<json>] [--signal=<name>]
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
--data=<json> |
Payload dell'oggetto JSON facoltativo |
--signal=<name> |
Sostituisce il nome del segnale di rifiuto (predefinito: rejected) |
wp queuety workflow input
Invia input strutturato a un workflow.
wp queuety workflow input <id> [--data=<json>] [--signal=<name>]
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
--data=<json> |
Payload dell'oggetto JSON facoltativo |
--signal=<name> |
Sostituisce il nome del segnale di input (predefinito: input) |
wp queuety workflow artifacts
Elenca gli artefatti salvati per un workflow.
wp queuety workflow artifacts <id> [--format=<format>] [--with-content]
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
--format=<format> |
Formato di output: table (predefinito) o json |
--with-content |
Include il contenuto degli artefatti nell'output |
wp queuety workflow artifact
Mostra un artefatto salvato per un workflow.
wp queuety workflow artifact <id> <key>
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
<key> |
Chiave dell'artefatto (obbligatoria) |
wp queuety workflow pause
Sospende un workflow in esecuzione.
wp queuety workflow pause <id>
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
wp queuety workflow resume
Riprende un flusso di lavoro in pausa.
wp queuety workflow resume <id>
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
wp queuety workflow cancel
Annulla un workflow che non sia già completed o cancelled. In un'unica transazione, Queuety imposta lo stato su cancelled, mette da parte i job in sospeso e in elaborazione del workflow e registra workflow_cancelled; poi esegue le compensazioni e l'eventuale handler di pulizia registrato.
wp queuety workflow cancel <id>
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow da annullare (obbligatorio) |
wp queuety workflow cancel 42
wp queuety workflow timeline
Mostra la cronologia degli eventi di un workflow. Visualizza tutti gli eventi dei passaggi (avviato, completato, non riuscito) con timestamp, handler e durate.
wp queuety workflow timeline <id> [--limit=<limit>] [--offset=<offset>] [--format=<format>]
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
--limit=<limit> |
Numero massimo di eventi da restituire (predefinito: 100) |
--offset=<offset> |
Numero di eventi precedenti da saltare (predefinito: 0) |
--format=<format> |
Formato di output: table (predefinito), json, csv, yaml |
wp queuety workflow timeline 42
Colonne di output: ID, Step, Event, Handler, Duration_ms, Error, Created_at.
wp queuety workflow state-at
Mostra lo stato pubblico del workflow dopo che un passaggio specifico è stato completato o ripreso.
wp queuety workflow state-at <id> <step>
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
<step> |
Indice del passaggio, a partire da 0 (obbligatorio) |
wp queuety workflow state-at 42 0
Per i dettagli su ciò che viene registrato e sui casi d'uso, consulta Registro eventi del workflow.
wp queuety workflow rewind
Riporta un workflow a un passaggio precedente e prosegue da quello successivo. Lo stato viene ripristinato dal registro eventi state_after relativo al passaggio indicato e il passaggio successivo (<step> + 1) viene accodato; il passaggio indicato non viene eseguito di nuovo.
wp queuety workflow rewind <id> <step>
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
<step> |
Indice del passaggio a cui tornare, a partire da 0 (obbligatorio) |
wp queuety workflow rewind 42 1
Per i dettagli, consulta Viaggio nel tempo.
wp queuety workflow fork
Crea una copia indipendente di un workflow in esecuzione, mantenendone lo stato corrente. Il workflow duplicato riceve un nuovo ID e procede in modo indipendente.
wp queuety workflow fork <id>
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow da duplicare (obbligatorio) |
wp queuety workflow fork 42
# Success: Workflow #42 forked. New workflow ID: 43.
Per i dettagli, consulta Creazione di fork.
wp queuety workflow export
Esporta la cronologia completa di esecuzione di un workflow in JSON. Include la riga del workflow, i job, gli eventi del workflow, le voci di log, i segnali salvati e le attese sulle dipendenze del workflow.
wp queuety workflow export <id> [--output=<file>]
| Opzione | Descrizione |
|---|---|
<id> |
ID del workflow (obbligatorio) |
--output=<file> |
Percorso del file in cui scrivere JSON. Per impostazione predefinita, usa stdout. |
# Print to stdout
wp queuety workflow export 42
# Write to a file
wp queuety workflow export 42 --output=/tmp/workflow-42.json
Per i dettagli sulla struttura di JSON, consulta Esportazione e riproduzione.
wp queuety workflow replay
Riproduce un workflow esportato da un file JSON. Crea un nuovo workflow con lo stato esportato, i metadati e la cronologia degli eventi.
wp queuety workflow replay <file>
| Opzione | Descrizione |
|---|---|
<file> |
Percorso del file JSON esportato (obbligatorio) |
wp queuety workflow replay /tmp/workflow-42.json
# Success: Workflow replayed. New workflow ID: 85.
Per i dettagli, vedi Esportazione e riproduzione.
Comandi di pianificazione
wp queuety schedule list
Elenca tutte le pianificazioni ricorrenti.
wp queuety schedule list [--format=<format>]
| Opzione | Descrizione |
|---|---|
--format=<format> |
Formato di output: table (predefinito), json, csv, yaml |
wp queuety schedule add
Aggiunge una pianificazione ricorrente.
wp queuety schedule add <handler> [--every=<interval>] [--cron=<expression>] [--payload=<json>] [--queue=<queue>]
| Opzione | Descrizione |
|---|---|
<handler> |
Nome o classe dell'handler (obbligatorio) |
--every=<interval> |
Espressione di intervallo (e.g. 1 hour, 30 minutes) |
--cron=<expression> |
Espressione Cron (e.g. 0 3 * * *) |
--payload=<json> |
Payload JSON (predefinito: {}) |
--queue=<queue> |
Nome della coda (predefinito: default) |
È necessario specificare --every oppure --cron.
wp queuety schedule add cleanup_handler --every="1 hour"
wp queuety schedule add nightly_report --cron="0 3 * * *" --queue=reports
wp queuety schedule remove
Rimuove una pianificazione in base al nome dell'handler.
wp queuety schedule remove <handler>
| Opzione | Descrizione |
|---|---|
<handler> |
Nome dell'handler da rimuovere (obbligatorio) |
wp queuety schedule run
Avvia manualmente un ciclo dello scheduler. Accoda i job per tutte le pianificazioni in scadenza.
wp queuety schedule run
Comandi dei log
wp queuety log
Interroga le voci di log.
wp queuety log [--job=<id>] [--workflow=<id>] [--handler=<name>] [--event=<event>] [--since=<datetime>] [--limit=<n>] [--format=<format>]
| Opzione | Descrizione |
|---|---|
--job=<id> |
Filtra per ID del job |
--workflow=<id> |
Filtra per ID del workflow |
--handler=<name> |
Filtra per nome dell'handler |
--event=<event> |
Filtra per tipo di evento (started, completed, failed, buried, retried, workflow_started, workflow_completed, workflow_failed, workflow_paused, workflow_resumed, workflow_cancelled, workflow_rewound, workflow_forked, workflow_deadline_exceeded, debug) |
--since=<datetime> |
Mostra le voci a partire da questa data e ora |
--limit=<n> |
Numero massimo di voci da mostrare (predefinito: 50) |
--format=<format> |
Formato di output: table (predefinito), json, csv, yaml |
I filtri non si combinano: Queuety applica il primo filtro presente, nell'ordine --job, --workflow, --handler, --event, --since. --job e --workflow restituiscono tutte le voci, dalla più vecchia, e ignorano --limit. --handler e --event restituiscono prima le voci più recenti. Senza un filtro, il comando legge le ultime 24 ore; questa query e --since elencano le voci dalla più vecchia, quindi --limit conserva le voci più vecchie nell'intervallo.
# Logs from the last 24 hours (oldest first)
wp queuety log
# Logs for a job
wp queuety log --job=42
# Failed events
wp queuety log --event=failed --limit=100
# Logs since a specific time
wp queuety log --since="2025-03-01 00:00:00"
Eliminazione dei log
LogCommand definisce il sottocomando purge (wp queuety log purge --older-than=<days>), ma WP-CLI registra wp queuety log come comando singolo, quindi non è possibile richiamare il sottocomando e l'operazione fallisce con "Too many positional arguments: purge" (#11). Usa invece PHP per eliminare le vecchie voci di log:
wp eval 'echo Queuety\Queuety::purge_logs( 30 );'
Comandi dei webhook
wp queuety webhook add
Registra un webhook URL per un evento.
wp queuety webhook add <event> <url>
| Opzione | Descrizione |
|---|---|
<event> |
Nome dell'evento: job.completed, job.failed, job.buried o workflow.failed (obbligatorio) |
<url> |
URL a cui inviare notifiche tramite POST (obbligatorio) |
wp queuety webhook add job.buried https://hooks.slack.com/services/...
wp queuety webhook list
Elenca tutti i webhook registrati.
wp queuety webhook list [--format=<format>]
| Opzione | Descrizione |
|---|---|
--format=<format> |
Formato di output: table (predefinito), json, csv, yaml |
wp queuety webhook remove
Rimuove un webhook in base all'ID.
wp queuety webhook remove <id>
| Opzione | Descrizione |
|---|---|
<id> |
ID del webhook da rimuovere (obbligatorio) |