Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
httpstat — Strumento CLI che avvolge curl per visualizzare la suddivisione dei tempi delle richieste HTTP (DNS, TCP, TLS, elaborazione server) con output JSON strutturato e controllo delle soglie SLO per la diagnostica delle prestazioni di rete. | Kitploit
Strumenti/GitHubGitHub/reorx/httpstat
Utilità GenericheScripting e AutomazioneSicurezza di Rete
GitHubreorx/httpstat

httpstat

Strumento CLI che avvolge curl per visualizzare la suddivisione dei tempi delle richieste HTTP (DNS, TCP, TLS, elaborazione server) con output JSON strutturato e controllo delle soglie SLO per la diagnostica delle prestazioni di rete.

Vedi Repository
6.2k383185 mesi faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

httpstat

schermata

httpstat visualizza le statistiche di curl(1) in modo bello e chiaro.

È uno script Python a file unico🌟 che non ha dipendenze👏 ed è compatibile con Python 3🍻.

Caratteristiche

  • Bell'output nel terminale — suddivisione dei tempi di DNS, TCP, TLS, elaborazione del server e trasferimento del contenuto
  • Output JSON strutturato — --format json / jsonl per il consumo da parte di macchine con uno schema stabile v1
  • Controllo delle soglie SLO — --slo total=500,connect=100 esce con codice 4 in caso di violazione
  • Salva i risultati su file — --save path.json per flussi di lavoro a più passaggi
  • Supporto NO_COLOR — rispetta la convenzione NO_COLOR
  • Abilità agente — skill incorporata per la diagnostica delle prestazioni HTTP assistita da agenti
  • Installazione

    Ci sono tre modi per ottenere httpstat:

    • Scarica lo script direttamente: wget https://raw.githubusercontent.com/reorx/httpstat/master/httpstat.py

    • Tramite pip: pip install httpstat

    • Tramite homebrew (solo macOS): brew install httpstat

    Per utenti Windows, si consiglia la versione Go di @davecheney. → link di download

    Skill

    httpstat include una skill per agenti che insegna agli assistenti di codifica AI (Claude Code, Cursor, ecc.) come usare httpstat per la diagnostica delle prestazioni HTTP — installazione automatica, identificazione dei colli di bottiglia e suggerimenti di correzione attuabili.

    Installa la skill nel tuo progetto:

    root@kitploit:~
    npx skills add reorx/httpstat
    

    Una volta installata, il tuo agente userà automaticamente httpstat quando fai domande come "perché questa API è lenta?" o "diagnostica la latenza di questo endpoint".

    Utilizzo

    Semplicemente:

    root@kitploit:~
    python httpstat.py httpbin.org/get
    

    Se installato tramite pip o brew, puoi usare httpstat come comando:

    root@kitploit:~
    httpstat httpbin.org/get
    

    Opzioni cURL

    Poiché httpstat è un wrapper di cURL, puoi passare qualsiasi opzione supportata da cURL dopo l'url (tranne -w, -D, -o, -s, -S già usate da httpstat):

    root@kitploit:~
    httpstat httpbin.org/post -X POST --data-urlencode "a=b" -v
    

    Output Strutturato

    Usa --format (-f) per ottenere output leggibile da macchina:

    root@kitploit:~
    httpstat httpbin.org/get --format json
    
    root@kitploit:~
    {
      "schema_version": 1,
      "url": "httpbin.org/get",
      "ok": true,
      "exit_code": 0,
      "response": {
        "status_line": "HTTP/2 200",
        "status_code": 200,
        "remote_ip": "...",
        "remote_port": "443",
        "headers": {"Content-Type": "application/json", "Server": "nginx", "...": "..."}
      },
      "timings_ms": {
        "dns": 5, "connect": 10, "tls": 15,
        "server": 50, "transfer": 20, "total": 100,
        "namelookup": 5, "initial_connect": 15,
        "pretransfer": 30, "starttransfer": 80
      },
      "speed": { "download_kbs": 1234.5, "upload_kbs": 0.0 },
      "slo": null
    }
    

    Usa --format jsonl per JSON compatto su singola riga (utile per pipeline di log).

    Soglie SLO

    Controlla i tempi di risposta rispetto alle soglie. Esce con codice 4 in caso di violazione:

    root@kitploit:~
    httpstat httpbin.org/get --slo total=500,connect=100,ttfb=200
    

    Chiavi supportate: total, connect, ttfb (time to first byte), dns, tls.

    In modalità formattata, le violazioni vengono stampate in rosso alla fine dell'output. In modalità JSON, le violazioni appaiono nel campo slo:

    root@kitploit:~
    {
      "slo": {
        "pass": false,
        "violations": [
          { "key": "total", "threshold_ms": 500, "actual_ms": 823 }
        ]
      }
    }
    

    Salva Risultati

    Scrive l'output JSON strutturato su un file (funziona con qualsiasi --format):

    root@kitploit:~
    httpstat httpbin.org/get --save result.json
    httpstat httpbin.org/get --format json --save result.json
    

    Variabili d'Ambiente

    httpstat ha una serie di variabili d'ambiente per controllarne il comportamento. Ecco alcuni esempi d'uso, puoi anche eseguire httpstat --help per vedere la spiegazione completa.

    • HTTPSTAT_SHOW_BODY

      Imposta a true per mostrare il corpo della risposta nell'output, nota che la lunghezza del corpo è limitata a 1023 byte, verrà troncato se supera. Il valore predefinito è false.

    • HTTPSTAT_SHOW_IP

      Per impostazione predefinita httpstat mostra l'indirizzo IP/porta remoto e locale. Imposta a false per disabilitare questa funzione. Il valore predefinito è true.

    • HTTPSTAT_SHOW_SPEED

      Imposta a true per mostrare la velocità di download e upload. Il valore predefinito è false.

      root@kitploit:~
      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

      Per impostazione predefinita httpstat memorizza il corpo in un file temporaneo, imposta a false per disabilitare questa funzione. Il valore predefinito è true

    • HTTPSTAT_CURL_BIN

      Indica il percorso del binario cURL da usare. Il valore predefinito è curl dal $PATH della shell corrente.

      Questo esempio usa cURL installato tramite brew per effettuare richieste HTTP2:

      root@kitploit:~
      HTTPSTAT_CURL_BIN=/usr/local/Cellar/curl/7.50.3/bin/curl httpstat https://http2.akamai.com/ --http2
      
      HTTP/2 200
      ...
      

      cURL deve essere compilato con nghttp2 per abilitare la funzionalità http2 (#12).

    • HTTPSTAT_METRICS_ONLY

      Se impostato a true, httpstat restituirà solo le metriche in formato json, questo è utile se vuoi analizzare i dati invece di leggerli.

      Nota: Questo è mantenuto per compatibilità all'indietro. Preferisci --format json.

    • HTTPSTAT_DEBUG

      Imposta a true per vedere i log di debug. Il valore predefinito è false

    • NO_COLOR

      Quando impostata (a qualsiasi valore), disabilita tutto l'output colorato. Vedi no-color.org per la convenzione.

      root@kitploit:~
      NO_COLOR=1 httpstat httpbin.org/get
      

    Per comodità, puoi esportare queste variabili d'ambiente nel tuo .zshrc o .bashrc, esempio:

    root@kitploit:~
    export HTTPSTAT_SHOW_IP=false
    export HTTPSTAT_SHOW_SPEED=true
    export HTTPSTAT_SAVE_BODY=false
    

    Progetti Correlati

    Ecco alcune implementazioni in vari linguaggi:

    • Go: davecheney/httpstat

      Questa è l'alternativa Go di httpstat, è scritta in Go puro e non dipende da programmi esterni. Sceglila se ti piacciono le esecuzioni binarie solide (in realtà è così).

    • Go (libreria): tcnksm/go-httpstat

      Oltre ad essere uno strumento da riga di comando, questo progetto è usato come libreria per aiutare a diagnosticare la latenza delle richieste HTTP in codice Go, molto pensato e utile, vedi di più in questo articolo

    • Bash: b4b4r07/httpstat

      Questo è esattamente ciò che volevo fare all'inizio, ma ho rinunciato per non essere sicuro delle mie capacità in bash, buon lavoro!

    • Node: yosuke-furukawa/httpstat

      b4b4r07 lo ha menzionato nel suo articolo, potrebbe essere usato anche come client HTTP.

    • PHP: talhasch/php-httpstat

      L'implementazione PHP di @talhasch

    Alcuni blocchi di codice in httpstat sono copiati da altri miei progetti, dai un'occhiata:

    • reorx/python-terminal-color Libreria a file unico per stampare colori nel terminale.

    • reorx/getenv Definizione di variabili d'ambiente con tipo.

    Scarica lo strumento