← Blog'a dön
HEALTH nodetonet.com

Tünel sağlığınızı izlemek — noktanın anlamı ve kendi sisteminizi nasıl kurarsınız

N Nodetonet Team
26 Mart 2026 7 dk okuma

Nodetonet panelindeki her proxy satırının yanında küçük renkli bir nokta bulunur. Bu nokta süsleme değildir — her beş saniyede bir her aktif tüneli test edip sonucu veritabanına yazan Proxy Health Refresher adlı bir arka plan daemon'unun canlı çıktısıdır. Scraper'ınız "connection refused" alıyorsa ve nedenini bilmiyorsanız, o nokta en hızlı tanı aracınızdır.

Bu rehber her rengin protokol düzeyinde ne anlama geldiğini, altta yatan veriyi API üzerinden nasıl okuyacağınızı, bir şeyler bozulduğunda sizi uyaran bir dış alarm sistemini nasıl kuracağınızı ve ne zaman polling yerine webhook kullanmanız gerektiğini açıklar. Nodetonet'te daha önce proxy kurmadıysanız önce kapsamlı rehberi okuyun.

Health Refresher nasıl çalışır

Refresher, proxy veri yolundan tamamen bağımsız olarak panel süreci içinde çalışır. Her 5 saniyelik döngüde tüm aktif proxy'leri dolaşır ve her biri için üç adımlı bir kontrol yapar:

  1. Port testi. Panel, edge sunucusundaki proxy portuna bir TCP bağlantısı açar. Başarılı bir SYN-ACK dinleyicinin bind olduğunu doğrular. Zaman aşımı içinde yanıt gelmezse port ölüdür.
  2. Cihaz kalp atışı. Panel, mobil cihazın WebSocket son-ping zaman damgasının 30 saniyeden eski olup olmadığını kontrol eder. Daha eskiyse cihaz çevrimdışı kabul edilir.
  3. Upstream ping (isteğe bağlı). Dış bir residential veya datacenter upstream'e ileten proxy'ler için Refresher, upstream zinciri üzerinden bilinen bir hedefe HEAD isteği gönderebilir ve 200 dönüp dönmediğini doğrular.

Her kontrolden sonra { status, lastCheckAt, lastError, consecutiveFailures } değerlerini proxy satırına geri yazar. Panel arayüzü o an görünür olan satırlar için birkaç saniyede bir poll eder; dolayısıyla nokta herhangi bir değişikliği yaklaşık beş saniye içinde yansıtır. Kendi bağlantınızın şu an nasıl göründüğünü ücretsiz IP adresim nedir aracımızla doğrulayabilirsiniz — bir sunucunun sizden okuduğu tam IP ve ASN'yi gösterir.

Her rengin anlamı

Yeşil — sağlıklı. Port edge sunucusunda bind, cihazın WebSocket kalp atışı taze (30 saniyeden genç) ve son uçtan uca test yenileme penceresi içinde tamamlandı. Bu proxy üzerinden gönderilen trafik hedefine normal şekilde ulaşacaktır.

Sarı — bozulmuş. Port bind ve TCP bağlantılarını kabul ediyor, ancak arkasındaki mobil cihaz şu an ulaşılamaz — WebSocket'i sessizleşmiş. Gerçek dünyada en sık görülen durum budur. Telefonlar derin uykuya geçer, kule değiştirirken kısa süreli sinyal keser veya ağ geçişi sırasında Wi-Fi'yı bir dakikalığına bırakır. Cihaz çevrimdışıyken istemciniz TCP düzeyinde bağlantı reddedilmesi yerine temiz bir 502 Bad Gateway alır, çünkü edge portu hâlâ dinlemeye devam etmektedir. Cihazın WebSocket'i yeniden bağlandığı anda nokta müdahale gerekmeksizin yeşile döner.

Kırmızı — bozuk. Port hiç bind değil. Edge sunucu süreci dinleyiciyi oluşturmadı ya da sonradan düşürdü — genellikle bir port çakışması, oluşturma ortasında gerçekleşen sunucu yeniden başlatması veya (nadiren) edge sunucunun kendisinin çevrimdışı olması nedeniyle. İstemciniz hard "connection refused" alır; trafik akamaz. Kırmızı her zaman müdahale gerektirir: paneldeki Bağlantı noktasını yeniden oluştur eylemini kullanın; sunucunun kendisi sorunsa proxy'yi farklı bir edge sunucusunda silip yeniden oluşturun. Güvenilir bir edge seçmek için doğru edge sunucusunu seçmek rehberine bakın.

Genel kural: sarı cihazın hatasıdır ve kendiliğinden düzelir. Kırmızı portun hatasıdır ve müdahale olmadan düzelmez.

Bir bakışta durum tablosu

RenkPort bind?Cihaz çevrimiçi?İstemci deneyimiEylem gerekli mi?
YeşilEvetEvetTrafik normal akarHayır
SarıEvetHayırTemiz 502; cihaz yeniden bağlanınca yeniden denemeler başarılı olurBekle; 15 dk'dan uzunsa araştır
KırmızıHayırYokHard TCP bağlantı reddedilmesiEvet — portu yeniden oluştur veya başka bir edge'e taşı

API üzerinden sağlık sorgulamak

Aynı veri REST API üzerinden de erişilebilir. Tek bir proxy için sağlık verisi almak:

curl -H "Authorization: Bearer $KEY"   https://nodetonet.com/api/v1/proxies/8f3a/health

# Yanit:
# {
#   "status": "green",
#   "portBound": true,
#   "deviceOnline": true,
#   "lastCheckAt": "2026-03-26T11:02:14.302Z",
#   "lastError": null,
#   "consecutiveFailures": 0
# }

Tüm filonuzu tek seferde almak için proxy listesi endpoint'ine ?include=health ekleyin:

curl -H "Authorization: Bearer $KEY"   "https://nodetonet.com/api/v1/proxies?include=health"

status alanı green, yellow veya red'den biridir. consecutiveFailures sayacı alarm kurmak için en kullanışlı alandır: her başarısız test onu artırır, başarılı bir test sıfırlar. 3'ün üzerindeki bir değer proxy'nin 15 saniyeden uzun süredir kötü durumda olduğunu; 12'nin üzerindeki bir değer bir dakikadan uzun olduğunu gösterir. Alarm tetiklemeden önce tek seferlik bir aksaklıkla gerçek bir kesintinin arasını ayırt etmek için sayacı kullanın.

İlk API çağrınızı kimlik doğrulama konusunda ayrıntılar için REST API: ilk çağrınız ve API anahtarınızı anlamak yazılarına bakın.

Dış bir monitör kurmak

Paneli tarayıcı sekmesinde açık tutmak bir izleme stratejisi değildir. Her 30 saniyede bir poll eden ve herhangi bir proxy bir dakikadan uzun süre kırmızı kalırsa Pushover bildirimi gönderen minimal bir kabuk betiği:

#!/bin/bash
# probe-all.sh

while true; do
  curl -s -H "Authorization: Bearer $KEY"     "https://nodetonet.com/api/v1/proxies?include=health"     | jq -r '.proxies[] | select(.health.status=="red") |
             "(.id) (.health.consecutiveFailures)"'     | while read id failures; do
        if [ "$failures" -gt 12 ]; then
          # 12 ardisik basarisiz test x 5s yoklama araligi = 60 s kesinti
          curl -s -F "token=$PUSHOVER_TOKEN" -F "user=$PUSHOVER_USER"                -F "message=Proxy $id 60 saniyeden fazladir kirmizi"                https://api.pushover.net/1/messages.json
        fi
      done
  sleep 30
done

Aynı JSON endpoint'i doğrudan bir Grafana dashboard'una JSON datasource olarak bağlanır; veya değerleri PagerDuty, Opsgenie ya da başka bir olay yönetim aracına gönderebilirsiniz. Panel, seçtiğiniz izleme yığını üzerinde hiçbir kısıtlama getirmez.

Büyük bir filo işletiyorsanız ve arızalara programatik olarak yanıt vermek istiyorsanız — örneğin başarısız bir proxy'yi otomatik olarak farklı bir edge sunucusuna taşımak — sağlık endpoint'ini toplu işlem rehberiyle birleştirin.

Polling yerine webhook kullanmak

Her 30 saniyede bir poll işe yarar, ancak onlarca veya yüzlerce proxy olduğunda her iki tarafta da gereksiz yük oluşturur. Panel, bir sonraki poll döngünüzü beklemek yerine durum değişikliği olaylarını anında ileten giden webhook'ları destekler.

Webhook'ları proxy detay sayfasında Webhook'lar sekmesinden etkinleştirin. Bir proxy durumlar arasında geçiş yaptığında — yeşilden sarıya, sarıdan kırmızıya, kırmızıdan yeşile — panel endpoint'inize bir JSON payload POST eder. Payload; proxy kimliği, eski ve yeni durum, zaman damgası ve güncel consecutiveFailures sayısını içerir. Payload formatı IP değişim olaylarıyla paylaşılır; tam şema ve imza doğrulama için IP değişim olayları için webhook'lar sayfasına bakın.

Reaktif alarm için webhook'lar polling'den çok daha verimlidir. Durum değişikliğinin saniyeden kısa sürede bildirimini istiyorsanız doğru seçimdir. Değişimden bağımsız olarak periyodik anlık görüntüler almanız gerekiyorsa — örneğin bir zaman-serisi veritabanını beslemek için — polling hâlâ kullanışlıdır.

Edge sunucular ve sağlık açısından neden önemlidirler

Kırmızı durum neredeyse her zaman cihaz sorunundan değil, edge sunucu sorunundandır. Mobil proxy'ler ve rotating proxy havuzları veri düzlemlerini edge sunucularda çalıştırır — bu makineler istemci bağlantılarınızı sonlandırır ve trafiği eşleştirilmiş mobil cihazlara iletir. Bir edge sunucusu yeniden başlarsa, motor süreci portları yeniden oluşturana kadar üzerindeki tüm portlar kısaca kırmızıya döner.

Kırmızı olaylarını azaltan birkaç uygulama:

Trafiğin istemciniz, edge sunucu ve mobil cihaz arasında nasıl geçtiğiyle ilgileniyorsanız trafik nasıl yönlendirilir tam yolu adım adım anlatır. Android agent tarafında sarıya neyin yol açtığı gibi cihaz tarafı sağlık konuları için cihaz sağlığı: çevrimiçi ne anlama gelir yazısına bakın.

Sağlığı denetim kayıtlarıyla eşleştirmek

Sağlık verisi belirli bir anda proxy'nin erişilebilir olup olmadığını söyler. Denetim kayıtları ise onun üzerinden ne denendiğini. Bir istemci aralıklı arızalar bildirdiğinde, sağlık zaman çizelgesini denetim kaydıyla çapraz kontrol etmek, arızaların gerçek sarı veya kırmızı dönemlerle örtüşüp örtüşmediğini ya da sorunun başka bir yerde olup olmadığını doğrulamanızı sağlar (örneğin istemci başına thread sınırları — bkz. istemci başına thread sınırları).

Başlayın

Henüz çalışan proxy'niz yoksa ücretsiz hesap açın ve ilk mobil proxy'nizi dakikalar içinde canlıya almak için ilk token ve Android eşleştirme rehberini takip edin. Çalışmaya başladığında sağlık noktası tek bakışta ihtiyacınız olan her şeyi söyleyecektir — yukarıdaki API ve webhook'lar ise aynı sinyali istediğiniz yerde kullanmanızı sağlar.

Sıkça sorulan sorular

Nodetonet panelindeki sarı nokta ne anlama gelir?
Sarı, edge sunucusundaki proxy portunun bind olduğu ve bağlantıları kabul ettiği, ancak arkasındaki mobil cihazın geçici olarak çevrimdışı gittiği anlamına gelir — WebSocket kalp atışı son 30 saniyede görülmemektedir. İstemciler TCP reddi yerine 502 yanıtı alır. Cihaz yeniden bağlandığında nokta otomatik olarak yeşile döner, dolayısıyla geçici sarı için herhangi bir eylem gerekmez.
Proxy'im neden kırmızı görünüyor ve nasıl düzeltirim?
Kırmızı, edge sunucusundaki TCP dinleyicisinin bind olmadığı anlamına gelir — proxy portu açık değildir. Bunun nedeni genellikle bir port çakışması, proxy oluşturma sırasında sunucu yeniden başlatması veya edge sunucu sürecinin çökmesidir. Düzeltmek için proxy detay görünümündeki Bağlantı noktasını yeniden oluştur eylemini kullanın. Edge sunucunun kendisi çevrimdışıysa proxy'yi silip farklı bir sunucuda yeniden oluşturun.
Nodetonet sağlık kontrolü ne sıklıkla çalışır?
Proxy Health Refresher her beş saniyede bir tüm aktif proxy'leri test eder. Panel arayüzü görünür satırlar için sonuçları birkaç saniyede bir poll eder, dolayısıyla tarayıcınızdaki renkli nokta proxy durumundaki herhangi bir gerçek değişikliği yaklaşık beş ila on saniye içinde günceller.
Paneli izlemeden bir proxy çöktüğünde uyarı alabilir miyim?
Evet, iki yol var. Birincisi, REST API endpoint'ini kendi programınızla poll edin ve consecutiveFailures eşiğinizi aştığında alarm tetikleyin. İkincisi, proxy detay sayfasında webhook'ları etkinleştirin ve bir proxy farklı bir sağlık durumuna geçtiğinde anında push bildirimi alın.
consecutiveFailures sayacı ne için kullanılır?
Her başarısız sağlık testi sayacı artırır; başarılı bir test sıfırlar. Bu, gerçek ve süregelen bir kesintinin kısa süreli bir aksaklıktan ayırt edilmesini sağlar. 3'ün üzerindeki bir değer proxy'nin 15 saniyeden uzun süredir arızalı durumda olduğunu; 12'nin üzerindeki bir değer bir dakikadan uzun olduğunu gösterir. Yanlış pozitiflerden kaçınmak için bu değeri alarm mantığınızda kullanın.
Webhook'lar ve polling tek proxy'lerin yanı sıra rotating proxy havuzları için de çalışır mı?
Evet. Sağlık verisi ve webhook'lar Nodetonet'teki tüm proxy türleri için kullanılabilir — tek mobil proxy'ler, token grupları üzerinden yönetilen rotating havuzlar, SOCKS5 proxy'leri ve upstream yönlendirme proxy'leri. Aynı API alanları ve webhook payload formatı her birine uygulanır.
Bir proxy filosunda hangi edge sunucusunun sorun çıkardığını nasıl anlarım?
GET /api/v1/proxies?include=health endpoint'ini çağırın ve sonuçları edgeServerId'ye göre gruplayın. Proxy'lerinin çoğu kırmızı olan herhangi bir sunucu, bireysel port sorunlarından ziyade sunucu düzeyinde bir sorunun işaretidir. Patlama yarıçapını sınırlamak için filonuzu birden fazla sunucuya yayma konusunda tavsiye için doğru edge sunucusunu seçmek blog yazısına bakın.
N

Nodetonet Team

Nodetonet'i geliştiriyoruz — ngrok, Cloudflared ve bir residential proxy sağlayıcısının yerini tek panelle alan, peşin ödemeli proxy + tünel platformu.