
# CLI žinynas

Pagal numatytuosius nustatymus visos Queuety operacijos pasiekiamos per WP-CLI vardų srityje `wp queuety`.

Apibrėžkite `QUEUETY_CLI_COMMAND` prieš paleisdami Queuety, jei tą patį komandų medį norite paskelbti kitoje šaknyje, pvz., `wp themequeue`.

Testavimo aplinkose agentams ir kitoms virtualaus Bash integracijoms šį puslapį laikykite informacija žmonėms, o PHP tiltą naudokite kaip mašininę sąsają:

- `Queuety::cli_command_map()` pateikia serializuojamą komandų katalogą
- `Queuety::resolve_cli_command( $path, $args, $assoc_args )` paverčia išanalizuotą `wp queuety ...` įvestį normalizuotu vykdymo planu, kuriame teikiama pirmenybė tiesiogiai iškviečiamiems PHP objektams

Šiame medyje būsenų mašinos neturi komandų; jas galite peržiūrėti per PHP API, aprašytus skiltyje [Būsenų mašinos](https://queuety.inline0.dev/lt/docs/state-machines).

## Užduočių komandos

### `wp queuety work`

Paleisti darbuotoją, kuris apdoroja užduotis.

```bash
wp queuety work [--queue=<queue>] [--once] [--workers=<n>]
wp queuety work [--queue=<queue>] [--min-workers=<n>] --max-workers=<n>
```

| Parinktis | Aprašymas |
|---|---|
| `--queue=<queue>` | Queue(s) užduotims apdoroti; nurodytas kelias komas, eilės tvarka nustatomas prioritetas (numatyta: `default`) |
| `--once` | Apdoroti ne daugiau kaip vieną užduotį ir baigti (taip pat baigiama iškart, jei nėra pasiekiamų užduočių) |
| `--workers=<n>` | Sukurti N darbuotojų procesų atšakų (reikalingi plėtiniai `pcntl` ir `posix`, taip pat kaip ir `--min-workers` bei `--max-workers`) |
| `--min-workers=<n>` | Mažiausias darbuotojų skaičius adaptyviame telkinyje. Reikalingas `--max-workers` |
| `--max-workers=<n>` | Didžiausias darbuotojų skaičius adaptyviame telkinyje |

```bash
# 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
```

Nurodžius kelias eiles, darbuotojas mėgina paimti užduotį iš kiekvienos eilės nurodyta tvarka. Paimama užduotis iš pirmos eilės, kurioje tokia yra. `--workers` palieka telkinį fiksuotą. `--min-workers` ir `--max-workers` įjungia adaptyvų mastelio keitimą toje pačioje komandų sąsajoje. Diegimo strategijas rasite skiltyje [Darbuotojai](https://queuety.inline0.dev/lt/docs/features/workers), o adaptyviųjų telkinių prieigos kontrolės modelį – skiltyje [Išteklių valdymas](https://queuety.inline0.dev/lt/docs/features/resource-management).

### `wp queuety flush`

Apdoroti visas laukiančias užduotis ir baigti.

```bash
wp queuety flush [--queue=<queue>]
```

| Parinktis | Aprašymas |
|---|---|
| `--queue=<queue>` | Queue(s) eilėms išvalyti; nurodytas kelias komas, eilės tvarka nustatomas prioritetas (numatyta: `default`) |

```bash
# 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`

Išsiųsti užduotį vykdyti iš komandinės eilutės.

```bash
wp queuety dispatch <handler> [--payload=<json>] [--queue=<queue>] [--priority=<priority>] [--delay=<seconds>]
```

| Parinktis | Aprašymas |
|---|---|
| `<handler>` | Apdorojimo tvarkytuvo pavadinimas arba klasė (privaloma) |
| `--payload=<json>` | JSON duomenys (numatyta: `{}`) |
| `--queue=<queue>` | Eilės pavadinimas (numatyta: `default`) |
| `--priority=<priority>` | Prioriteto lygis 0-3 (numatyta: `0`) |
| `--delay=<seconds>` | Delsa sekundėmis (numatyta: `0`) |

```bash
wp queuety dispatch send_email --payload='{"to":"user@example.com"}' --queue=emails
```

### `wp queuety status`

Rodyti eilių statistiką.

```bash
wp queuety status [--queue=<queue>]
```

| Parinktis | Aprašymas |
|---|---|
| `--queue=<queue>` | Filtruoti pagal eilės pavadinimą |

### `wp queuety list`

Išvardyti užduotis.

```bash
wp queuety list [--queue=<queue>] [--status=<status>] [--format=<format>]
```

| Parinktis | Aprašymas |
|---|---|
| `--queue=<queue>` | Filtruoti pagal eilę |
| `--status=<status>` | Filtruoti pagal būseną (`pending`, `processing`, `completed`, `failed`, `buried`) |
| `--format=<format>` | Išvesties formatas: `table` (numatytasis), `json`, `csv`, `yaml` |

### `wp queuety inspect`

Rodyti visą užduoties informaciją, įskaitant duomenis ir žurnalo istoriją.

```bash
wp queuety inspect <id>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Užduoties ID (privaloma) |

### `wp queuety retry`

Iš naujo bandyti vykdyti konkrečią užduotį.

```bash
wp queuety retry <id>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Užduoties ID, kuriai vykdyti bandoma iš naujo (privaloma) |

### `wp queuety retry-buried`

Pakartotinai bandyti vykdyti visas į archyvą perkeltas užduotis.

```bash
wp queuety retry-buried
```

### `wp queuety bury`

Rankiniu būdu perkelti užduotį į archyvą.

```bash
wp queuety bury <id>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Į archyvą perkeliamos užduoties ID (privaloma) |

### `wp queuety delete`

Ištrinti užduotį.

```bash
wp queuety delete <id>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Ištrinamos užduoties ID (privaloma) |

### `wp queuety recover`

Atkurti užstrigusias užduotis, kurių būsena yra `processing`.

```bash
wp queuety recover
```

### `wp queuety purge`

Išvalyti užbaigtas užduotis.

```bash
wp queuety purge [--older-than=<days>]
```

| Parinktis | Aprašymas |
|---|---|
| `--older-than=<days>` | Ištrinti užduotis, senesnes nei N dienų (numatyta: `QUEUETY_RETENTION_DAYS`) |

### `wp queuety pause`

Pristabdyti eilę, kad vykdytojai ją praleistų.

```bash
wp queuety pause <queue>
```

| Parinktis | Aprašymas |
|---|---|
| `<queue>` | Pristabdomos eilės pavadinimas (privaloma) |

### `wp queuety resume`

Tęsti pristabdytą eilę.

```bash
wp queuety resume <queue>
```

| Parinktis | Aprašymas |
|---|---|
| `<queue>` | Tęsiamos eilės pavadinimas (privaloma) |

### `wp queuety metrics`

Rodyti kiekvieno apdorojimo tvarkytuvo metrikas.

```bash
wp queuety metrics [--minutes=<minutes>] [--format=<format>]
```

| Parinktis | Aprašymas |
|---|---|
| `--minutes=<minutes>` | Laikotarpis minutėmis (numatyta: `60`) |
| `--format=<format>` | Išvesties formatas: `table` (numatytasis), `json`, `csv`, `yaml` |

### `wp queuety discover`

Surasti apdorojimo tvarkytuvų klases kataloge.

```bash
wp queuety discover <directory> <namespace> [--register]
```

| Parinktis | Aprašymas |
|---|---|
| `<directory>` | Katalogas, kuriame ieškoti apdorojimo tvarkytuvų klasių (privaloma) |
| `<namespace>` | PSR-4 vardų srities priešdėlis katalogui (privaloma) |
| `--register` | Iš tikrųjų užregistruoti rastus apdorojimo tvarkytuvus |

## Darbo eigos komandos

### `wp queuety workflow status`

Rodyti darbo eigos būseną ir eigą.

```bash
wp queuety workflow status <id>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privaloma) |

`status` pateikia dabartinį žingsnį, pasirenkamą žingsnio pavadinimą, versijos ir maišos metaduomenis, laukimo režimą, artefaktų suvestinę ir `WaitInfo` JSON duomenų bloką, kai darbo eiga laukia signalų arba priklausomybių.

### `wp queuety workflow list`

Išvardyti darbo eigas.

```bash
wp queuety workflow list [--status=<status>] [--format=<format>]
```

| Parinktis | Aprašymas |
|---|---|
| `--status=<status>` | Filtruoti pagal būseną: `running`, `completed`, `failed`, `paused`, `waiting_for_signal`, `waiting_for_workflows`, `cancelled` |
| `--format=<format>` | Išvesties formatas: `table` (numatytasis), `json`, `csv`, `yaml` |

Komanda grąžina ne daugiau kaip 50 darbo eigų. Ji nuskaito reikšmę `--limit`, tačiau WP-CLI šiuo metu atmeta vėliavėlę, nes komanda jos nedeklaruoja ([#12](https://github.com/inline0/queuety/issues/12)); kitam limitui naudokite `Queuety::list_workflows()`.

Numatytojoje lentelėje pateikiami `StepName` ir `WaitMode`, kad užstrigusias darbo eigas būtų lengviau peržiūrėti.

### `wp queuety workflow retry`

Pakartotinai paleiskite nepavykusią darbo eigą nuo nepavykusio žingsnio.

```bash
wp queuety workflow retry <id>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privaloma) |

### `wp queuety workflow approve`

Siųsti darbo eigos patvirtinimo signalą.

```bash
wp queuety workflow approve <id> [--data=<json>] [--signal=<name>]
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privaloma) |
| `--data=<json>` | Pasirenkamas JSON objekto turinys |
| `--signal=<name>` | Pakeisti patvirtinimo signalo pavadinimą (numatyta: `approval`, atitinkantis `wait_for_approval()`; pagal numatytuosius nustatymus `wait_for_decision()` žingsnis laukia `approved`, todėl ten perduokite `--signal=approved`) |

### `wp queuety workflow reject`

Siųsti darbo eigos atmetimo signalą.

```bash
wp queuety workflow reject <id> [--data=<json>] [--signal=<name>]
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privaloma) |
| `--data=<json>` | Pasirenkamas JSON objekto turinys |
| `--signal=<name>` | Pakeisti atmetimo signalo pavadinimą (numatyta: `rejected`) |

### `wp queuety workflow input`

Siųsti darbo eigai struktūrizuotą įvestį.

```bash
wp queuety workflow input <id> [--data=<json>] [--signal=<name>]
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privaloma) |
| `--data=<json>` | Pasirenkamas JSON objekto turinys |
| `--signal=<name>` | Pakeisti įvesties signalo pavadinimą (numatyta: `input`) |

### `wp queuety workflow artifacts`

Išvardyti išsaugotus darbo eigos artefaktus.

```bash
wp queuety workflow artifacts <id> [--format=<format>] [--with-content]
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privaloma) |
| `--format=<format>` | Išvesties formatas: `table` (numatytasis) arba `json` |
| `--with-content` | Įtraukti artefakto turinį į išvestį |

### `wp queuety workflow artifact`

Rodyti vieną išsaugotą darbo eigos artefaktą.

```bash
wp queuety workflow artifact <id> <key>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privaloma) |
| `<key>` | Artefakto raktas (privaloma) |

### `wp queuety workflow pause`

Pristabdyti vykdomą darbo eigą.

```bash
wp queuety workflow pause <id>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privaloma) |

### `wp queuety workflow resume`

Atnaujinkite pristabdytą darbo eigą.

```bash
wp queuety workflow resume <id>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privaloma) |

### `wp queuety workflow cancel`

Atšaukti darbo eigą, kurios būsena dar nėra `completed` arba `cancelled`. Vienos transakcijos metu Queuety nustato būseną į `cancelled`, perkelia laukiančias ir apdorojamas darbo eigos užduotis į archyvą ir įrašo `workflow_cancelled`; tada vykdo kompensacinius veiksmus ir visas užregistruotas valymo procedūras.

```bash
wp queuety workflow cancel <id>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Atšaukiamos darbo eigos ID (privaloma) |

```bash
wp queuety workflow cancel 42
```

### `wp queuety workflow timeline`

Rodyti darbo eigos įvykių laiko juostą. Joje pateikiami visi žingsnių įvykiai (pradėti, užbaigti, nepavykę) su laiko žymomis, apdorojimo tvarkytuvais ir trukmėmis.

```bash
wp queuety workflow timeline <id> [--limit=<limit>] [--offset=<offset>] [--format=<format>]
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privaloma) |
| `--limit=<limit>` | Didžiausias grąžinamų įvykių skaičius (numatyta: `100`) |
| `--offset=<offset>` | Praleistinų ankstesnių įvykių skaičius (numatyta: `0`) |
| `--format=<format>` | Išvesties formatas: `table` (numatytasis), `json`, `csv`, `yaml` |

```bash
wp queuety workflow timeline 42
```

Išvesties stulpeliai: `ID`, `Step`, `Event`, `Handler`, `Duration_ms`, `Error`, `Created_at`.

### `wp queuety workflow state-at`

Rodyti viešąją darbo eigos būseną po konkretaus darbo eigos žingsnio užbaigimo arba tęsimo.

```bash
wp queuety workflow state-at <id> <step>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privalomas) |
| `<step>` | Žingsnio indeksas, skaičiuojamas nuo 0 (privalomas) |

```bash
wp queuety workflow state-at 42 0
```

Išsamią informaciją apie įrašomus duomenis ir naudojimo atvejus rasite [Darbo eigos įvykių žurnale](https://queuety.inline0.dev/lt/docs/workflows/event-log).

### `wp queuety workflow rewind`

Grąžinkite darbo eigą į ankstesnį žingsnį ir tęskite nuo po jo einančio žingsnio. Būsena atkuriama iš nurodyto žingsnio įvykių žurnalo `state_after`, o kitas žingsnis (`<step> + 1`) įtraukiamas į eilę; nurodytas žingsnis dar kartą nevykdomas.

```bash
wp queuety workflow rewind <id> <step>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privalomas) |
| `<step>` | Žingsnio, į kurį grąžinama, indeksas, skaičiuojamas nuo 0 (privalomas) |

```bash
wp queuety workflow rewind 42 1
```

Išsamiau žr. [Kelionė laiku](https://queuety.inline0.dev/lt/docs/workflows/time-travel).

### `wp queuety workflow fork`

Sukurkite vykdomos darbo eigos nepriklausomą kopiją su dabartine jos būsena. Išsišakojusi darbo eiga gauna naują ID ir vykdoma nepriklausomai.

```bash
wp queuety workflow fork <id>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Išsišakojamos darbo eigos ID (privalomas) |

```bash
wp queuety workflow fork 42
# Success: Workflow #42 forked. New workflow ID: 43.
```

Išsamiau žr. [Išsišakojimas](https://queuety.inline0.dev/lt/docs/workflows/forking).

### `wp queuety workflow export`

Eksportuokite visą darbo eigos vykdymo istoriją į JSON. Įtraukiama darbo eigos eilutė, užduotys, darbo eigos įvykiai, žurnalo įrašai, išsaugoti signalai ir darbo eigos priklausomybių laukimai.

```bash
wp queuety workflow export <id> [--output=<file>]
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Darbo eigos ID (privalomas) |
| `--output=<file>` | Failo, į kurį įrašomas JSON, kelias. Pagal numatytuosius nustatymus – stdout. |

```bash
# Print to stdout
wp queuety workflow export 42

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

Daugiau apie struktūrą JSON skaitykite skiltyje [Eksportavimas ir atkūrimas](https://queuety.inline0.dev/lt/docs/workflows/export-replay).

### `wp queuety workflow replay`

Atkurkite eksportuotą darbo eigą iš JSON failo. Sukuriama nauja darbo eiga su eksportuota būsena, metaduomenimis ir istorine laiko juosta.

```bash
wp queuety workflow replay <file>
```

| Parinktis | Aprašymas |
|---|---|
| `<file>` | Eksportuoto JSON failo kelias (privalomas) |

```bash
wp queuety workflow replay /tmp/workflow-42.json
# Success: Workflow replayed. New workflow ID: 85.
```

Išsamiau žr. [Eksportavimas ir atkūrimas](https://queuety.inline0.dev/lt/docs/workflows/export-replay).

## Planavimo komandos

### `wp queuety schedule list`

Išvardykite visus pasikartojančius tvarkaraščius.

```bash
wp queuety schedule list [--format=<format>]
```

| Parinktis | Aprašymas |
|---|---|
| `--format=<format>` | Išvesties formatas: `table` (numatytasis), `json`, `csv`, `yaml` |

### `wp queuety schedule add`

Pridėkite pasikartojantį tvarkaraštį.

```bash
wp queuety schedule add <handler> [--every=<interval>] [--cron=<expression>] [--payload=<json>] [--queue=<queue>]
```

| Parinktis | Aprašymas |
|---|---|
| `<handler>` | Apdorojimo funkcijos pavadinimas arba klasė (privaloma) |
| `--every=<interval>` | Intervalo išraiška (e.g. `1 hour`, `30 minutes`) |
| `--cron=<expression>` | Cron išraiška (e.g. `0 3 * * *`) |
| `--payload=<json>` | JSON duomenys (numatytoji reikšmė: `{}`) |
| `--queue=<queue>` | Eilės pavadinimas (numatytoji reikšmė: `default`) |

Turite nurodyti `--every` arba `--cron`.

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

### `wp queuety schedule remove`

Pašalinkite tvarkaraštį pagal apdorojimo funkcijos pavadinimą.

```bash
wp queuety schedule remove <handler>
```

| Parinktis | Aprašymas |
|---|---|
| `<handler>` | Šalinamos apdorojimo funkcijos pavadinimas (privalomas) |

### `wp queuety schedule run`

Neautomatiškai paleiskite planuoklio ciklą. Į eilę įtraukiamos visų atėjusio laiko tvarkaraščių užduotys.

```bash
wp queuety schedule run
```

## Žurnalo komandos

### `wp queuety log`

Užklauskite žurnalo įrašus.

```bash
wp queuety log [--job=<id>] [--workflow=<id>] [--handler=<name>] [--event=<event>] [--since=<datetime>] [--limit=<n>] [--format=<format>]
```

| Parinktis | Aprašymas |
|---|---|
| `--job=<id>` | Filtruoti pagal užduoties ID |
| `--workflow=<id>` | Filtruoti pagal darbo eigos ID |
| `--handler=<name>` | Filtruoti pagal apdorojimo funkcijos pavadinimą |
| `--event=<event>` | Filtruoti pagal įvykio tipą (`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>` | Rodyti įrašus nuo šios datos ir laiko |
| `--limit=<n>` | Didžiausias rodomų įrašų skaičius (numatytoji reikšmė: `50`) |
| `--format=<format>` | Išvesties formatas: `table` (numatytasis), `json`, `csv`, `yaml` |

Filtrai nejungiami: Queuety taiko pirmą rastą filtrą tokia tvarka: `--job`, `--workflow`, `--handler`, `--event`, `--since`. `--job` ir `--workflow` grąžina visus įrašus nuo seniausių ir nepaiso `--limit`. `--handler` ir `--event` pirmiausia grąžina naujausius įrašus. Nenurodžius filtro, komanda skaito paskutinių 24 valandų įrašus; ši užklausa ir `--since` pateikia įrašus nuo seniausių, todėl `--limit` palieka seniausius įrašus šiame laikotarpyje.

```bash
# 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"
```

### Žurnalų valymas

`LogCommand` apibrėžia `purge` po komandą (`wp queuety log purge --older-than=<days>`), tačiau WP-CLI registruoja `wp queuety log` kaip vieną komandą, todėl po komandos iškviesti nepavyksta ir pateikiama klaida „Per daug pozicinių argumentų: purge“ ([#11](https://github.com/inline0/queuety/issues/11)). Vietoj to išvalykite senus žurnalo įrašus iš PHP:

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

## Saityno kabliukų komandos

### `wp queuety webhook add`

Užregistruokite įvykio saityno kabliuką URL.

```bash
wp queuety webhook add <event> <url>
```

| Parinktis | Aprašymas |
|---|---|
| `<event>` | Įvykio pavadinimas: `job.completed`, `job.failed`, `job.buried` arba `workflow.failed` (privalomas) |
| `<url>` | URL, į kurį siunčiami pranešimai POST užklausomis (privalomas) |

```bash
wp queuety webhook add job.buried https://hooks.slack.com/services/...
```

### `wp queuety webhook list`

Išvardykite visus užregistruotus saityno kabliukus.

```bash
wp queuety webhook list [--format=<format>]
```

| Parinktis | Aprašymas |
|---|---|
| `--format=<format>` | Išvesties formatas: `table` (numatytasis), `json`, `csv`, `yaml` |

### `wp queuety webhook remove`

Pašalinkite saityno kabliuką pagal ID.

```bash
wp queuety webhook remove <id>
```

| Parinktis | Aprašymas |
|---|---|
| `<id>` | Šalinamo saityno kabliuko ID (privalomas) |
