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:
- Port testi. Panel, edge sunucusundaki proxy portuna bir TCP bağlantısı açar. Başarılı bir
SYN-ACKdinleyicinin bind olduğunu doğrular. Zaman aşımı içinde yanıt gelmezse port ölüdür. - 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.
- 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
HEADisteğ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
| Renk | Port bind? | Cihaz çevrimiçi? | İstemci deneyimi | Eylem gerekli mi? |
|---|---|---|---|---|
| Yeşil | Evet | Evet | Trafik normal akar | Hayır |
| Sarı | Evet | Hayır | Temiz 502; cihaz yeniden bağlanınca yeniden denemeler başarılı olur | Bekle; 15 dk'dan uzunsa araştır |
| Kırmızı | Hayır | Yok | Hard TCP bağlantı reddedilmesi | Evet — 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:
- Proxy'leri birden fazla edge sunucuya yayın; böylece tek bir yeniden başlatma tüm filonuzu çökertmez.
- Kırmızıya ilk yanıtınız olarak Bağlantı noktasını yeniden oluştur eylemini kullanın — proxy'yi tamamen silip yeniden oluşturmaktan çok daha hızlıdır.
- Kritik iş akışları için, birincil cihaz sarıya düştüğünde trafiğin bir upstream residential sağlayıcısına geri düşebilmesi amacıyla upstream yönlendirme seçeneğini etkinleştirmeyi düşünün.
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.