Skip to content
Smarter by Design.Simpler for Business

Provide Prometheus Service ​

Provide Prometheus Service Aksiyonu Nedir? ​

Provide Prometheus Service aksiyonu, vService üzerinden Prometheus formatında metrik verileri sunar. Bu aksiyon, belirtilen URL path'inde bir metrik endpoint'i oluşturarak, Prometheus veya uyumlu monitoring sistemlerinin TR7 metriklerini toplamasına olanak tanır.

Bu aksiyon yalnızca istek (request) aşamasında çalışır ve belirtilen path'e gelen istekleri doğrudan yanıtlar (Kurum Servisine iletmez).

1 · Prometheus periyodik scrape (her 30 sn)
GET /metrics HTTP/1.1
Host: tr7-vservice
↓
2 · TR7 vService yanıtı (Prometheus formatı)
tr7_front_current_sessions 42
tr7_front_http_requests_total 15823
tr7_back_active_servers 3
…
↓
3 · Grafana ile görselleştirilir
Dashboard · grafik · alerting

Provide Prometheus Service Aksiyonunun Önemi ​

Prometheus, cloud-native ortamlarda en yaygın kullanılan monitoring ve alerting sistemidir. TR7'nin Prometheus entegrasyonu sayesinde vService performansı ve durumu gerçek zamanlı olarak izlenebilir.

Provide Prometheus Service aksiyonu;

  • Grafana dashboardları için veri kaynağı sağlar,
  • vService bazlı detaylı metrikler sunar,
  • Bağlantı sayıları, istek oranları ve kaynak kullanımı izler,
  • Alerting kuralları için metrik verisi sağlar,
  • Kubernetes ve cloud-native ortamlarla entegrasyon sağlar.

Bu nedenle Provide Prometheus Service aksiyonu, modern monitoring altyapıları için kritik bir bileşendir.

Sunulan Metrikler ​

Bu aksiyon, tanımlandığı vService üzerinden Prometheus formatında metrikler üretir. Metrikler; TR7 trafik işleme katmanı, vService (frontend), Kurum Servisi listesi ve Kurum Servisi sunucusu seviyelerinde gözlemlenebilir.

Traffic Manager (TR7 TM) Metrikleri (tr7_tm_*) ​

Genel Metrikler ​

MetrikTipAçıklama
tr7_tm_uptime_secondsgaugeWorker process'in çalışma süresi (saniye)
tr7_tm_pool_failures_totalcounterWorker başladığından beri başarısız pool allocation sayısı
tr7_tm_current_connectionsgaugeWorker üzerindeki anlık bağlantı sayısı
tr7_tm_connections_totalcounterWorker başladığından beri toplam bağlantı sayısı
tr7_tm_requests_totalcounterWorker başladığından beri toplam istek sayısı
tr7_tm_start_time_secondsgaugeWorker başlangıç zamanı (epoch saniye)
tr7_tm_stoppinggaugeWorker kapanış sürecindeyse 1, değilse 0

Kaynak Limitleri ​

MetrikTipAçıklama
tr7_tm_max_fdsgaugeProcess başına maksimum file descriptor limiti
tr7_tm_max_socketsgaugeProcess başına maksimum socket limiti
tr7_tm_max_connectionsgaugeProcess başına bağlantı limiti (config veya ulimit-n ile)
tr7_tm_hard_max_connectionsgaugeProcess başına "hard" bağlantı limiti (Memmax_MB veya ulimit-n ile)
tr7_tm_max_ssl_connectionsgaugeProcess başına SSL endpoint limiti (front+back), 0=unlimited
tr7_tm_max_pipesgaugeSplice için pipe limiti, 0=unlimited
tr7_tm_max_memory_bytesgaugeProcess bellek hard limiti (komut satırı -m), 0=tanımsız

SSL Metrikleri ​

MetrikTipAçıklama
tr7_tm_current_ssl_connectionsgaugeAnlık SSL endpoint sayısı (front+back)
tr7_tm_ssl_connections_totalcounterWorker başladığından beri toplam SSL endpoint sayısı (front+back)
tr7_tm_current_ssl_rategaugeSon 1 saniyede oluşturulan SSL bağlantı hızı (SslRate)
tr7_tm_limit_ssl_rategaugeSSL bağlantı hızı limiti (global.maxsslrate)
tr7_tm_max_ssl_rategaugeWorker boyunca görülen en yüksek SSL bağlantı hızı (SslRate)
tr7_tm_current_frontend_ssl_key_rategaugeSon 1 saniyede frontend tarafında üretilen SSL key sayısı
tr7_tm_max_frontend_ssl_key_rategaugeWorker boyunca görülen en yüksek frontend SSL key üretim hızı
tr7_tm_frontend_ssl_reusegaugeYeni key gerekmeyen frontend SSL bağlantı oranı (%)
tr7_tm_current_backend_ssl_key_rategaugeSon 1 saniyede Kurum Servisi tarafında üretilen SSL key sayısı
tr7_tm_max_backend_ssl_key_rategaugeWorker boyunca görülen en yüksek Kurum Servisi SSL key üretim hızı
tr7_tm_ssl_cache_lookups_totalcounterSSL session cache lookup toplamı
tr7_tm_ssl_cache_misses_totalcounterSSL session cache miss toplamı

Pipe / Splice Metrikleri ​

MetrikTipAçıklama
tr7_tm_pipes_used_totalcounterAnlık kullanımda olan pipe sayısı
tr7_tm_pipes_free_totalcounterAnlık ayrılmış ve kullanılabilir pipe sayısı
tr7_tm_spliced_bytes_out_totalcounterKernel pipe (splice) üzerinden gönderilen toplam byte

Bağlantı ve Oturum Hız Metrikleri (Rate/Limit/Max) ​

MetrikTipAçıklama
tr7_tm_current_connection_rategaugeSon 1 saniyedeki frontend bağlantı hızı (ConnRate)
tr7_tm_limit_connection_rategaugeConnRate limiti (global.maxconnrate)
tr7_tm_max_connection_rategaugeWorker boyunca görülen en yüksek ConnRate
tr7_tm_current_session_rategaugeSon 1 saniyedeki oturum hızı (SessRate)
tr7_tm_limit_session_rategaugeSessRate limiti (global.maxsessrate)
tr7_tm_max_session_rategaugeWorker boyunca görülen en yüksek SessRate

HTTP Sıkıştırma ve Zlib ​

MetrikTipAçıklama
tr7_tm_http_comp_bytes_in_totalcounterSon 1 saniyede HTTP compressor'a giren byte
tr7_tm_http_comp_bytes_out_totalcounterSon 1 saniyede HTTP compressor'dan çıkan byte
tr7_tm_limit_http_compgaugeCompression otomatik devre dışı eşiği (CompressBpsOut)
tr7_tm_current_zlib_memorygaugeAnlık zlib bellek kullanımı (byte)
tr7_tm_max_zlib_memorygaugeZlib bellek limiti (global.maxzlibmem)

Task / Queue / Listener Durumu ​

MetrikTipAçıklama
tr7_tm_current_tasksgaugeToplam task sayısı (active + sleeping)
tr7_tm_current_run_queuegaugeAktif task+tasklet sayısı
tr7_tm_idle_time_percentgaugeSon 1 saniyede beklemede geçen süre (%)
tr7_tm_jobsgaugeAktif job sayısı (frontend/master/listener)
tr7_tm_unstoppable_jobsgaugeUnstoppable job sayısı (master bağlantıları)
tr7_tm_listenersgaugeAktif listener sayısı
tr7_tm_active_peersgaugeVerified active peer bağlantı sayısı
tr7_tm_connected_peersgaugeBağlantı adımını geçen peer sayısı

Log / DNS / Busy Polling ​

MetrikTipAçıklama
tr7_tm_dropped_logs_totalcounterWorker boyunca düşürülen log sayısı
tr7_tm_failed_resolutionscounterWorker boyunca başarısız DNS çözümleme sayısı
tr7_tm_busy_polling_enabledgaugeBusy-polling aktifse 1, değilse 0

Trafik Byte Metrikleri ​

MetrikTipAçıklama
tr7_tm_bytes_out_totalcounterWorker boyunca gönderilen toplam byte
tr7_tm_bytes_out_rategaugeSon 1 saniyedeki outgoing byte hızı

Bellek (Pool) Kullanımı ​

MetrikTipAçıklama
tr7_tm_pool_allocated_bytesgaugePool'larda ayrılmış bellek miktarı (byte)
tr7_tm_pool_used_bytesgaugePool'larda kullanılan bellek miktarı (byte)

vService (Frontend) Metrikleri (tr7_front_*) ​

MetrikTipAçıklama
tr7_front_current_sessionsgaugevService üzerinde anlık session sayısı
tr7_front_max_sessionsgaugeWorker boyunca görülen en yüksek anlık session sayısı
tr7_front_limit_sessionsgaugeSession limiti (maxconn/fullconn)
tr7_front_sessions_totalcounterWorker başladığından beri toplam session
tr7_front_bytes_in_totalcounterToplam request byte
tr7_front_bytes_out_totalcounterToplam response byte
tr7_front_requests_denied_totalcounterReddedilen istek sayısı
tr7_front_responses_denied_totalcounterReddedilen yanıt sayısı
tr7_front_request_errors_totalcounterGeçersiz istek sayısı
tr7_front_statusgaugevService durumu (state="UP/DOWN")
tr7_front_limit_session_rategaugeSaniyelik session kabul limiti
tr7_front_max_session_rategaugeWorker boyunca görülen en yüksek session/s
tr7_front_http_responses_totalcounterHTTP yanıt sayıları (1xx/2xx/3xx/4xx/5xx/other)
tr7_front_http_requests_rate_maxgaugeWorker boyunca görülen en yüksek HTTP request/s
tr7_front_http_requests_totalcounterToplam HTTP request
tr7_front_http_comp_bytes_in_totalcounterCompressor'a giren byte toplamı
tr7_front_http_comp_bytes_out_totalcounterCompressor'dan çıkan byte toplamı
tr7_front_http_comp_bytes_bypassed_totalcounterCompression bypass edilen byte (limit/CPU/memory)
tr7_front_http_comp_responses_totalcounterSıkıştırılan HTTP response sayısı
tr7_front_connections_rate_maxgaugeWorker boyunca görülen en yüksek bağlantı/s
tr7_front_connections_totalcounterToplam yeni bağlantı (accepted)
tr7_front_intercepted_requests_totalcounterIntercept edilen istekler (redirect/stats/service)
tr7_front_denied_connections_totalcounterTCP rule ile bloklanan bağlantılar
tr7_front_denied_sessions_totalcounterTCP rule ile bloklanan session'lar
tr7_front_failed_header_rewriting_totalcounterBaşarısız HTTP header rewrite sayısı
tr7_front_http_cache_lookups_totalcounterHTTP cache lookup sayısı
tr7_front_http_cache_hits_totalcounterHTTP cache hit/miss sayacı (çıktıya göre isimlendirilmiş)
tr7_front_internal_errors_totalcounterİç hata sayısı

Kurum Servisi Metrikleri (tr7_back_*) ​

MetrikTipAçıklama
tr7_back_current_queuegaugeAnlık kuyruktaki bağlantı sayısı
tr7_back_max_queuegaugeWorker boyunca görülen en yüksek kuyruk
tr7_back_current_sessionsgaugeAnlık session sayısı
tr7_back_max_sessionsgaugeWorker boyunca görülen en yüksek anlık session
tr7_back_limit_sessionsgaugeSession limiti (Kurum Servisi fullconn vb.)
tr7_back_sessions_totalcounterToplam session
tr7_back_bytes_in_totalcounterToplam request byte
tr7_back_bytes_out_totalcounterToplam response byte
tr7_back_requests_denied_totalcounterReddedilen istek sayısı
tr7_back_responses_denied_totalcounterReddedilen yanıt sayısı
tr7_back_connection_errors_totalcounterBackend->server bağlantı hataları
tr7_back_response_errors_totalcounterGeçersiz yanıt hataları
tr7_back_retry_warnings_totalcounterRetry sayısı
tr7_back_redispatch_warnings_totalcounterRedispatch sayısı
tr7_back_statusgaugeBackend durumu (state="UP/DOWN")
tr7_back_weightgaugeBackend efektif weight
tr7_back_active_serversgaugeAktif (UP, weight>0) server sayısı
tr7_back_backup_serversgaugeBackup server sayısı
tr7_back_check_up_down_totalcounterCheck kaynaklı UP<->DOWN geçiş sayısı
tr7_back_check_last_change_secondsgaugeSon durum değişiminden beri geçen süre
tr7_back_downtime_seconds_totalcounterDOWN durumda geçirilen toplam süre
tr7_back_loadbalanced_totalcounterLoad balancing ile yönlendirilen istek sayısı
tr7_back_max_session_rategaugeWorker boyunca görülen en yüksek session/s
tr7_back_http_responses_totalcounterHTTP yanıt sayıları (1xx/2xx/3xx/4xx/5xx/other)
tr7_back_http_requests_totalcounterToplam HTTP request
tr7_back_client_aborts_totalcounterClient abort sayısı
tr7_back_server_aborts_totalcounterServer abort sayısı
tr7_back_http_comp_bytes_in_totalcounterCompressor'a giren byte toplamı
tr7_back_http_comp_bytes_out_totalcounterCompressor'dan çıkan byte toplamı
tr7_back_http_comp_bytes_bypassed_totalcounterCompression bypass edilen byte
tr7_back_http_comp_responses_totalcounterSıkıştırılan HTTP response sayısı
tr7_back_last_session_secondsgaugeSon trafik görülen süre (saniye)
tr7_back_queue_time_average_secondsgaugeOrtalama queue süresi (son 1024 bağlantı)
tr7_back_connect_time_average_secondsgaugeOrtalama connect süresi (son 1024 bağlantı)
tr7_back_response_time_average_secondsgaugeOrtalama response süresi (son 1024 bağlantı)
tr7_back_total_time_average_secondsgaugeOrtalama total süre (son 1024 bağlantı)
tr7_back_failed_header_rewriting_totalcounterBaşarısız HTTP header rewrite sayısı
tr7_back_connection_attempts_totalcounterToplam outbound connection attempt
tr7_back_connection_reuses_totalcounterReuse edilen bağlantı sayısı
tr7_back_http_cache_lookups_totalcounterHTTP cache lookup sayısı
tr7_back_http_cache_hits_totalcounterHTTP cache hit/miss sayacı (çıktıya göre isimlendirilmiş)
tr7_back_max_queue_time_secondsgaugeGörülen en yüksek queue süresi
tr7_back_max_connect_time_secondsgaugeGörülen en yüksek connect süresi
tr7_back_max_response_time_secondsgaugeGörülen en yüksek response süresi
tr7_back_max_total_time_secondsgaugeGörülen en yüksek total süre
tr7_back_internal_errors_totalcounterİç hata sayısı
tr7_back_uweightgaugeBackend user weight
tr7_back_agg_server_statusgaugeBackend üzerinde sunucu durumlarının agregasyonu
tr7_back_agg_server_check_statusgauge(Deprecated) Agregate server status metriği
tr7_back_agg_check_statusgaugeCheck status agregasyonu (L4/L6/L7 vb. label'lar)

Backend Server Metrikleri (tr7_backsrv_*) ​

MetrikTipAçıklama
tr7_backsrv_current_queuegaugeServer üzerindeki anlık kuyruk
tr7_backsrv_max_queuegaugeWorker boyunca görülen en yüksek kuyruk
tr7_backsrv_current_sessionsgaugeServer üzerindeki anlık session
tr7_backsrv_max_sessionsgaugeWorker boyunca görülen en yüksek anlık session
tr7_backsrv_limit_sessionsgaugeServer session limiti (tanımlı değilse NaN)
tr7_backsrv_sessions_totalcounterServer toplam session
tr7_backsrv_bytes_in_totalcounterServer toplam request byte
tr7_backsrv_bytes_out_totalcounterServer toplam response byte
tr7_backsrv_responses_denied_totalcounterServer bazında denied response
tr7_backsrv_connection_errors_totalcounterServer bağlantı hataları
tr7_backsrv_response_errors_totalcounterGeçersiz yanıt hataları
tr7_backsrv_retry_warnings_totalcounterRetry sayısı
tr7_backsrv_redispatch_warnings_totalcounterRedispatch sayısı
tr7_backsrv_statusgaugeServer durumu (state="UP/DOWN/MAINT/DRAIN/NOLB")
tr7_backsrv_weightgaugeServer efektif weight
tr7_backsrv_activegaugeServer aktif mi (UP ve weight>0)
tr7_backsrv_backupgaugeServer backup mı
tr7_backsrv_check_failures_totalcounterCheck failure sayısı (check yoksa NaN)
tr7_backsrv_check_up_down_totalcounterCheck kaynaklı UP<->DOWN geçiş sayısı
tr7_backsrv_check_last_change_secondsgaugeSon durum değişimi üzerinden geçen süre
tr7_backsrv_downtime_seconds_totalcounterDOWN durumda geçirilen toplam süre
tr7_backsrv_queue_limitgaugeQueue limiti (maxqueue), yoksa NaN
tr7_backsrv_current_throttlegaugeSlowstart throttle oranı (0-100), yoksa NaN
tr7_backsrv_loadbalanced_totalcounterServer'a yönlendirilen istek sayısı
tr7_backsrv_max_session_rategaugeWorker boyunca görülen en yüksek session/s
tr7_backsrv_http_responses_totalcounterHTTP yanıt sayıları (1xx..5xx..other)
tr7_backsrv_client_aborts_totalcounterClient abort sayısı
tr7_backsrv_server_aborts_totalcounterServer abort sayısı
tr7_backsrv_last_session_secondsgaugeSon trafik görülen süre (saniye)
tr7_backsrv_queue_time_average_secondsgaugeOrtalama queue süresi
tr7_backsrv_connect_time_average_secondsgaugeOrtalama connect süresi
tr7_backsrv_response_time_average_secondsgaugeOrtalama response süresi
tr7_backsrv_total_time_average_secondsgaugeOrtalama total süre
tr7_backsrv_failed_header_rewriting_totalcounterBaşarısız HTTP header rewrite sayısı
tr7_backsrv_connection_attempts_totalcounterToplam outbound connection attempt
tr7_backsrv_connection_reuses_totalcounterReuse edilen bağlantı sayısı
tr7_backsrv_idle_connections_currentgaugeReuse için hazır idle connection sayısı
tr7_backsrv_idle_connections_limitgaugeIdle connection limiti (pool_max_conn), yoksa NaN
tr7_backsrv_max_queue_time_secondsgaugeGörülen en yüksek queue süresi
tr7_backsrv_max_connect_time_secondsgaugeGörülen en yüksek connect süresi
tr7_backsrv_max_response_time_secondsgaugeGörülen en yüksek response süresi
tr7_backsrv_max_total_time_secondsgaugeGörülen en yüksek total süre
tr7_backsrv_internal_errors_totalcounterİç hata sayısı
tr7_backsrv_unsafe_idle_connections_currentgaugeUnsafe idle connection sayısı
tr7_backsrv_safe_idle_connections_currentgaugeSafe idle connection sayısı
tr7_backsrv_used_connections_currentgaugeKullanımda olan connection sayısı
tr7_backsrv_need_connections_currentgaugeTahmini ihtiyaç duyulan connection sayısı
tr7_backsrv_uweightgaugeServer user weight

TIP

Bu metrikler Grafana ile görselleştirilerek kapsamlı monitoring dashboardları oluşturulabilir. TR7, hazır Grafana dashboard şablonları da sunar.

Kullanılabildiği vService Tipleri ​

HTTP
L7 TCP
Network

Çalışma Anı ​

İstek Anı (On Request)
Cevap Anı (On Response)

Nasıl Eklenir? ​

Yeni bir Provide Prometheus Service Aksiyonu, 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 → Actions → Add adımları takip edilir.
  3. Aksiyon için benzersiz ve açıklayıcı bir isim girilir.
  4. Action Type olarak Provide Prometheus Service seçilir.
  5. Aksiyona ait ilgili konfigürasyonlar yapılandırılır.
  6. Conditions sekmesinden aksiyonun hangi koşul/koşullarda devreye gireceği belirlenir.
  7. Add butonuna tıklanarak aksiyon eklenir.

Provide Prometheus Service Aksiyonu Ekleme Formu ​

Provide Prometheus Service Aksiyonu Ekleme FormuProvide Prometheus Service Aksiyonu Ekleme Formu

INFO

Action Name ​

Oluşturulacak olan aksiyona benzersiz ve açıklayıcı bir isim girilir.

INFO

Action Type ​

Aksiyon tipi olarak Provide Prometheus service seçilir.

Aksiyon yalnızca istek aşamasında çalıştığından formda Execution Level ve Rule Protocol alanları bulunmaz; sayaç da desteklenmediğinden Hit Counter ve Set Variable on Hit alanları yer almaz. Aynı vService'e farklı adreslerle birden fazla metrik ucu tanımlanabilir.

INFO

Metric Address Zorunlu Varsayılan: /metrics ​

Prometheus metriklerinin sunulacağı URL dizinidir. Bu adrese gelen istekler Prometheus formatında metrik çıktısı döndürür. Aksiyon eklendiğinde alan varsayılan olarak /metrics değeriyle gelir.

Adres tam olarak eşleşmelidir

Eşleşme birebir yapılır ve büyük/küçük harfe duyarlıdır: /metrics tanımlıyken /metrics/ veya /Metrics adresleri eşleşmez. Adres / ile başlamalıdır; başlamazsa aksiyon kaydedilir ancak hiçbir zaman çalışmaz.

Yalnızca dizin denetlenir; istek yöntemi (GET, POST vb.) dikkate alınmaz ve adresin sonundaki parametreler eşleşmeyi etkilemez.

TIP

Örnek değerler:

  • /metrics: Standart Prometheus path'i
  • /prometheus: Alternatif path
  • /monitoring/metrics: Nested path

INFO

Conditions ​

Bu alanda, ilgili aksiyonun hangi koşul veya koşullar sağlandığında devreye gireceği tanımlanır.

Bir veya birden fazla koşul eklenerek, and/or yapısı ile davranışın hedefli ve kontrollü şekilde uygulanması sağlanabilir.

Koşullar hakkında detaylı bilgi Conditions sayfasında yer alır.

WARNING

Bu alanda herhangi bir koşul tanımlanmazsa, ilgili aksiyon koşulsuz (Always) olarak çalışır. Bu durumda aksiyon, ilgili vService'e gelen tüm trafiğe uygulanır.

Canlı ortamlarda, koşul tanımlanmadan aksiyon kullanılması beklenmeyen durumlara (servis kesintilerine) yol açabilir. Bu nedenle aksiyon oluşturulurken mutlaka en az bir koşul tanımlanması önerilir.

WARNING

Prometheus endpoint'i hassas bilgiler içerebilir. Production ortamında IP bazlı veya authentication tabanlı koşullarla erişimi kısıtlamanız önerilir.

INFO

Form Butonları ​

Add ​

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

Add & Repeat ​

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

Aksiyon EklendiAksiyon Eklendi

Prometheus Formatında Metrik Çıktısı ​

Belirtilen path'e yapılan GET isteği aşağıdaki formatta çıktı döndürür:

Prometheus Metrik Çıktısı ÖrneğiPrometheus Metrik Çıktısı Örneği

Prometheus Konfigürasyon Örneği ​

yaml
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
    - targets: ["localhost:9090"]

- job_name: "TR7 vService Dashboard"
    static_configs:
    - targets: ['172.16.102.200:80']

Metrik ucunda kimlik doğrulaması yoktur

Aksiyon, tanımlanan adrese gelen istekleri kimlik doğrulaması aramadan yanıtlar. Erişimi sınırlamanın tek yolu Conditions alanıdır; koşul tanımlanmazsa metrikler vService'e erişebilen herkese açık olur.

Metrik çıktısı vService adları, Kurum Servisi sayıları, bağlantı ve hata istatistikleri gibi altyapı bilgilerini içerdiğinden, erişim en az Source IP koşuluyla izleme sunucularıyla sınırlandırılmalıdır.

Operasyonel ve Güvenli Kullanım Önerileri ​

  • Endpoint korunur. Prometheus endpoint'i sistem bilgileri içerir; erişim IP whitelist ya da authentication ile kısıtlanır. Conditions alanı kullanılarak yalnızca monitoring sistemlerinin erişmesine izin verilir.
  • Standart path kullanılır. /metrics path'i Prometheus ekosisteminde standarttır; farklı bir path seçildiğinde Prometheus scrape yapılandırması buna göre düzenlenir.
  • Scrape interval ayarlanır. Prometheus scrape interval'i ihtiyaca göre belirlenir; çok sık scrape (< 10 saniye) gereksiz yük oluşturur. Tipik değer 15-30 saniyedir.
  • Grafana ile Entegre Edin. TR7 metriklerini Grafana dashboard'larında görselleştirerek kapsamlı monitoring sağlayın.
  • Alerting kuralları oluşturulur. Prometheus alerting kurallarıyla bağlantı sayısı, hata oranı gibi metriklerde eşik değerler belirlenerek önleyici izleme yapılır.

Canlı Ortamlarda Yaygın Kullanım Senaryoları ​

Aşağıdaki örnekler, ilgili aksiyonun gerçek sistemlerde en sık karşılaşılan kullanım senaryolarında nasıl uygulandığını göstermektedir. Bu senaryolar, canlı ortamlarda yaygın olarak tercih edilen ve sahada edinilmiş deneyimlere dayanan pratikleri temel alır.

Senaryo 1: IP Whitelist ile Güvenli Prometheus Endpoint ​

Problem: TR7 vService'lerinden Prometheus metrikleri sunulması gerekiyor ancak metrik endpoint'i herkese açık olursa sistem bilgileri (bağlantı sayısı, Kurum Servisi durumu, kaynak kullanımı) sızabilir. Sadece monitoring sunucularının erişmesi gerekiyor.

Çözüm: Prometheus metrikleri standart /metrics path'inde sunulur ve Source IP koşuluyla yalnızca monitoring sunucularının erişmesine izin verilir.

Konfigürasyon:

  • Metric Address: /metrics
  • Conditions: Source IP 10.0.1.50 (Prometheus server IP)

Sonuç:

  • ✅ Güvenli erişim → Sadece Prometheus sunucusu (10.0.1.50) metriklere erişebilir.
  • ✅ Bilgi sızıntısı önlenir → Harici kullanıcılar sistem bilgilerine erişemez.
  • ✅ Standart path → Prometheus varsayılan /metrics path'ini kullanır, ekstra config gerekmez.
  • ✅ Otomatik keşif → Prometheus http://tr7-vservice/metrics adresinden metrikleri scrape eder.
  • ❌ Diğer istekler → Prometheus sunucusu dışındaki IP'lerden gelen /metrics istekleri metrik çıktısı almaz; bu istekler normal trafik gibi Kurum Servisine iletilir.

Prometheus scrape config:

yaml
scrape_configs:
  - job_name: 'tr7-production'
    static_configs:
      - targets: ['172.16.102.200:80']
    metrics_path: '/metrics'
    scrape_interval: 30s