Žiniatinklio kabliukai
Queuety gali siųsti HTTP POST pranešimus į išorinius URL, kai įvyksta konkretūs įvykiai. Naudokite žiniatinklio kabliukus integracijai su stebėsenos sistemomis, Slack ar tinkintomis skydelėmis.
Palaikomi įvykiai
| Įvykis | Įvyksta, kai |
|---|---|
job.completed |
Paprasta apdorojimo funkcijos užduotis arba Contracts\Job klasė sėkmingai užbaigiama (nesiunčiama darbo sekos žingsniams ar būsenų mašinos veiksmams) |
job.failed |
Bandymas sukelia išimtį ir suplanuojamas pakartotinis bandymas |
job.buried |
Išnaudojami visi užduoties pakartotinių bandymų kartai |
workflow.failed |
Darbo sekos žingsnis galutinai nepavyksta |
Žiniatinklio kabliukų registravimas
Per PHP:
PHP
$id = Queuety::webhook_notifier()->register( 'job.buried', 'https://hooks.slack.com/services/...' );
Per CLI:
Shell
wp queuety webhook add job.buried https://hooks.slack.com/services/...
wp queuety webhook add workflow.failed https://monitoring.example.com/queuety
Žiniatinklio kabliukų sąrašas
PHP
$webhooks = Queuety::webhook_notifier()->list();
Shell
wp queuety webhook list
Žiniatinklio kabliukų šalinimas
PHP
Queuety::webhook_notifier()->remove( $webhook_id );
Shell
wp queuety webhook remove 3
Naudingosios apkrovos formatas
Įvykus įvykiui, Queuety siunčia HTTP POST užklausą su JSON turiniu. Naudingoji apkrova visada yra tokios struktūros:
JSON
{
"event": "job.buried",
"data": {
"job_id": 42,
"handler": "send_email",
"queue": "emails",
"error_message": "Connection timed out"
},
"timestamp": "2025-03-15T14:30:00Z"
}
Darbo sekos klaidų atveju:
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"
}
Žiniatinklio kabliukų pristatymas vykdomas geriausiomis pastangomis. Darbininkas paeiliui siunčia užklausas į kiekvieną registruotą URL, nustatydamas vienos sekundės srauto skirtąjį laiką, ir ignoruoja pristatymo klaidas. Todėl lėtas galinis taškas darbininką gali užlaikyti maždaug sekunde kiekvienai URL, tačiau dėl to užduotis niekada nenutrūksta.
Naudojimo atvejai
- Slack įspėjimai. Gaukite pranešimus, kai užduotys perkeliamos į nepavykusių užduočių saugyklą arba nepavyksta darbo sekos.
- PagerDuty integracija. Sukelkite incidentus dėl kritinių užduočių klaidų.
- Tinkintos skydelės. Siųskite įvykius į savo stebėsenos infrastruktūrą.
- Audito žurnalas. Persiųskite įvykius į išorinę žurnalų tarnybą.