"Expect Negative Result" ne işe yarar?
Kısa cevap
Expect Negative Result, her denetimin sonucunu tersine çevirir: denetim başarısız olduğunda sunucu sağlıklı, başarılı olduğunda sağlıksız sayılır; varsayılan olarak kapalıdır. Tipik kullanımı, sunucuda bir bakım bayrağı (ör. /maintenance.flag dosyası) bulunduğunda sunucuyu trafikten çıkarmaktır. Zaman aşımı, bağlantı reddi ve yanlış adres de başarısızlık sayıldığından bu seçenek açıkken yapılandırma hataları sunucuyu sağlıklı gösterebilir; seçenek yalnızca bu davranış istendiğinde açılır.
Nasıl Çalışır?
- Denetim normal şekilde yapılır (ör. HTTP isteği, beklenen durum kodu ve içerik kontrolü).
- Her denetimin sonucu eşik sayımından önce tersine çevrilir: her tür hata (zaman aşımı, bağlantı reddi, sertifika hatası, beklenmeyen durum kodu, içerik uyuşmazlığı) başarı, başarılı denetim hata sayılır.
- Required Successes ve Required Failures eşikleri tersine çevrilmiş sonuç üzerinden sayılır.
Örnek: Bakım Bayrağı
| Alan | Değer |
|---|---|
| Check Type | HTTP |
| Path + Query | /maintenance.flag |
| Expected Status Codes | 200: OK |
| Expect Negative Result | Açık |
Sunucuda /maintenance.flag yokken istek 404 döner; denetim başarısızdır ve tersine çevrildiği için sunucu sağlıklı sayılır. Uygulama ekibi dosyayı oluşturunca istek 200 döner, sunucu art arda Required Failures kadar denetimden sonra sağlıksız sayılır ve trafikten çıkar. Dosya silinince art arda Required Successes kadar denetimden sonra trafiğe döner.
TR7'de
- Yer: Load Balancer → Profiles → Health Checks → profil → Expect Negative Result (varsayılan kapalı). Scenario dışındaki bütün türlerde, Expression (JSONata) dahil, bulunur.
- Scenario: Senaryonun ana formunda yoktur; senaryodaki her alt denetimin penceresinde ayrı ayrı açılabilir (Senaryo içindeki denetimlerin alanları).
- WEB-CLI:
--negate true(Her türde bulunan eşik alanları). - Görünüm: Profil önizlemesinin Details sekmesinde Expect Negative Result satırında Enabled yazar (Seçilen profilin önizlemesi); Health Checks sekmesindeki her kaydın özeti "Expect negative result" ile başlar.
Sık Karıştırılan Noktalar
- "Yalnızca durum kodunu tersine çevirir." Denetimin bütün sonucu tersine çevrilir; ağ hataları da dahil.
- "Yanlış adres ya da port girersem sunucu düşer." Bu seçenek açıkken bağlantı kurulamaması başarı sayılır ve sunucu sağlıklı görünür.
- "Sunucuyu bakıma almanın tek yolu budur." Kurum Servisinin Maintenance Mode ayarı TR7 tarafından yönetilen yoldur; bu seçenek bakımı sunucu tarafından yönetmek için kullanılır.
Dokümantasyonda nasıl yapılır
