Preskoči na vsebino

Spletne kljuke

Queuety lahko ob določenih dogodkih pošlje zunanjim URL-jem obvestila HTTP POST. S spletnimi kljukami se povežite s sistemi za nadzor, Slack ali nadzornimi ploščami po meri.

Podprti dogodki

Dogodek Sproži se, ko
job.completed Se opravilo običajnega obravnavalnika ali razred Contracts\Job uspešno zaključi (ne sproži se za korake poteka dela ali dejanja stroja stanj)
job.failed Poskus sproži izjemo in je načrtovan ponovni poskus
job.buried Opravilo porabi vse poskuse ponavljanja
workflow.failed Korak poteka dela trajno odpove

Registracija spletnih kljuk

Prek PHP:

PHP
$id = Queuety::webhook_notifier()->register( 'job.buried', 'https://hooks.slack.com/services/...' );

Prek CLI:

Lupina
wp queuety webhook add job.buried https://hooks.slack.com/services/...
wp queuety webhook add workflow.failed https://monitoring.example.com/queuety

Prikaz spletnih kljuk

PHP
$webhooks = Queuety::webhook_notifier()->list();
Lupina
wp queuety webhook list

Odstranjevanje spletnih kljuk

PHP
Queuety::webhook_notifier()->remove( $webhook_id );
Lupina
wp queuety webhook remove 3

Oblika tovora

Ob sprožitvi dogodka Queuety pošlje zahtevo POST HTTP s telesom JSON. Tovor ima vedno to obliko:

JSON
{
    "event": "job.buried",
    "data": {
        "job_id": 42,
        "handler": "send_email",
        "queue": "emails",
        "error_message": "Connection timed out"
    },
    "timestamp": "2025-03-15T14:30:00Z"
}

Pri napakah poteka dela:

JSON
{
    "event": "workflow.failed",
    "data": {
        "workflow_id": 7,
        "job_id": 42,
        "handler": "CallLlmStep",
        "error_message": "API rate limit exceeded"
    },
    "timestamp": "2025-03-15T14:30:00Z"
}

Dostava spletnih kljuk je odvisna od najboljšega napora. Delavec po vrsti pošlje zahtevo POST vsakemu registriranemu URL z enosekundno časovno omejitvijo pretakanja in prezre napake pri dostavi, zato lahko počasna končna točka delavcu vzame do približno sekunde na URL, vendar nikoli ne povzroči neuspeha opravila.

Primeri uporabe

  • Slack opozorila. Prejmite obvestilo, ko so opravila skrita ali delovni tokovi ne uspejo.
  • PagerDuty integracija. Sprožite incidente ob kritičnih napakah opravil.
  • Nadzorne plošče po meri. Pretakajte dogodke v svojo infrastrukturo za spremljanje.
  • Revizijska sled. Posredujte dogodke zunanji storitvi za beleženje.