httpstat

github.com ↗

Break an HTTP request into timing stages

SI Score
80/100
Pricing
Not confirmed
Free plan
Not confirmed
Sign-up required
Not confirmed

Ask SI about httpstat

Answers use saved listing facts and recorded sources.

What it does

httpstat presents curl request timings as DNS, TCP, TLS, server processing and content-transfer stages, with terminal and structured output.

Pass the URL and the same request options used by the affected client, then compare DNS, connection, TLS, server-wait and transfer stages. httpstat wraps curl, reserving -w, -D, -o, -s and -S for its own use. JSON or JSONL supports later processing, while threshold checks return status 4 on a timing violation. The Python 3 script depends on curl, whose build also determines features such as HTTP/2. Response bodies are saved to a temporary file by default even when not displayed; that behavior can be disabled. Displayed bodies are limited to 1023 bytes. These timings describe the request from this client environment.

Strengths

  • Timing stages visible together
  • Structured output and thresholds

Watch out for

  • Some curl options are reserved by the wrapper

Sources