AWS SDK for C++AWS SDK for C++ Version 1.11.605 |
Definition at line 100 of file HttpClientMetrics.h.
Definition at line 49 of file MonitoringManager.h.
Metrics definitions optional from HttpClient module inside AWS Sdk core.
Enumerator | |
---|---|
DestinationIp | |
AcquireConnectionLatency | Requires the SDK to recognize that an existing connection was reused to make the request, contains the time interval (in milliseconds) between the construction of the http request and when a connection was successfully acquired from the connection pool. |
ConnectionReused | Requires the SDK to recognize whether or not an existing connection was used to make the request, contains 1 if an existing connection was used to perform the http request; contains 0 if a new connection was opened to perform the http request. |
ConnectLatency | Deprecated, maintained for backwards compatibility, use TimeToConnect instead, |
RequestLatency | Requires the SDK to be able to mark the point in time where the request starts transmission, contains the time interval (in milliseconds) between when the request begins transmission to the service and when a terminal error has occurred or the response has been parsed, excluding streaming payloads. Like ConnectLatency, if the SDK has access to an event that is a "close enough" marker in time, it should include this entry. The request here is a http level request, not a service level API request. |
DnsLatency | Requires the SDK to have access to how long it took to perform DNS lookup, if it took place, contains the time (in milliseconds) it took to perform DNS lookup, during the Api Call attempt. |
TcpLatency | Requires the SDK to have access to how long it took to establish the underlying Tcp/Ip connection used for the request, contains the time (in milliseconds) it took to fully establish the TCP/IP connection used to make the request attempt. |
SslLatency | Requires the SDK to have access to how long it took to perform the SSL handshake for a secure request, contains the time (in milliseconds) it took to perform a SSL handshake over the established TCP/IP connection. |
DownloadSpeed | Request the SDK to have access to the download speed in bytes per second for a request. |
Throughput | |
UploadSpeed | Upload speed of the request in bytes per second. |
Unknown | Unknow Metrics Type |
TimeToFirstByte | Time between http client initialization and first byte transferred. |
TimeToConnect | Requires the SDK to recognize that a new connection was established to make the request, contains the time interval (in milliseconds) between the construction of the http request and when a connection was fully established. If the SDK is able to estimate this time despite not having a perfectly accurate callback for the specific event, then it should. For example, if the http client includes user-level data write functions that are guaranteed to be called shortly after connection establishment, then the first call could be used as a reasonable time marker for ConnectLatency |
Definition at line 18 of file HttpClientMetrics.h.
Add monitoring using supplied factories
Clean up monitoring related global variables. This should be done first at shutdown, to avoid a race condition in testing whether the global Monitoring instance has been destructed.
Init monitoring using supplied factories, monitoring can support multiple instances. We will try to (based on config resolution result) create a default client side monitoring listener instance defined in AWS SDK Core module. and create other instances from these factories. This function will be called during Aws::InitAPI call, argument is acquired from Aws::SDKOptions->MonitoringOptions
Wrapper function of OnFinish defined by all monitoring instances
Wrapper function of OnRequestFailed defined by all monitoring instances
Wrapper function of OnRequestRetry defined by all monitoring instances
Wrapper function of OnRequestStarted defined by all monitoring instances
Wrapper function of OnRequestSucceeded defined by all monitoring instances