Current section
Files
Jump to
Current section
Files
lib/response_metrics.ex
defmodule ExCurl.ResponseMetrics do
@moduledoc """
Request timing metrics.
## Available Fields
The following metrics are returned when the `return_metrics` option is set to `true`:
* `total_time` - corresponds to the [CURLINFO_TOTAL_TIME_T option](https://curl.se/libcurl/c/CURLINFO_TOTAL_TIME_T.html).
* `namelookup_time` - corresponds to the [CURLINFO_NAMELOOKUP_TIME_T option](https://curl.se/libcurl/c/CURLINFO_NAMELOOKUP_TIME_T.html).
* `connect_time` - corresponds to the [CURLINFO_CONNECT_TIME_T option](https://curl.se/libcurl/c/CURLINFO_CONNECT_TIME_T.html).
* `appconnect_time` - corresponds to the [CURLINFO_APPCONNECT_TIME_T option](https://curl.se/libcurl/c/CURLINFO_APPCONNECT_TIME_T.html).
* `pretransfer_time` - corresponds to the [CURLINFO_PRETRANSFER_TIME_T option](https://curl.se/libcurl/c/CURLINFO_PRETRANSFER_TIME_T.html).
* `starttransfer_time` - corresponds to the [CURLINFO_STARTTRANSFER_TIME_T option](https://curl.se/libcurl/c/CURLINFO_STARTTRANSFER_TIME_T.html).
"""
defstruct total_time: 0,
namelookup_time: 0,
connect_time: 0,
appconnect_time: 0,
pretransfer_time: 0,
starttransfer_time: 0
@type t :: %__MODULE__{
total_time: float(),
namelookup_time: float(),
connect_time: float(),
appconnect_time: float(),
pretransfer_time: float(),
starttransfer_time: float()
}
end