Skip to content
Smarter by Design.Simpler for Business

Dynamic Condition ​

Dynamic Condition Nedir? ​

Dynamic Condition koşulu, iki Smart Variables (fx) karşılaştırarak dinamik ve esnek koşullar oluşturmayı sağlayan güçlü bir koşul tipidir.

Query keyx-user-role istek başlığı
Metin eşitliği
Key to compareadmin
Header değeri "admin"e eşitse → koşul TRUE döner

Bu koşul sayesinde herhangi iki dinamik değeri karşılaştırarak esnek trafik yönetimi yapılabilir.

TIP

Protokol ve Seviye Esnekliği ​

Bu koşul hem HTTP hem de TCP protokollerinde, istek ve yanıt fazlarında kullanılabilir.

Dynamic Condition Koşulunun Önemi ​

Dynamic Condition, TR7'nin en güçlü ve esnek koşul tiplerinden biridir. Karşılaştırmanın sol tarafı her zaman Smart Variables (fx) destekler; sağ taraf ise Text equality ve Integer operatörlerinde akıllı değişken, diğer operatörlerde sabit değer kabul eder.

Dynamic Condition sayesinde;

  • Header değerlerini dinamik olarak karşılaştırılabilir,
  • Sayısal değerler karşılaştırılabilir (eşitlik, büyüklük, küçüklük, aralık),
  • Boolean değerleri kontrol edilebilir,
  • IP adreslerini CIDR aralıklarıyla eşleştirilebilir,
  • Regex ile metin eşleştirme yapılabilir.

Desteklenen Operatörler:

OperatörAçıklama
Text equalityMetin değerinin birebir eşleşmesini kontrol eder
Text inclusionMetnin, belirtilen değeri içerip içermediğini kontrol eder
Text startMetnin, belirtilen ifade ile başlayıp başlamadığını kontrol eder
Text endMetnin, belirtilen ifade ile bitip bitmediğini kontrol eder
Text regexMetnin, tanımlanan düzenli ifade (regex) ile eşleşip eşleşmediğini kontrol eder
Integer equalitySayısal değerin belirtilen sayıya eşit olup olmadığını kontrol eder
Integer greater thanSayısal değerin belirtilen değerden büyük olup olmadığını kontrol eder
Integer less thanSayısal değerin belirtilen değerden küçük olup olmadığını kontrol eder
Integer rangeSayısal değerin tanımlı bir aralık içinde olup olmadığını kontrol eder
BooleanMantıksal (true/false) değerin durumunu kontrol eder
IP/cidr matchIP adresinin veya ağın (CIDR) belirtilen IP/CIDR bloğu ile eşleşip eşleşmediğini kontrol eder

Kullanılabildiği vService Tipleri ​

HTTP
L7 TCP
Network

Nasıl Eklenir? ​

Yeni bir Dynamic Condition, TR7 web yönetim arayüzü üzerinden aşağıdaki adımlar izlenerek eklenebilir:

  1. Sol altta bulunan TR7 logosuna tıklanarak Configuration Menu açılır.
  2. Load Balancer → Conditions → Add adımları takip edilir.
  3. Criteria olarak Dynamic condition seçilir.
  4. Koşula ait ilgili konfigürasyonlar yapılandırılır.
  5. Add butonuna tıklanarak koşul eklenir.

Dynamic Condition Ekleme Formu ​

Dynamic Condition Ekleme FormuDynamic Condition Ekleme Formu

INFO

Condition Name ​

Oluşturulacak koşul için isteğe bağlı bir isim girilebilir.

Bu alan, özellikle aşağıdaki senaryolarda önemlidir:

  • Aynı vService altında çok sayıda koşul tanımlandığında,
  • Benzer kriterlere sahip koşulların ayırt edilmesi gerektiğinde,
  • Koşulun hangi iş kuralını temsil ettiğinin hızlıca anlaşılması istendiğinde.

Bu alan boş bırakıldığında, TR7 ilgili koşulun içeriğini analiz ederek Condition Description alanında otomatik ve açıklayıcı bir isim oluşturur. Oluşturulan bu açıklama, koşul listelerinde isim olarak kullanılır.

INFO

Criteria Zorunlu ​

Koşulun tipini belirleyen alandır; aranabilir açılır listeden Dynamic condition seçilir. Bu seçim, formda görüntülenecek alanları belirler. Kriter, koşul kaydedildikten sonra değiştirilemez: farklı bir kritere ihtiyaç duyulursa yeni bir koşul tanımlanır. Listedeki tüm kriterler ve kapsamları için Conditions sayfasındaki kriter kataloğuna bakılabilir.

INFO

Condition Level ​

Koşulun hangi fazda değerlendirileceğini belirler; kayıttan sonra değiştirilemez.

  • On request: İstek alındığında değerlendirilir.
  • On response: Yanıt alındığında değerlendirilir.

INFO

Condition Protocol ​

Koşulun hangi protokolde çalışacağını belirler; kayıttan sonra değiştirilemez.

  • HTTP: HTTP vService'lerde kullanılır.
  • TCP: L7 TCP vService'lerde kullanılır. TCP'de yanıt aşamasına ait değişkenler bulunmadığından, On Response seçilse bile değişken listesi istek kümesinden sunulur.

INFO

Query Key Zorunlu ​

Karşılaştırmanın sol tarafındaki değeri üreten Akıllı Değişken bu alana girilir; sabit metinle değişkenler aynı alanda birleştirilebilir.

TIP

Bu alan Smart Variables destekler. fx butonu ile mevcut değişkenlere erişilebilir ve dinamik içerik oluşturulabilir. Detaylı bilgi için Variables dokümanına bakılabilir.

Değişken listesi, seçili Condition Protocol ve Condition Level değerlerine göre değişir:

DeğişkenAçıklamaKullanılabilirlik
İstemci IP adresiİstemci IP adresiHer protokol ve aşamada
İsteğin yapıldığı dizin/sayfaİstek path'iYalnız HTTP
İstek Başlık bilgisiİstek başlık değeriYalnız HTTP
İstek Çerez bilgisiİstek çerez değeriYalnız HTTP
Cevap Başlık bilgisiYanıt başlık değeriYalnız HTTP + On Response
Dönen durum koduDönen HTTP durum koduYalnız HTTP + On Response

INFO

Operator Zorunlu ​

Karşılaştırma yöntemi seçilir; seçilen operatör, altta açılacak değer alanını belirler.

OperatörAçıklama
Text equalityMetin değerinin birebir eşleşmesini kontrol eder
Text inclusionMetnin, belirtilen değeri içerip içermediğini kontrol eder
Text startMetnin, belirtilen ifade ile başlayıp başlamadığını kontrol eder
Text endMetnin, belirtilen ifade ile bitip bitmediğini kontrol eder
Text regexMetnin, tanımlanan düzenli ifade (regex) ile eşleşip eşleşmediğini kontrol eder
Integer equalitySayısal değerin belirtilen sayıya eşit olup olmadığını kontrol eder
Integer greater thanSayısal değerin belirtilen değerden büyük olup olmadığını kontrol eder
Integer less thanSayısal değerin belirtilen değerden küçük olup olmadığını kontrol eder
Integer rangeSayısal değerin tanımlı bir aralık içinde olup olmadığını kontrol eder
BooleanMantıksal (true/false) değerin durumunu kontrol eder
IP/cidr matchIP adresinin veya ağın (CIDR) belirtilen IP/CIDR bloğu ile eşleşip eşleşmediğini kontrol eder

INFO

Karşılaştırma Değeri Alanı Operatöre göre değişir ​

Karşılaştırmanın sağ tarafındaki değer, seçilen operatöre göre etiketi ve davranışı değişen bir alana girilir:

OperatörAçılan AlanDavranış
Text equalityKey to compareAkıllı değişken destekli metin; fx butonu bulunur
Text inclusion / Text start / Text endText to compareDüz metin (fx yok)
Text regexRegex to compareDüzenli ifade; yanındaki test aracıyla denenebilir
Integer equality / greater than / less thanInteger to compareAkıllı değişken destekli sayısal değer; fx butonu bulunur
Integer rangeRange start + Range endAralık için iki ayrı alan; ikisi de akıllı değişken destekler
Boolean-Değer alanı açılmaz; değişkenin doğru/yanlış durumu değerlendirilir
IP/cidr matchIP/cidr to compareAyrı IP ve CIDR girişleri (varsayılan CIDR: /24); ikisi de doğrulanır

Açılan alanların tümü zorunludur. Integer range'de iki sınır değeri de aralığa dahildir; metin operatörlerinin tümü büyük/küçük harfe duyarlıdır.

TIP

fx butonlu alanlar Smart Variables destekler; mevcut değişkenlere erişilerek dinamik içerik oluşturulabilir. Detaylı bilgi için Variables dokümanına bakılabilir.

INFO

Condition Description ​

Girilen kriter ve değerler doğrultusunda TR7 tarafından otomatik olarak oluşturulur.

Bu açıklama;

  • Koşulun hangi değer için geçerli olduğunu,
  • Hangi kriter üzerinden çalıştığını,
  • Listeleme ekranlarında koşulun hızlıca anlaşılmasını

sağlayacak şekilde sistem tarafından dinamik olarak üretilir.

INFO

Form Butonları ​

Add ​

Add butonuna tıklanarak koşul ekleme işlemi tamamlanır.

Add & Repeat ​

Add & Repeat butonu ile koşul ekleme işlemi tamamlanır ve farklı konfigürasyonlarla ilgili pencereden çıkılmadan yeni bir koşul daha eklenebilir.

Koşul EklendiKoşul Eklendi

Operasyonel Kullanım Önerileri ​

  • Header Değeri Kontrolü. Custom header'ları kontrol ederek uygulama mantığına göre trafik yönetimi yapın.
  • Dinamik Karşılaştırma. İki Akıllı Değişkeni karşılaştırarak dinamik koşullar oluşturun.
  • Sayısal Eşikler. Sayısal operatörlerle response time, status code gibi değerleri kontrol edin.
  • IP Aralık Kontrolü. IP/cidr eşleşmesi ile dinamik IP kontrolü yapın.