Konya'da küçük bir online mağaza, Uptime Kuma'yı web sunucusuyla aynı veri merkezindeki bir VPS'e (kiralık sanal sunucu) kurmuş ve panel üç gündür yeşil. Pazartesi günü destek ekibine gelen mesajlar başka bir şey söylüyor: mobil veriyle giren müşteriler ödeme sayfasını açamıyor, Almanya'daki bir bayi ise siteye hiç ulaşamıyor. Arıza siteye giden yolun bir yerinde. Yalnız bir ağı etkileyen bir yönlendirme sorunu da olabilir, gereğinden geniş tutulmuş bir coğrafi engelleme kuralı da. İzleme aracı sitenin hemen yanında durduğu için bunların hiçbirini görmedi.
Bu yazıda %99,9 uptime'ın saat olarak karşılığını, Uptime Kuma'nın ne yaptığını, hangi monitör tipini seçmeniz gerektiğini ve aracın Docker ile nasıl kurulduğunu anlatıyoruz. Ardından tek bir yerden kontrol etmenin neden kör nokta bıraktığını, bir monitörün kontrollerini HTTP ya da SOCKS5 proxy üzerinden nasıl göndereceğinizi ve bunun ne kadar trafik harcadığını gösteriyoruz.
Uptime nedir, %99,9 uptime ne demek?
Uptime, bir hizmetin ölçülen süre içinde erişilebilir kaldığı zamanın oranıdır; geri kalanı kesinti (downtime) sayılır. Linux'taki uptime komutuyla karıştırmayın: o komut tek bir makinenin ne kadar süredir açık olduğunu gösterir. 365 günlük bir yıl 8.760 saattir ve %99,9 hedefi bunun %0,1'ini, yani 8,76 saati kesintiye bırakır. Bazı hesaplayıcıların 8 saat 45 dakika 57 saniye göstermesinin nedeni yılı 365,25 gün saymalarıdır.
| Uptime | Yıllık kesinti (365 gün) | 30 günlük ayda | Günde |
|---|---|---|---|
| %99 | 87,6 saat | 7 sa 12 dk | 14 dk 24 sn |
| %99,5 | 43,8 saat | 3 sa 36 dk | 7 dk 12 sn |
| %99,9 | 8 sa 45 dk 36 sn | 43 dk 12 sn | 1 dk 26 sn |
| %99,95 | 4 sa 22 dk 48 sn | 21 dk 36 sn | 43 sn |
| %99,99 | 52 dk 34 sn | 4 dk 19 sn | 8,6 sn |
Uptime garantisi, bu hedefin bir hizmet düzeyi sözleşmesine (SLA) yazılmış hâlidir. Google'ın SRE kitabı bunu ölçmenin iki yolunu anlatır: sistemin ayakta kaldığı sürenin oranı ve başarılı isteklerin oranı (Embracing Risk).
Uptime Kuma nedir, ne işe yarar?
Uptime Kuma, Louis Lam'ın geliştirdiği ve MIT lisansıyla yayımladığı bir izleme aracıdır. Aracı kendi sunucunuza kurar, tarayıcıdan açar ve monitör eklersiniz; her monitör kontrol edilecek tek bir adres ya da servistir. Eylül 2026'da projenin GitHub deposunda 90.000'den fazla yıldız vardı ve güncel sürüm 2.5.5'ti.
Hazır bir bulut servisinden farkı şu: Uptime Kuma kontrol geçmişini ve bildirim servislerinin anahtarlarını sizin sunucunuzda tutar, monitör sayısına da sınır koymaz. Karşılığında o sunucuyu ayakta tutmak size düşer ve kontroller sunucunun bulunduğu yerden yapılır. Araçta ayrıca herkese açık Durum Sayfaları (Status Pages), bakım süresince uyarıları durduran Bakım (Maintenance) pencereleri ve Türkçe dahil 40'tan fazla dilde bir arayüz var. Türkçe arayüz monitöre bazı yerlerde "servis" diyor (Servis Tipi, Servis Test Aralığı). Aşağıda menü adlarını bu arayüzdeki hâliyle, İngilizcesini parantez içinde yazıyoruz.
Uptime Kuma bir siteyi nasıl kontrol eder?
Her monitör aynı döngüyü tekrarlar:
- Süre dolar. Servis Test Aralığı (Heartbeat Interval) varsayılan olarak 60 saniyedir. İstek, User-Agent header'ında (isteği gönderen yazılımı tanıtan başlık satırı)
Uptime-Kuma/2.5.5değerini taşır; sunucu loglarınızda bu değeri aratarak kontrolleri ayırt edebilirsiniz. - Bekler. Cevap İsteğin Zaman Aşımına Uğrama Süresi (Request Timeout) içinde gelmezse kontrol başarısız sayılır; bu süre varsayılan olarak 48 saniyedir.
- Cevabı okur. Durum kodu Kabul Edilen Durum Kodları (Accepted Status Codes) arasında olmalıdır; varsayılan değer
200-299(HTTP durum kodları). Anahtar kelime monitörü ayrıca sayfada sizin verdiğiniz kelimeyi arar ve bu arama büyük/küçük harfe duyarlıdır. - Yeniden dener. Yeniden deneme (Retries) 0'dan büyükse başarısız kontrol, Hata Durumunda Test Aralığı (Heartbeat Retry Interval) kadar bekledikten sonra tekrarlanır. Yeni monitörlerde bu değer 0'dır; yani tek bir kayıp paket bile uyarı gönderir.
- Haber verir. Denemeler bitince monitör Hizmet Dışı (DOWN) durumuna geçer ve Ayarlar > Bildirimler (Settings > Notifications) altında eklediğiniz kanallara mesaj gider. Kontrol yeniden başarılı olunca monitör Aktif (UP) durumuna döner.
- Kaydeder. Monitör sayfası son 24 saatin, 30 günün ve 1 yılın uptime oranını gösterir.
Yeni monitörlerde Sertifika Sona Erme Bildirimi (Certificate Expiry Notification) kapalıdır. HTTPS siteleri için bu seçeneği açın: Let's Encrypt Mayıs 2026'da isteğe bağlı 45 günlük sertifikalar sunmaya başladı ve Şubat 2027'den itibaren varsayılan olarak 64 günlük sertifikaya geçmeyi planlıyor (Let's Encrypt). Sertifikalar artık daha sık yenilenecek.
Hangi monitör tipini seçmelisiniz?
Uptime Kuma 2.5.5'te otuz kadar monitör tipi var (Türkçe arayüzde Servis Tipi listesi). Çoğu site için şunlar yeterli:
| Monitör tipi | Neyi doğrular? | Proxy üzerinden? | Ne zaman seçilir? |
|---|---|---|---|
| HTTP(s) | Sunucu kabul edilen bir durum koduyla cevap veriyor | Evet | Küçük bir sağlık sayfası |
| HTTP(s) - Anahtar Kelime | Sayfada beklediğiniz bir kelime var | Evet | Ödeme, giriş |
| HTTP(s) - Json Sorgusu | API cevabında beklenen değer var | Evet | API endpoint'leri |
| TCP Port, Ping, DNS | Port açık, sunucu cevap veriyor, kayıt doğru | Hayır | Veritabanı, e-posta sunucusu, DNS |
| Push | Zamanlanmış bir iş çalıştığını bildiriyor | Gerekmez | Yedekler, cron işleri |
| Globalping | Topluluğun barındırdığı bir ölçüm noktasından ping, HTTP ya da DNS | Hayır, yazdığınız konumdan çalışır | Geniş coğrafya |
| UptimeRobot (karşılaştırma için hazır servis) | Servisin sunucularından HTTP, anahtar kelime, port ve ping | Hayır; ücretli planlarda dört bölge arasından seçim yapılır (Eylül 2026) | Hiçbir şey kurmak istemediğinizde |
HTTP(s) monitörü tek başına yalnız sunucunun cevap verdiğini kanıtlar. Bir bakım sayfası ya da bozuk bir şablon bile 200 döndürüp Aktif sayılabilir. Ödeme düğmesindeki yazıyı arayan bir anahtar kelime monitörü ikisini de yakalar; Anahtar Kelimeyi Ters Çevir (Invert Keyword) ise "bakım" gibi bir kelime sayfada göründüğünde uyarı verir. Sağlık sayfası, geliştiricinizin ekleyeceği kısa bir adrestir: uygulama ve veritabanı cevap veriyorsa "ok" yazar.
İleri seviye: Uptime Kuma Docker ile nasıl kurulur?
Docker kurulu bir Linux VPS'e ya da ev sunucusuna ihtiyacınız var; bu makine siteyi çalıştıran makineden ayrı olmalı. Projenin README dosyasındaki komut şu:
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:2-dkonteyneri arka planda çalıştırır;--restart=alwayskonteyneri çöktükten ya da sunucu yeniden başladıktan sonra tekrar ayağa kaldırır.-p 3001:3001varsayılan port olan 3001'i dışarı açar.-v uptime-kuma:/app/dataveritabanınıuptime-kumaadlı bir Docker volume'unda tutar; volume, konteyner silinse de yerinde kalır (Docker volumes). README'ye göre ağ klasörleri (NFS) desteklenmiyor.louislam/uptime-kuma:22.x serisini takip eder; 25 Eylül 2026'da 2.5.5 sürümünü gösteriyordu.
Docker Compose kullanacaksanız resmî compose.yaml dosyasını boş bir klasöre indirip docker compose up -d komutunu çalıştırın; bu kurulum verileri yerel ./data klasöründe tutar. Ardından http://sunucu-ip-adresiniz:3001 adresini açın, dili ve veritabanını seçin (küçük bir kurulum için SQLite yeterli), yönetici hesabını oluşturun ve Yeni Monitör Ekle (Add New Monitor) düğmesine tıklayın. Güncellemek için yeni imajı çekin, konteyneri silin ve komutu yeniden çalıştırın; monitörleriniz volume'da kaldığı için kaybolmaz.
Paneli kendi alan adınızda HTTPS ile açmak istiyorsanız önüne nginx ya da Caddy gibi bir reverse proxy koyarsınız. Panel WebSocket kullandığı için bu reverse proxy Upgrade ve Connection header'larını iletmelidir; örnek ayarlar projenin wiki sayfasında var. İki proxy yönünü Forward Proxy ve Reverse Proxy Arasındaki Fark yazımızda karşılaştırdık.
Tek bir yerden izlemek neyi kaçırır?
Sitenin kendi veri merkezindeki bir monitör, sunucunun çalıştığını kanıtlar; müşterilerin siteye ulaşabildiğini kanıtlamaz. Şunları kaçırır:
- Yalnız bir ağı etkileyen yönlendirme sorunu: tek bir internet sağlayıcısının aboneleri siteye ulaşamaz.
- Bölgeye göre değişen DNS: bir DNS sunucusundaki yanlış kayıt yalnız o sunucuyu kullananları etkiler.
- Gereğinden geniş tutulmuş coğrafi engelleme kuralı: bir ülke için yazılan kural başka bir ülkeyi de engeller.
- Hata veren tek bir CDN sunucusu: CDN (içerik dağıtım ağı) siteyi çok sayıda sunucudan sunar ve hatayı yalnız bozuk sunucuya yönlendirilen ziyaretçiler görür.
- Hız sınırına takılan paylaşımlı mobil IP'ler: operatörler çok sayıda kullanıcıyı tek bir adresin arkasına koyar (CGNAT Nedir?).
İzlemeyi genişletmenin üç yolu var. Birincisi başka bir ülkede ikinci bir Uptime Kuma çalıştırmak. İkincisi 2.1.0 sürümüyle gelen Globalping monitör tipi: testleri topluluğun barındırdığı ölçüm noktalarından (probe) yapar; konum alanına ülke, şehir ya da bir internet sağlayıcısının adını yazabilirsiniz (Globalping). Globalping hesap olmadan saatte 250 teste izin verir ve o an çevrim içi olan noktalar arasından seçim yapar; bu yüzden ihtiyaç duyduğunuz anda istediğiniz ağda uygun bir nokta bulunmayabilir.
Üçüncü yol monitöre bir proxy tanımlamaktır: kontrol isteği siteye, seçtiğiniz ülkedeki bir çıkış noktasından gider. Yerelleştirme testi de aynı fikre dayanır.
Uptime Kuma monitörüne proxy nasıl tanımlanır?
Buradaki proxy, monitörün dışarı gönderdiği kontroller içindir; paneli nginx arkasında açmak ise yukarıda anlattığımız reverse proxy konusudur. Proxy ayarı yalnız HTTP(s), HTTP(s) - Anahtar Kelime ve HTTP(s) - Json Sorgusu monitörlerinde görünür.
- Ayarlar > Proxy'ler (Settings > Proxies) sayfasına gidin ve Proxy Ayarla (Set Up Proxy) düğmesine tıklayın.
- Proxy Protokolü (Proxy Protocol) altında HTTP ya da SOCKS v5 (+DNS) seçin. Listede HTTPS, SOCKS, SOCKS v5 ve SOCKS v4 de var.
- Proxy Sunucusu (Proxy Server) alanına
pr.proxynet.ioadresini yazın; port HTTP için8000, SOCKS5 için Endpoint Oluşturucu'nun gösterdiği porttur. - Proxy sunucusunun kimlik doğrulaması var (Proxy server has authentication) kutusunu işaretleyip Kullanıcı ve Şifre alanlarını doldurun (bu örnekte
user:pass). Kullanıcı adını Proxynet panelindeki Endpoint Oluşturucu'dan kopyalayın; ülke, şehir ve oturum bilgisi bu adın içindedir (Proxy Kimlik Doğrulama). - Varsayılan Olarak Ayarla (Set As Default) işaretliyse proxy yeni monitörlere, Var olan bütün servislere uygula (Apply on all existing monitors) işaretliyse mevcut monitörlere uygulanır.
- Kaydedin, sonra her monitörün Proxy bölümünde Proxy Yok (No Proxy) ya da bu proxy'yi seçin.
İkinci bir ülke için proxy'nin yanındaki Klon (Clone) bağlantısına tıklayın ve kullanıcı adındaki ülkeyi değiştirin. Böylece "Ödeme (Türkiye)" ve "Ödeme (Almanya)" adlı iki monitör aynı adresi izleyebilir.
Alan adının nerede çözüleceğini, yani IP adresine nerede çevrileceğini, seçtiğiniz protokol belirler. SOCKS v5 alan adını Uptime Kuma sunucusunda çözer; SOCKS v5 (+DNS) ve HTTP ise bu işi çıkıştaki proxy'ye bırakır, böylece DNS de hedef ülkeden test edilmiş olur (SOCKS ve HTTP Proxy Farkı). Kontrolün gerçekten o ülkeden çıktığını doğrulamak için proxy'li bir anahtar kelime monitörünü, bağlantının geldiği ülkeyi yazan bir sayfaya yöneltin (Proxy Çalışıyor mu?).
Mobil Proxy havuzunda Türkiye'deki Turkcell, Türk Telekom ve Vodafone hatları var. Operatörü değil, ülkeyi ve şehri seçersiniz; kontrol hangi hattan çıkarsa çıksın, sitenin mobil ağdan nasıl göründüğünü gösterir.
Sunucunuz Telegram'a ya da başka bir bildirim servisine ulaşamıyorsa NOTIFICATION_PROXY ortam değişkeni (2.0.0'dan beri) bildirimlerin çoğunu bir proxy üzerinden gönderir; e-posta bunun dışında kalır (proxy ortam değişkenleri).
Proxy üzerinden izleme ne kadar trafik harcar?
Residential ve mobil proxy GB başına ücretlendirilir. 60 saniyelik aralıkla tek bir monitör 30 günde 43.200 kontrol yapar. Uptime Kuma sayfanın yalnız HTML'ini indirir; görseller ve script'ler inmez. Ama her kontrolde proxy üzerinden yeni bir bağlantı açtığı için TLS el sıkışması, yani HTTPS şifrelemesini kuran ilk mesajlaşma, her seferinde baştan yapılır.
Bunu 25 Eylül 2026'da ölçtük: Uptime Kuma'nın isteğini (kendi header'larıyla, sıkıştırmasız) yerel bir HTTP proxy'den geçirdik ve iki yöndeki baytları saydık.
| Monitörün indirdiği | Kontrol başına | 60 sn'de bir, 30 gün | 300 sn'de bir, 30 gün |
|---|---|---|---|
| Küçük sağlık sayfası, 0,5 KB HTML | 6,8 KB | 0,29 GB | 0,06 GB |
| 120 KB HTML'li sayfa | 127 KB | 5,5 GB | 1,1 GB |
| Aynı sayfa, gzip ile sıkıştırılmış | 36,5 KB | 1,6 GB | 0,32 GB |
| Aynı sayfa, HEAD yöntemiyle | 7,5 KB | 0,32 GB | 0,06 GB |
Kendi sitenizin rakamını bulmak için sayfanın sıkıştırılmamış HTML boyutunu tarayıcının geliştirici araçlarından alın, bağlantı için 6-8 KB ekleyin, sonra aylık kontrol sayısıyla ve monitör sayısıyla çarpın. Trafiği düşürmek için:
- Ana sayfa yerine sağlık sayfasını izleyin.
- HEAD kullanın. HTTP Ayarları > Yöntem (HTTP Options > Method) altından seçilir. Sayfa gövdesini indirmediği için anahtar kelime monitörlerinde işe yaramaz.
- Sıkıştırma isteyin. Başlıklar (Headers) alanına
{"Accept-Encoding": "gzip"}yazın; anahtar kelime kontrolleri çalışmaya devam eder. - Aralığı uzatın. Proxy kullanmayan monitörler 60 saniyede bir, proxy'li monitörler 2-5 dakikada bir çalışsın.
Residential Proxy ile kontrol, seçtiğiniz ülkedeki bir ev bağlantısından çıkar. Her istekte IP değiştiren (rotating) çıkışta her kontrol başka bir IP adresinden gider, bu yüzden yanıt süreleri iniş çıkış gösterir; Sticky Proxy ise aynı IP'yi 1-60 dakika korur.
Kullanım alanları
- Ödeme sayfasının Türkiye'de mobil veriden nasıl göründüğü: Mobil Proxy üzerinden çalışan bir anahtar kelime monitörü.
- Yurt dışındaki iş ortakları için bayi portalı: her bayi ülkesi için bir monitör (yerelleştirme testi).
- Mobil uygulamanızın API'si: mobil ağdan kontrol edilen bir Json Sorgusu monitörü (uygulama testi).
- Yalnız izin listesindeki IP'leri kabul eden bir iş ortağı API'si: Uptime Kuma'yı sabit IP'li bir sunucuya kurun (Statik IP ve Dinamik IP Farkı).
- Sayfa içeriğindeki değişiklikler: bu ayrı bir iş; Web Sitesi Değişiklik Takibi Nasıl Yapılır? yazısına bakın.
- Tek seferlik "site çöktü mü?" kontrolü: Bu Siteye Ulaşılamıyor Hatası yazısına bakın.
Sık yapılan hatalar
- Monitörü izlediği sunucuya kurmak. Sunucu çökünce uyarıyı gönderecek araç da onunla birlikte çöker.
- Yeniden deneme değerini 0'da bırakmak. Gece 3'te kaybolan tek bir paket birini uykusundan uyandırır; değeri 1 ya da 2 yapın.
- Monitörün kendi güvenlik duvarınıza takılmasını gözden kaçırmak. Siteniz monitöre 403 döndürmeye başlarsa monitörün IP'sine izin verin (Access Denied hatası). Yalnız size ait ya da kontrol etme izniniz olan siteleri izleyin.
- Konum testinde (+DNS) olmayan SOCKS v5'i seçmek. Alan adı yine sizin sunucunuzda çözülür.
- "HTTPS web siteleri için TLS/SSL hatalarını yok say" seçeneğini açmak. Bu seçenek sertifika süresi uyarısını da kapatır.
- Konteyneri volume olmadan çalıştırmak. İlk güncellemede bütün monitörler kaybolur.
Karar rehberi
| İhtiyaç | Öneri |
|---|---|
| Tek bir siteyi kurulum yapmadan izlemek | Hazır bir bulut servisi; verilerin sizde kalmasını istiyorsanız Uptime Kuma |
| Sayfanın doğru içerikle açıldığını bilmek | Ödeme sayfasında HTTP(s) - Anahtar Kelime, Yeniden deneme 1-2 |
| Siteyi Türkiye'deki mobil kullanıcıların gördüğü gibi görmek | Mobil proxy üzerinden çalışan bir monitör, HTTP ya da SOCKS v5 (+DNS) |
| Yurt dışındaki bir müşterinin ülkesinden kontrol etmek | O ülkede residential bir çıkış; yaklaşık bir konum yetiyorsa Globalping |
| Proxy trafiğini düşük tutmak | Sağlık sayfası, HEAD ya da gzip, 2-5 dakikalık aralık |
| IP izin listesi olan bir iş ortağı API'sini izlemek | İş ortağının listesindeki sabit IP'li bir sunucu |
| Paneli kendi alan adınızda HTTPS ile açmak | WebSocket header'larını ileten bir reverse proxy |
Sıkça sorulan sorular
Uptime Kuma ücretsiz mi?
Evet, MIT lisanslı açık kaynak bir yazılımdır. Masraflarınız aracın çalıştığı sunucu ve varsa proxy trafiğidir.
Uptime Kuma hangi portu kullanır?
Varsayılan olarak 3001 portunu kullanır. -p 8080:3001 yazımında ilk sayı sunucunuzdaki port, ikincisi konteynerin içindeki porttur (8080 Portu Nedir?).
Uptime Kuma ile UptimeRobot arasındaki fark nedir?
UptimeRobot kurulum gerektirmeyen hazır bir servistir; Eylül 2026'da ücretsiz planı 5 dakikalık aralıkla 50 monitörü kapsıyordu. Uptime Kuma ise kendi sunucunuzda monitör sınırı olmadan çalışır ve o sunucunun bakımı size düşer.
%99,9 uptime ayda ne kadar kesintiye izin verir?
30 günlük bir ayda 43 dakika 12 saniye, ortalama bir takvim ayında yaklaşık 43 dakika 50 saniye.
SLA'daki uptime garantisi nedir?
Bir sağlayıcının sözleşmesine yazılan erişilebilirlik hedefidir. Ölçüm dönemine, nelerin hariç tutulduğuna (planlı bakım gibi) ve hedef tutturulamazsa size ne verileceğine bakın; bu çoğu zaman bir hizmet kredisidir, yani sonraki faturadan düşülen bir tutar.
Uptime Kuma birden fazla konumdan izleme yapabilir mi?
Evet, ama 2.5.5 sürümünde uzak ajan (remote agent, kontrolü başka bir makineden yapan yardımcı program) yok: Globalping dışındaki monitörler kontrolü Uptime Kuma'nın kurulu olduğu sunucudan yapar. Daha fazla konum için başka yerlerde ikinci bir kurulum çalıştırın, Globalping monitör tipini kullanın ya da her HTTP monitörüne başka bir ülkeden çıkan bir proxy tanımlayın.
Özet
Bir uptime yüzdesi ancak ölçüldüğü yer kadar doğrudur. Uptime Kuma tek bir Docker komutuyla kurulur; ödeme sayfası için bir anahtar kelime monitörü ekleyin, Yeniden deneme değerini 1 ya da 2 yapın ve sertifika uyarısını açın. Müşterilerinizin gördüğünü görmek için önce trafiği hesaplayın, sonra aynı monitörü onların ülkesindeki bir çıkıştan geçirin. Çıkış türlerini proxy çözümlerimiz sayfasında bulabilirsiniz.




