Pular para o conteúdo

Referência de CLI

Todas as operações de Queuety estão disponíveis por meio de WP-CLI no namespace wp queuety por padrão.

Defina QUEUETY_CLI_COMMAND antes que Queuety seja inicializado se quiser publicar a mesma árvore de comandos com outra raiz, como wp themequeue.

Para ambientes de teste de agentes e outras integrações de virtual-bash, use esta página como referência para pessoas e a ponte PHP como contrato para máquinas:

  • Queuety::cli_command_map() expõe o catálogo serializável de comandos
  • Queuety::resolve_cli_command( $path, $args, $assoc_args ) transforma a entrada wp queuety ... analisada em um plano de execução normalizado que prioriza funções chamáveis PHP diretas

As máquinas de estados não têm comandos nesta árvore; inspecione-as por meio de PHP API descrito em Máquinas de estados.

Comandos de trabalhos

wp queuety work

Inicia um worker que processa trabalhos.

Shell
wp queuety work [--queue=<queue>] [--once] [--workers=<n>]
wp queuety work [--queue=<queue>] [--min-workers=<n>] --max-workers=<n>
Opção Descrição
--queue=<queue> Queue(s) a processar, separados por vírgulas para ordenar por prioridade (padrão: default)
--once Processa no máximo um trabalho e sai (também sai imediatamente quando não há nada disponível para reivindicar)
--workers=<n> Cria N processos de worker (requer as extensões pcntl e posix, assim como --min-workers e --max-workers)
--min-workers=<n> Número mínimo de workers para um pool adaptativo. Requer --max-workers
--max-workers=<n> Número máximo de workers para um pool adaptativo
Shell
# 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 várias filas são especificadas, o worker tenta reivindicar trabalhos de cada fila na ordem listada. A primeira fila com um trabalho disponível prevalece. --workers mantém o pool fixo. --min-workers e --max-workers habilitam o dimensionamento adaptativo para a mesma interface de comandos. Consulte Workers para estratégias de implantação e Gerenciamento de recursos para conhecer o modelo de admissão por trás dos pools adaptativos.

wp queuety flush

Processa todos os trabalhos pendentes e sai.

Shell
wp queuety flush [--queue=<queue>]
Opção Descrição
--queue=<queue> Queue(s) a esvaziar, separados por vírgulas para ordenar por prioridade (padrão: default)
Shell
# 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

Envia um trabalho pela linha de comando.

Shell
wp queuety dispatch <handler> [--payload=<json>] [--queue=<queue>] [--priority=<priority>] [--delay=<seconds>]
Opção Descrição
<handler> Nome ou classe do manipulador (obrigatório)
--payload=<json> Carga útil JSON (padrão: {})
--queue=<queue> Nome da fila (padrão: default)
--priority=<priority> Nível de prioridade 0-3 (padrão: 0)
--delay=<seconds> Atraso em segundos (padrão: 0)
Shell
wp queuety dispatch send_email --payload='{"to":"user@example.com"}' --queue=emails

wp queuety status

Exibe as estatísticas da fila.

Shell
wp queuety status [--queue=<queue>]
Opção Descrição
--queue=<queue> Filtra pelo nome da fila

wp queuety list

Lista os trabalhos.

Shell
wp queuety list [--queue=<queue>] [--status=<status>] [--format=<format>]
Opção Descrição
--queue=<queue> Filtra pela fila
--status=<status> Filtra pelo status (pending, processing, completed, failed, buried)
--format=<format> Formato de saída: table (padrão), json, csv, yaml

wp queuety inspect

Exibe todos os detalhes de um trabalho, incluindo a carga útil e o histórico do registro.

Shell
wp queuety inspect <id>
Opção Descrição
<id> ID do trabalho (obrigatório)

wp queuety retry

Tenta novamente um trabalho específico.

Shell
wp queuety retry <id>
Opção Descrição
<id> ID do trabalho para tentar novamente (obrigatório)

wp queuety retry-buried

Tenta novamente todos os trabalhos enterrados.

Shell
wp queuety retry-buried

wp queuety bury

Enterra um trabalho manualmente.

Shell
wp queuety bury <id>
Opção Descrição
<id> ID do trabalho a enterrar (obrigatório)

wp queuety delete

Exclui um trabalho.

Shell
wp queuety delete <id>
Opção Descrição
<id> ID do trabalho a excluir (obrigatório)

wp queuety recover

Recupera trabalhos obsoletos que estejam parados no status processing.

Shell
wp queuety recover

wp queuety purge

Elimina trabalhos concluídos.

Shell
wp queuety purge [--older-than=<days>]
Opção Descrição
--older-than=<days> Exclui trabalhos com mais de N dias (padrão: QUEUETY_RETENTION_DAYS)

wp queuety pause

Pausa uma fila para que os workers a ignorem.

Shell
wp queuety pause <queue>
Opção Descrição
<queue> Nome da fila a pausar (obrigatório)

wp queuety resume

Retoma uma fila pausada.

Shell
wp queuety resume <queue>
Opção Descrição
<queue> Nome da fila a retomar (obrigatório)

wp queuety metrics

Exibe métricas por manipulador.

Shell
wp queuety metrics [--minutes=<minutes>] [--format=<format>]
Opção Descrição
--minutes=<minutes> Janela de tempo em minutos (padrão: 60)
--format=<format> Formato de saída: table (padrão), json, csv, yaml

wp queuety discover

Descobre classes de manipuladores em um diretório.

Shell
wp queuety discover <directory> <namespace> [--register]
Opção Descrição
<directory> Diretório para procurar classes de manipuladores (obrigatório)
<namespace> Prefixo de namespace PSR-4 para o diretório (obrigatório)
--register Registra de fato os manipuladores descobertos

Comandos de fluxo de trabalho

wp queuety workflow status

Exibe o status e o progresso do fluxo de trabalho.

Shell
wp queuety workflow status <id>
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)

status exibe a etapa atual, o nome opcional da etapa, metadados de versão/hash, o modo de espera, um resumo dos artefatos e um blob WaitInfo JSON quando o fluxo de trabalho está bloqueado por sinais ou dependências.

wp queuety workflow list

Lista os fluxos de trabalho.

Shell
wp queuety workflow list [--status=<status>] [--format=<format>]
Opção Descrição
--status=<status> Filtra por status: running, completed, failed, paused, waiting_for_signal, waiting_for_workflows, cancelled
--format=<format> Formato de saída: table (padrão), json, csv, yaml

O comando retorna no máximo 50 fluxos de trabalho. Ele lê um valor --limit, mas WP-CLI rejeita a opção atualmente porque o comando não a declara (#12); use Queuety::list_workflows() para definir outro limite.

A tabela padrão inclui StepName e WaitMode para facilitar a identificação dos fluxos de trabalho bloqueados.

wp queuety workflow retry

Tenta novamente um fluxo de trabalho com falha a partir da etapa que falhou.

Shell
wp queuety workflow retry <id>
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)

wp queuety workflow approve

Envia um sinal de aprovação a um fluxo de trabalho.

Shell
wp queuety workflow approve <id> [--data=<json>] [--signal=<name>]
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)
--data=<json> Payload de objeto JSON opcional
--signal=<name> Substitui o nome do sinal de aprovação (padrão: approval, que corresponde a wait_for_approval(); uma etapa wait_for_decision() aguarda approved por padrão, então passe --signal=approved nesse caso)

wp queuety workflow reject

Envia um sinal de rejeição a um fluxo de trabalho.

Shell
wp queuety workflow reject <id> [--data=<json>] [--signal=<name>]
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)
--data=<json> Payload de objeto JSON opcional
--signal=<name> Substitui o nome do sinal de rejeição (padrão: rejected)

wp queuety workflow input

Envia dados estruturados a um fluxo de trabalho.

Shell
wp queuety workflow input <id> [--data=<json>] [--signal=<name>]
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)
--data=<json> Payload de objeto JSON opcional
--signal=<name> Substitui o nome do sinal de entrada (padrão: input)

wp queuety workflow artifacts

Lista os artefatos armazenados de um fluxo de trabalho.

Shell
wp queuety workflow artifacts <id> [--format=<format>] [--with-content]
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)
--format=<format> Formato de saída: table (padrão) ou json
--with-content Inclui o conteúdo dos artefatos na saída

wp queuety workflow artifact

Exibe um artefato armazenado de um fluxo de trabalho.

Shell
wp queuety workflow artifact <id> <key>
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)
<key> Chave do artefato (obrigatória)

wp queuety workflow pause

Pausa um fluxo de trabalho em execução.

Shell
wp queuety workflow pause <id>
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)

wp queuety workflow resume

Retoma um fluxo de trabalho pausado.

Shell
wp queuety workflow resume <id>
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)

wp queuety workflow cancel

Cancela um fluxo de trabalho que ainda não esteja completed nem cancelled. Em uma única transação, Queuety define o status como cancelled, enterra os jobs pendentes e em processamento do fluxo de trabalho e registra workflow_cancelled; em seguida, executa as compensações e qualquer rotina de limpeza registrada.

Shell
wp queuety workflow cancel <id>
Opção Descrição
<id> ID do fluxo de trabalho a cancelar (obrigatório)
Shell
wp queuety workflow cancel 42

wp queuety workflow timeline

Exibe a linha do tempo de eventos de um fluxo de trabalho. Mostra todos os eventos das etapas (iniciada, concluída, com falha), com horários, handlers e durações.

Shell
wp queuety workflow timeline <id> [--limit=<limit>] [--offset=<offset>] [--format=<format>]
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)
--limit=<limit> Número máximo de eventos a retornar (padrão: 100)
--offset=<offset> Número de eventos anteriores a ignorar (padrão: 0)
--format=<format> Formato de saída: table (padrão), json, csv, yaml
Shell
wp queuety workflow timeline 42

Colunas de saída: ID, Step, Event, Handler, Duration_ms, Error, Created_at.

wp queuety workflow state-at

Exibe o estado público do fluxo de trabalho após a conclusão ou retomada de uma etapa específica.

Shell
wp queuety workflow state-at <id> <step>
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)
<step> Índice da etapa, começando em 0 (obrigatório)
Shell
wp queuety workflow state-at 42 0

Consulte Registro de eventos do fluxo de trabalho para ver detalhes sobre o que é registrado e os casos de uso.

wp queuety workflow rewind

Retrocede um fluxo de trabalho a uma etapa anterior e continua a partir da etapa seguinte. O estado é restaurado a partir do registro de eventos state_after da etapa indicada, e a etapa seguinte (<step> + 1) é enfileirada; a etapa indicada não é executada novamente.

Shell
wp queuety workflow rewind <id> <step>
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)
<step> Índice da etapa para a qual retroceder, começando em 0 (obrigatório)
Shell
wp queuety workflow rewind 42 1

Consulte Viagem no tempo para ver detalhes.

wp queuety workflow fork

Cria uma ramificação de um fluxo de trabalho em execução, copiando seu estado atual para uma instância independente. O fluxo de trabalho ramificado recebe um novo ID e prossegue de forma independente.

Shell
wp queuety workflow fork <id>
Opção Descrição
<id> ID do fluxo de trabalho a ramificar (obrigatório)
Shell
wp queuety workflow fork 42
# Success: Workflow #42 forked. New workflow ID: 43.

Consulte Ramificações para ver detalhes.

wp queuety workflow export

Exporta o histórico completo de execução de um fluxo de trabalho para JSON. Inclui a linha do fluxo de trabalho, os jobs, os eventos do fluxo de trabalho, as entradas de registro, os sinais armazenados e as esperas por dependências do fluxo de trabalho.

Shell
wp queuety workflow export <id> [--output=<file>]
Opção Descrição
<id> ID do fluxo de trabalho (obrigatório)
--output=<file> Caminho do arquivo onde gravar o JSON. O padrão é stdout.
Shell
# Print to stdout
wp queuety workflow export 42

# Write to a file
wp queuety workflow export 42 --output=/tmp/workflow-42.json

Consulte Exportação e reprodução para ver detalhes sobre a estrutura JSON.

wp queuety workflow replay

Reproduz um fluxo de trabalho exportado a partir de um arquivo JSON. Cria um novo fluxo de trabalho com o estado, os metadados e a linha do tempo histórica exportados.

Shell
wp queuety workflow replay <file>
Opção Descrição
<file> Caminho para o arquivo JSON exportado (obrigatório)
Shell
wp queuety workflow replay /tmp/workflow-42.json
# Success: Workflow replayed. New workflow ID: 85.

Consulte Exportação e reprodução para obter detalhes.

Comandos de agendamento

wp queuety schedule list

Lista todos os agendamentos recorrentes.

Shell
wp queuety schedule list [--format=<format>]
Opção Descrição
--format=<format> Formato de saída: table (padrão), json, csv, yaml

wp queuety schedule add

Adiciona um agendamento recorrente.

Shell
wp queuety schedule add <handler> [--every=<interval>] [--cron=<expression>] [--payload=<json>] [--queue=<queue>]
Opção Descrição
<handler> Nome do handler ou classe (obrigatório)
--every=<interval> Expressão de intervalo (e.g. 1 hour, 30 minutes)
--cron=<expression> Expressão Cron (e.g. 0 3 * * *)
--payload=<json> Payload JSON (padrão: {})
--queue=<queue> Nome da fila (padrão: default)

Você deve especificar --every ou --cron.

Shell
wp queuety schedule add cleanup_handler --every="1 hour"
wp queuety schedule add nightly_report --cron="0 3 * * *" --queue=reports

wp queuety schedule remove

Remove um agendamento pelo nome do handler.

Shell
wp queuety schedule remove <handler>
Opção Descrição
<handler> Nome do handler a remover (obrigatório)

wp queuety schedule run

Dispara manualmente uma execução do agendador. Enfileira jobs para todos os agendamentos vencidos.

Shell
wp queuety schedule run

Comandos de registro

wp queuety log

Consulta entradas de registro.

Shell
wp queuety log [--job=<id>] [--workflow=<id>] [--handler=<name>] [--event=<event>] [--since=<datetime>] [--limit=<n>] [--format=<format>]
Opção Descrição
--job=<id> Filtra por ID do job
--workflow=<id> Filtra por ID do fluxo de trabalho
--handler=<name> Filtra por nome do handler
--event=<event> Filtra por tipo de 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 entradas desde esta data e hora
--limit=<n> Número máximo de entradas a mostrar (padrão: 50)
--format=<format> Formato de saída: table (padrão), json, csv, yaml

Os filtros não são combinados: Queuety aplica o primeiro filtro presente, nesta ordem: --job, --workflow, --handler, --event, --since. --job e --workflow retornam todas as entradas, da mais antiga para a mais recente, e ignoram --limit. --handler e --event retornam primeiro as entradas mais recentes. Sem um filtro, o comando consulta as últimas 24 horas; essa consulta e --since listam as entradas da mais antiga para a mais recente, então --limit mantém as entradas mais antigas do período.

Shell
# 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"

Limpeza dos registros

LogCommand define um subcomando purge (wp queuety log purge --older-than=<days>), mas WP-CLI registra wp queuety log como um único comando, portanto não é possível acessar o subcomando, que falha com o erro "Too many positional arguments: purge" (#11). Em vez disso, remova as entradas de registro antigas de PHP:

Shell
wp eval 'echo Queuety\Queuety::purge_logs( 30 );'

Comandos de webhook

wp queuety webhook add

Registra um webhook URL para um evento.

Shell
wp queuety webhook add <event> <url>
Opção Descrição
<event> Nome do evento: job.completed, job.failed, job.buried ou workflow.failed (obrigatório)
<url> URL para enviar notificações por POST (obrigatório)
Shell
wp queuety webhook add job.buried https://hooks.slack.com/services/...

wp queuety webhook list

Lista todos os webhooks registrados.

Shell
wp queuety webhook list [--format=<format>]
Opção Descrição
--format=<format> Formato de saída: table (padrão), json, csv, yaml

wp queuety webhook remove

Remove um webhook pelo ID.

Shell
wp queuety webhook remove <id>
Opção Descrição
<id> ID do webhook a remover (obrigatório)