curl -w – Extragerea metricilor de performanță și a variabilelor (Write-out) în Comenzi cURL

Afișează informații structurate și metrici precise de sincronizare și rețea la finalizarea transferului.

Sintaxă
curl -s -o /dev/null -w "%{http_code}\n" <url>
curl -s -o /dev/null -w "DNS: %{time_namelookup}s | Total: %{time_total}s\n" <url>

Ce face curl -w - Extragerea metricilor de performanță și a variabilelor (Write-out)

Opțiunea -w (sau --write-out) este una dintre cele mai puternice funcționalități din cURL pentru monitorizare și benchmark.

Permite extragerea de variabile precum codul de stare HTTP (`%{http_code}`), timpul de rezoluție DNS (`%{time_namelookup}`), durata handshake-ului TCP (`%{time_connect}`), negocierea SSL (`%{time_appconnect}`) și durata până la primul octet (`%{time_starttransfer}` / TTFB).

Poate fi exportat și în format complet JSON începând cu curl 7.70 prin parametrul `-w „%{json}”`.

Exemple

Exemplul 1: Măsurarea timpului până la primul octet (TTFB) și a latenței totale

Obține timpii de răspuns fără a afișa conținutul paginii.

curl -s -o /dev/null -w "HTTP: %{http_code}\nDNS: %{time_namelookup}s\nConnect: %{time_connect}s\nTTFB: %{time_starttransfer}s\nTotal: %{time_total}s\n" https://www.dexblog.ro/

Ieșire în terminal

HTTP: 200
DNS: 0.014s
Connect: 0.038s
TTFB: 0.089s
Total: 0.112s

Greșeli frecvente

  • Omiterea caracterului newline ‘\n’ la sfârșitul șirului de formatare, făcând ca rezultatul să se lipească de promptul terminalului.

Comenzi înrudite