delivery.degraded✓ Canlı

Webhook endpoint'in art arda başarısız olunca circuit breaker açılır ve teslimler geçici atlanır (delivery-logs'ta skipped). Bu bildirim sorunu haber verir. Cooldown sonrası tek "probe" teslimi denenir; herhangi bir başarılı teslim breaker'ı tamamen sıfırlar. ⚠️ Bu bildirimin kendisi de webhook'a gider — endpoint ölüyse ulaşmayabilir; gerçek uyarı kanalı portal/e-postadır.

← Lifecycle Webhook'ları

Ne zaman & ne yaparsın

Ne zamanCircuit breaker açıldı (endpoint art arda başarısız) — 6 saatte bir
GeliştiriciEndpoint sağlığını düzelt — teslimler geçici atlanıyor
Abonelik / gatingYok — bağlı (connected) her kuruluma her zaman gelir

Envelope (tüm lifecycle/event'lerde ortak)

AlanTipZorunluAçıklama
idstringIdempotency anahtarı. Aynı id tekrar gelebilir (retry) → dedup et.
typestring"delivery.degraded" — event mi lifecycle mı olduğunu bununla ayırt et.
versionstringEnvelope şema versiyonu ("1").
tenantIdstringHangi tenant (kurulum). İşlemini buna göre yap; cross-tenant doğrula.
occurredAtnumberOluşma zamanı (unix ms).
dataobjectTipe özel gövde (aşağıda).

data alanları

AlanTipZorunluAçıklama
consecutiveDeadnumberArdışık kalıcı-başarısız (dead) teslim sayısı (breaker 10 ardışık dead'de açılır).
windowFailnumberSon 15 dk penceresindeki fail sayısı.
windowOknumberSon 15 dk penceresindeki başarı sayısı.
openedAtnumberBreaker ilk açılış epoch ms — kesintisiz-open kronometresi (72 saat kuralının başlangıcı).
hintstringİnsan-okur ipucu (ör. "düzeltip test event gönderin").

Tam örnek payload

Örnek webhook gövdesi (data alanı teyitli — webhook.site)
{
  "id": "evt_9f2a7c1b",
  "type": "delivery.degraded",
  "version": "1",
  "tenantId": "tnt_123",
  "occurredAt": 1780000000000,
  "data": {
    "consecutiveDead": 10,
    "windowFail": 22,
    "windowOk": 1,
    "openedAt": 1781200000000,
    "hint": "Endpoint art arda başarısız; düzeltip test event gönderin."
  }
}

En iyi pratik

  • Endpoint sağlığını izle — bu sinyal webhook'a gelir ama endpoint ölüyse sana ulaşmayabilir; portal/e-posta uyarısına da güven.
  • Düzelttikten sonra cooldown'u beklemeden açmak için: portaldan "yeniden etkinleştir" veya başarılı bir test event (breaker otomatik sıfırlanır).
  • failMode:closed hook kullanıyorsan breaker açıkken endpoint'ine gidilmez → hook anında deny olur (tenant deneyimi etkilenir); endpoint sağlığını ciddiye al.