Sunucunuzun bağlantısını komut satırından ölçün
HIZTESTI CLI; indirme, yükleme, gecikme ve bağlantı kalitesini tarayıcı olmadan ölçer. Sonuçları JSON, CSV ya da Prometheus biçiminde verir; cron'da ve izleme sistemlerinde çalışacak şekilde tasarlandı.
Ne işe yarar?
Bir sunucunun ya da ağ cihazının internet bağlantısını, o makinenin üzerinden ölçmek gerekir. Tarayıcıyla yapılan test yalnız masaüstünüzün bağlantısını gösterir; veri merkezindeki makinenin hattı hakkında bir şey söylemez. HIZTESTI CLI tam bu boşluğu doldurur: SSH ile bağlandığınız makinede tek komutla çalışır ve sonucu makine tarafından okunabilir biçimde döndürür.
- Kesintiden sonra hattın gerçekten toparlandığını doğrulamak
- Sağlayıcınızın taahhüt ettiği hızı düzenli olarak kayıt altına almak
- Yeni kurulan bir sunucunun bağlantısını teslim almadan önce ölçmek
- Grafana panosunda hız ve gecikmeyi zaman içinde izlemek
Ne ölçer?
| Ölçüm | Anlamı |
|---|---|
| İndirme / Yükleme | Saniyede aktarılan veri miktarı (Mbps) |
| Gecikme (ping) | Bir isteğin gidip dönme süresi; jitter, en düşük ve en yüksek değerlerle birlikte |
| Yük altındaki gecikme | Hat doluyken gecikmenin ne olduğu — video görüşmesi ve oyun için belirleyici olan budur |
| Bufferbloat | Hat dolduğunda gecikmenin ne kadar şiştiği |
| RPM | RFC 9097 yanıt verebilirlik ölçüsü; dakikadaki tamamlanabilen istek sayısı |
Ölçüm yöntemi hiztesti.com'un web arayüzüyle aynıdır ve akademik olarak yayımlanmıştır. Aynı hattı hem tarayıcıdan hem komut satırından ölçtüğünüzde birbirine yakın sonuç almanız beklenir.
Kurulum
Debian · Ubuntu
sudo apt-get install -y curl gpg
curl -fsSL https://packages.buildkite.com/netmetrik/hiztesti-deb/gpgkey \
| sudo gpg --dearmor -o /etc/apt/keyrings/netmetrik_hiztesti-archive-keyring.gpg
echo "deb [signed-by=/etc/apt/keyrings/netmetrik_hiztesti-archive-keyring.gpg] https://packages.buildkite.com/netmetrik/hiztesti-deb/any/ any main" \
| sudo tee /etc/apt/sources.list.d/hiztesti.list
sudo apt-get update && sudo apt-get install -y hiztestiRHEL · Rocky Linux · AlmaLinux · Fedora
sudo tee /etc/yum.repos.d/hiztesti.repo >/dev/null <<'EOF'
[hiztesti]
name=HIZTESTI CLI
baseurl=https://packages.buildkite.com/netmetrik/hiztesti-rpm/rpm_any/rpm_any/$basearch
enabled=1
repo_gpgcheck=1
gpgcheck=0
gpgkey=https://packages.buildkite.com/netmetrik/hiztesti-rpm/gpgkey
priority=1
EOF
sudo dnf install -y hiztestiHer iki depo da herkese açıktır; kimlik doğrulaması gerekmez. Paketler imzalıdır ve paket yöneticisi imzayı her güncellemede doğrular. Kurulduktan sonra yeni sürümler `apt upgrade` ya da `dnf upgrade` ile gelir.
macOS · Linux (Homebrew)
brew tap netmetrik/hiztesti
brew install hiztestiDiğer sistemler
Paket yöneticisi kullanmıyorsanız arşivi doğrudan indirebilirsiniz. Linux (x86_64 ve ARM), macOS, FreeBSD ve Windows için hazır dosyalar her sürümde yayımlanır.
curl -fsSL https://github.com/netmetrik/hiztesti-cli/releases/latest/download/hiztesti-linux-x86_64.tgz | tar xz
sudo install -m 755 hiztesti /usr/local/bin/Kullanım
hiztesti # ölç ve göster
hiztesti -L # sunucu listesi (id · şehir · ülke · kapasite)
hiztesti -s 2 # listedeki id ile belirli bir sunucuya ölç
hiztesti --simple # yalnız gecikme, indirme, yükleme
hiztesti --no-share # sonucu gönderme, bağlantı oluşturma
hiztesti --help # tüm seçeneklerSunucu seçimi varsayılan olarak otomatiktir: aday sunucular ölçülür ve en uygunu seçilir. Belirli bir sunucuyu kendiniz seçmek isterseniz `-L` ile listeyi görüp `-s` ile kimliğini verin. Kimlikler kalıcıdır; sunucu adları değişebilir.
İzleme sistemleriyle kullanım
CLI, sonucu makine tarafından okunabilir biçimlerde verebilir. Prometheus çıktısı doğrudan node_exporter'ın textfile toplayıcısına yazılabilir; sürekli kipte ise belirlediğiniz aralıkla ölçüp her satırı bir JSON kaydı olarak günlüğe ekler.
# node_exporter textfile collector (cron'dan)
hiztesti -f prometheus > /var/lib/node_exporter/hiztesti.prom
# sürekli kip — 15 dakikada bir, satır başına bir JSON kaydı
hiztesti --interval 900 -f jsonl >> /var/log/hiztesti.jsonlÖlçüm başarısız olduğunda Prometheus çıktısı sessiz kalmaz: `up=0` ve hata nedenini bildirir. Böylece toplayıcı eski dosyayı okumaya devam edip panoda "her şey yolunda" göstermez.
Faz, ölçüm oturduğunda erkenden biter; bu, düzenli koşan bir ajanda veri kullanımını belirgin biçimde azaltır. Sabit süreli ölçüm gerekiyorsa `--full-duration` kullanın.
Çıkış kodları
Betiklerin "ağ yok" ile "sunucu yavaş"ı ayırt edebilmesi için çıkış kodları ayrıştırılmıştır.
| Kod | Anlamı |
|---|---|
| 0 | Başarılı |
| 2 | Kullanım hatası |
| 3 | Ağa ulaşılamadı |
| 4 | İndirme ölçülemedi |
| 5 | Yükleme ölçülemedi |
| 6 | Zaman aşımı |
| 130 | Kullanıcı iptali |
Gizlilik
- Test bitince sonucunuz paylaşılabilir bir sayfaya kaydedilir ve size bağlantı verilir. İstemiyorsanız --no-share ile çalıştırın.
- Komut satırı ölçümleri tüketici istatistiklerine, sağlayıcı raporlarına ve yayımlanan veri kümelerine dahil edilmez.
- CLI konum bilgisi göndermez.