https://stackoverflow.com/questions/18215389/how-do-i-measure-request-and-response-times-at-once-using-curl
cat > ~/lib/curl/curl-format.detailed.txt
num_redirects: %{num_redirects}\n
num_connects: %{num_connects}\n
----------\n
size_download: %{size_download}\n
size_header: %{size_header}\n
size_request: %{size_request}\n
size_upload: %{size_upload}\n
speed_download: %{speed_download}\n
speed_upload: %{speed_upload}\n
----------\n
time_namelookup: %{time_namelookup}\n
time_connect: %{time_connect}\n
time_appconnect: %{time_appconnect}\n
time_pretransfer: %{time_pretransfer}\n
time_redirect: %{time_redirect}\n
time_starttransfer: %{time_starttransfer}\n
----------\n
time_total: %{time_total}\n
num_redirects: 2
num_connects: 3
size_download: 29051
size_header: 1427
size_request: 234
size_upload: 0
speed_download: 29433.000
speed_upload: 0.000
time_namelookup: 0.010273
time_connect: 0.044321
time_appconnect: 0.086639
time_pretransfer: 0.100233
time_redirect: 0.588321
time_starttransfer: 0.962530
----------
time_total: 0.987888
size_download: %{size_download}\n
size_header: %{size_header}\n
size_request: %{size_request}\n
size_upload: %{size_upload}\n
speed_download: %{speed_download}\n
speed_upload: %{speed_upload}\n
time_namelookup: %{time_namelookup}\n
time_connect: %{time_connect}\n
time_appconnect: %{time_appconnect}\n
time_pretransfer: %{time_pretransfer}\n
time_redirect: %{time_redirect}\n
time_starttransfer: %{time_starttransfer}\n
----------\n
time_total: %{time_total}\n
num_redirects: 2
num_connects: 3
size_download: 29051
size_header: 1427
size_request: 234
size_upload: 0
speed_download: 29433.000
speed_upload: 0.000
time_namelookup: 0.010273
time_connect: 0.044321
time_appconnect: 0.086639
time_pretransfer: 0.100233
time_redirect: 0.588321
time_starttransfer: 0.962530
----------
time_total: 0.987888