httpsstat memvisualisasikan statistik curl(1)
dengan cara yang indah dan jelas.
Itu adalah satu file? Skrip Python yang tidak memiliki ketergantungan? dan kompatibel dengan Python 3? .
Ada tiga cara untuk mendapatkan httpstat
:
Download scriptnya langsung: wget https://raw.githubusercontent.com/reorx/httpstat/master/httpstat.py
Melalui pip: pip install httpstat
Melalui homebrew (hanya macOS): brew install httpstat
Untuk pengguna Windows, versi Go @davecheney disarankan. → tautan unduhan
Hanya:
python httpstat.py httpbin.org/get
Jika diinstal melalui pip atau brew, Anda dapat menggunakan httpstat
sebagai perintah:
httpstat httpbin.org/get
Karena httpstat
adalah pembungkus cURL, Anda dapat meneruskan opsi apa pun yang didukung cURL setelah url (kecuali -w
, -D
, -o
, -s
, -S
yang sudah digunakan oleh httpstat
):
httpstat httpbin.org/post -X POST --data-urlencode " a=b " -v
httpstat
memiliki banyak variabel lingkungan untuk mengontrol perilakunya. Berikut beberapa demo penggunaan, Anda juga dapat menjalankan httpstat --help
untuk melihat penjelasan lengkap.
HTTPSTAT_SHOW_BODY
Setel ke true
untuk menampilkan isi respons dalam output, perhatikan bahwa panjang isi dibatasi hingga 1023 byte, akan terpotong jika melebihi. Standarnya false
.
HTTPSTAT_SHOW_IP
Secara default httpstat menunjukkan alamat IP/port jarak jauh dan lokal. Setel ke false
untuk menonaktifkan fitur ini. Standarnya adalah true
.
HTTPSTAT_SHOW_SPEED
Setel ke true
untuk menunjukkan kecepatan unduh dan unggah. Standarnya false
.
HTTPSTAT_SHOW_SPEED=true httpstat http://cachefly.cachefly.net/10mb.test
...
speed_download: 3193.3 KiB/s, speed_upload: 0.0 KiB/s
HTTPSTAT_SAVE_BODY
Secara default httpstat menyimpan isi dalam file tmp, setel ke false
untuk menonaktifkan fitur ini. Standarnya true
HTTPSTAT_CURL_BIN
Tunjukkan jalur bin cURL yang akan digunakan. Defaultnya adalah curl
dari shell $PATH saat ini.
Contoh ini menggunakan cURL yang diinstal untuk membuat permintaan HTTP2:
HTTPSTAT_CURL_BIN=/usr/local/Cellar/curl/7.50.3/bin/curl httpstat https://http2.akamai.com/ --http2
HTTP/2 200
...
cURL harus dikompilasi dengan nghttp2 untuk mengaktifkan fitur http2 (#12).
HTTPSTAT_METRICS_ONLY
Jika disetel ke true
, httpsstat hanya akan menampilkan metrik dalam format json, ini berguna jika Anda ingin mengurai data alih-alih membacanya.
HTTPSTAT_DEBUG
Setel ke true
untuk melihat log debug. Standarnya false
Untuk kenyamanan, Anda dapat mengekspor lingkungan ini di .zshrc
atau .bashrc
, contoh:
export HTTPSTAT_SHOW_IP=false
export HTTPSTAT_SHOW_SPEED=true
export HTTPSTAT_SAVE_BODY=false
Berikut beberapa implementasi dalam berbagai bahasa:
Buka: davecheney/httpsstat
Ini adalah alternatif Go dari httpstat, ditulis dalam Go murni dan tidak bergantung pada program eksternal. Pilihlah jika Anda menyukai eksekusi biner yang solid (sebenarnya saya menyukainya).
Buka (perpustakaan): tcnksm/go-Htstat
Selain sebagai alat cli, proyek ini digunakan sebagai perpustakaan untuk membantu men-debug latensi permintaan HTTP dalam kode Go, sangat bijaksana dan berguna, lihat lebih lanjut di artikel ini
pesta: b4b4r07/httpsstat
Inilah yang sebenarnya ingin saya lakukan di awal, tetapi menyerah karena tidak percaya diri dengan keterampilan bash saya, kerja bagus!
Node: yosuke-furukawa/httpsstat
b4b4r07 menyebutkan ini dalam artikelnya, juga dapat digunakan sebagai klien HTTP.
PHP: talhasch/php-htstat
Implementasi PHP oleh @talhasch
Beberapa blok kode di httpstat
disalin dari proyek saya yang lain, lihat:
reorx/python-terminal-color Pustaka file tunggal drop-in untuk mencetak warna terminal.
reorx/getenv Definisi variabel lingkungan dengan tipe.