Bir olayı bir senaryoya karşı değerlendirir ve sonucu gerekçesiyle döndürür.

İstek

string
gerekli
Değerlendirmeyi yapacak senaryonun kimliği. Senaryonun canlı sürümü kullanılır.
string
gerekli
Veri modelinizdeki tablo adı — trigger_object bu şemaya göre doğrulanır.
object
gerekli
Değerlendirilecek olayın kendisi. object_id ve updated_at zorunludur.
boolean
varsayılan:"false"
Açıksa her kuralın sonucu ve puanı yanıta eklenir.
boolean
varsayılan:"false"
Açıksa karar ayrıca decision.created webhook’u olarak yayınlanır.

Yanıt

Sonuçlar

Unknown bir hata değildir: senaryo o olayla hiç ilgilenmedi demektir. Kodunuzda bu durumu ayrıca ele alın — Approve ile aynı kefeye koymak, tetikleme koşulunuz daraldığında tüm trafiği sessizce onaylatır.

Kural sonuçları

outcome alanı hit ise kural tetiklenmiş ve puanını eklemiştir; no_hit ise değerlendirilmiş ama tetiklenmemiştir. Tetiklenmeyen kuralların da yanıtta yer alması kasıtlıdır — “bu kural neden hiç çalışmıyor” sorusunun cevabı çoğu zaman buradadır.

Gecikme

execution_time_ms o kararın motorda geçirdiği süredir. Ağ süresini içermez. Tipik bir senaryoda onlarca milisaniyedir; süreyi esas olarak kural sayısı ve hız kurallarının pencere genişliği belirler.

Süre dökümü

Tek bir toplam, kararın yavaş olduğunu söyler ama hangi kısmının yavaş olduğunu söylemez — ve o kısımlar birbirinden bağımsız nedenlerle yavaşlar: kurallar pahalılaşmıştır, bir agregat eskisinden çok satır tarıyordur, veritabanı yük altındadır, ya da mesaj kuyruğu geç onaylıyordur. with_rule_execution_details isteyen bir çağrıda yanıt stage_timings taşır: her aşama, kaç kez çalıştığı ve toplam süresi.
Yanıtta görülebilecek aşamalar:
Kararın veritabanına yazılması listede yoktur ve olmaması doğrudur: yazma, siz cevabı aldıktan sonra ayrı bir tüketicide gerçekleşir. Aşama dökümü yalnızca sizi bekletmiş olan işi sayar.
Tekrarlayan aşamalar listelenmek yerine toplanır, çünkü asıl okunacak cümle onlardadır: “18 sorgu, 240 ms” yavaş kararı açıklar; on sekiz satır dört milisaniye kimsenin toplamadığı aynı bilgidir.
Aşamalar toplamı execution_time_ms etmez. İç içe geçerler ve üst üste binerler; ölçülmemiş bir boşluk da boşta geçen zaman değil, henüz adı konmamış iştir. Bunu bir pasta grafiğine dönüştürmeyin.
Dün gerçekleşmiş tek bir yavaş ödemeyi elinde yalnızca bir korelasyon kimliğiyle soran entegratörün cevabı budur — yüzdelik dilim panolarına tek bir işlem sorulamaz.