Kurumsal trafik yöneticilerinde metrik ihtiyacı basittir: sistem ne kadar yoğun, hangi vService ne kadar istek alıyor, hangi kurum servisi yavaşlıyor, hangi health check DOWN, WAAP saldırı oranı yükseliyor mu? Ancak birçok mimaride bu soruların cevabı için ayrı exporter binary kurulur, izlenir, güncellenir ve arızalandığında ayrıca müdahale edilir.
Çoklu süreç ve fork mimarilerinde problem daha da büyür. Her süreç kendi istatistiğini üretir; bunları tek scrape noktasında birleştirmek gerekir. Eğer bu agregasyon düzgün yapılmazsa Prometheus tarafında eksik metrik, çifte sayım veya tutarsız panel oluşur. Operasyon ekibi metrik üretim hattını da uygulama gibi yönetmek zorunda kalır.
Dashboard tarafı da ayrı bir maliyettir. Boş bir Grafana kurulumuna veri bağlamak yeterli değildir; panel, label, alarm, eşik ve servis kırılımı tek tek hazırlanmalıdır. vService, kurum servisi grubu, health check durumu ve tenant benzeri etiketler doğru modellenmezse dashboard sadece genel sistem grafiği verir, operasyonel karar üretemez.
Bir diğer kritik ayrım metric tipidir. Sürekli artan değerler counter olarak, anlık durum ve limit değerleri gauge olarak expose edilmelidir. Yanlış tip seçimi rate hesaplarını, alarm kurallarını ve uzun dönem trend analizini bozar.
TR7 Yerleşik Prometheus + Grafana Entegrasyonu bu yükü azaltır: 50+ metrik, çoklu süreç agregasyonu, doğru gauge/counter ayrımı, vService ve bService label modeli ve hazır Grafana dashboard JSON'larıyla gözlemlenebilirliği platformun doğal parçası yapar.
TR7, metrik yayınlamayı dış exporter'a bırakmadan, yerleşik endpoint, süreç agregasyonu ve hazır dashboard paketiyle çözer.
TR7 metrikleri Prometheus exposition formatında yayınlar. HELP ve TYPE satırlarıyla birlikte gauge ve counter değerleri scrape edilebilir biçimde sunulur.
Fork'lardan ve alt süreçlerden gelen trafik istatistikleri ana metrik yayıncısında toplanır. Prometheus tek endpoint'i scrape eder; operatör süreç başına ayrı exporter yönetmek zorunda kalmaz.
Sürekli artan sayaçlar counter, anlık durum ve limit değerleri gauge olarak expose edilir. Bu ayrım Prometheus rate hesapları, alarm kuralları ve dashboard panelleri için doğru veri modeli sağlar.
TR7, detaylı ve global görünüm için hazır Grafana dashboard JSON'ları sunar. Operasyon ekibi panel tasarımına sıfırdan başlamak yerine hazır metrik modelini kullanır.
Yerleşik Prometheus + Grafana Entegrasyonu; device, vService, bService, QoS ve health check metriklerini tek gözlemlenebilirlik modelinde toplar.
`tr7_device_uptime` host bazında cihaz çalışma süresini saniye olarak verir. `tr7_device_cpu_detailed` kullanıcı, sistem, nice ve irq gibi CPU kırılımlarını gauge olarak sunar. `tr7_device_mem_detailed` total, active, cached ve buffer bellek değerlerini MB seviyesinde izlemeyi sağlar. Bu metrikler trafik davranışını sistem kaynaklarıyla birlikte değerlendirmek için temel oluşturur.
`tr7_tm_qos_cpu_count`, vService için tanımlanan CPU core sayısını gösterir. `tr7_tm_qos_cpu_percent_limit` CPU yüzde limitini, `tr7_tm_qos_memory_limit` ise bellek limitini expose eder. Bu metrikler kapasite planlama ve tenant bazlı kaynak takibi için önemlidir. Operatör trafik artışını yalnızca istek sayısı olarak değil, ayrılmış kaynaklarla birlikte görür.
vService seviyesinde uptime, process idle percent, SSL bağlantıları, SSL toplamları, SSL rate, compression in/out, logs dropped, memory usage, session limit, session total, request rate ve request total gibi metrikler sunulur. 1xx, 2xx, 3xx, 4xx ve 5xx yanıt sayıları counter olarak izlenebilir. Bağlantı toplamı, bytes in/out ve request error gibi değerler servis davranışını netleştirir. Bu metrikler SLA, kapasite ve hata analizi için ana panel verisidir.
`tr7_tm_vservice_waf_attack_rate` metriği WAAP saldırı oranını Prometheus tarafına taşır. Güvenlik ekipleri bu metrik üzerinden alarm kuralı yazabilir ve saldırı trendlerini dashboard'da izleyebilir. Trafik hacmi ile saldırı oranı aynı vService label modeliyle birlikte görülebilir. Böylece güvenlik sinyali operasyon metriklerinden kopuk kalmaz.
bService seviyesinde newsession, session, response sınıfları, bytes in/out, connection error, response error ve bağlantı havuzu durumları izlenebilir. Queue time, connect time, response time ve total time metrikleri kurum servisi gecikmesini analiz etmeye yardımcı olur. Bu metrikler hangi hedefin yavaşladığını veya hata üretmeye başladığını daha net gösterir. vService genel grafiğinin arkasındaki gerçek kurum servisi davranışı görünür hale gelir.
`tr7_tm_bservice_hc_state` host, vService, bservice_group, bservice ve state label'larıyla health check durumunu gösterir. UP değeri 1, DOWN değeri 0, NOCHECK değeri 2 olarak modellenir. Bu yapı Prometheus alarm kuralları için pratiktir; DOWN olan kurum servisi doğrudan alarm tetikleyebilir. `tr7_tm_bservice_hc_time` ile health check süresi de ms olarak izlenebilir.
Backend label modelinde bservice_group alanı bulunur. Bu alan varsayılan grup ile dinamik veya koşullu kurum servisi gruplarının ayrıştırılmasını sağlar. Büyük vService yapılandırmalarında hangi grup altında sorun yaşandığı panelden anlaşılır. Operasyon ekibi tek bir düz hedef listesi yerine topolojik görünürlük kazanır.
TR7'nin alt süreçlerinden gelen metrikler ana yayıncıda birleştirilir. Prometheus tek `/metrics` endpoint'ini scrape ederek tüm görünürlüğü alır. Bu, süreç başına ayrı scrape ve manuel agregasyon ihtiyacını azaltır. Özellikle yüksek trafikli çoklu fork mimarilerinde tutarlı dashboard üretmek için kritiktir.
Değeri olmayan metric alanları expose edilmez. Bu davranış Prometheus tarafında anlamsız null gauge kirliliğini azaltır. Dashboard panelleri yalnızca gerçekten mevcut olan değerleri gösterir. Konfigürasyona göre bulunmayan alanlar metrik serisi olarak şişmez.
TR7_Detailed_Dashboard ve TR7_Global_Dashboard JSON paketleri Grafana'ya import edilebilir. Global dashboard genel cihaz ve servis görünürlüğü sunarken, detaylı dashboard vService ve kurum servisi kırılımlarına odaklanır. Operasyon ekibi panel tasarımını sıfırdan yapmak zorunda kalmaz. Hazır dashboard'lar Prometheus label modeline göre düzenlenmiştir.
Prometheus entegrasyonu; metric prefix, label modeli, type ayrımı ve health check durum kodlarıyla birlikte işletilir.
Trafik yöneticisi metrikleri `tr7_tm_*` prefix'i altında sunulur. Sistem metrikleri ise `tr7_device_*` prefix'iyle ayrıştırılır. Bu isimlendirme Prometheus sorgularında metrik ailesini kolayca bulmayı sağlar.
vService metrikleri `{host, vservice}` label setiyle yayınlanır. host değeri cihaz hostname bilgisinden gelir. vService label'ı servis bazlı filtreleme ve dashboard değişkenleri için kullanılır.
bService metrikleri `{host, vservice, bservice_group, bservice}` label setiyle sunulur. Bu model hem servis hem kurum servisi grubu hem de tekil hedef seviyesinde analiz yapılmasını sağlar. Alarm kuralları belirli bService'e kadar daraltılabilir.
Health check state metriğinde state label'ı UP, DOWN veya NOCHECK değerini taşır. Numeric değerler alarm kuralı yazmayı kolaylaştırır. DOWN eşleşmeleri doğrudan Prometheus alert kuralına bağlanabilir.
req_tot, ssl_tot, session_total, yanıt kodu sayaçları, bytes in/out ve request error gibi sürekli artan değerler counter olarak expose edilir. Bu değerler Prometheus rate veya increase fonksiyonlarıyla analiz edilmelidir. Uzun dönem trafik trendleri için doğru metric tipidir.
Request rate, mevcut bağlantı sayısı, limit değerleri, health check time, queue time, connect time ve response time gibi anlık değerler gauge olarak sunulur. Gauge metrikler mevcut durumu gösterir ve eşik bazlı alarm kuralları için kullanılır. Limit ve kullanım değerleri aynı dashboard'da birlikte gösterilebilir.
SRE ekibi TR7 `/metrics` endpoint'ini Prometheus scrape hedefi olarak ekler. Hazır Grafana dashboard JSON'ları import edilerek global ve detaylı görünüm hızlıca açılır. Ayrı exporter deployment'ı gerekmez.
Operasyon ekibi `tr7_tm_vservice_memory_alloc` ve ilgili bellek metriklerini zaman içinde izleyebilir. Kullanım belirlenen eşiğe yaklaştığında alarm üretilebilir. Kaynak artırımı tahmine değil, ölçülen trende göre yapılır.
Güvenlik ekibi `tr7_tm_vservice_waf_attack_rate` metriği için Prometheus alert kuralı tanımlayabilir. Belirli vService üzerinde saldırı oranı yükseldiğinde olay yönetimi süreci tetiklenir. Trafik ve güvenlik görünürlüğü aynı dashboard'da birleşir.
`tr7_tm_bservice_hc_state` metriğinde DOWN durumu 0 olarak görüldüğünde alarm üretilebilir. Alarm host, vService, bservice_group ve bservice label'larıyla doğrudan etkilenen hedefi gösterir. SRE ekibi hangi kurum servisinin düştüğünü hızlıca ayırt eder.
50+ yerleşik metrik, çoklu süreç agregasyonu ve hazır dashboard JSON'ları. Kendi ortamınızda canlı bir kurulumda gösterelim.