- 
- 
- 
Enum Summary 
| Enum | Description |  
| AwsSdkMetrics | Used to control the default AWS SDK metric collection system. |  
 
Package com.amazonaws.metrics Description
Classes used to support the AWS SDK metrics API.
 
 When the default metric collection system is enabled, 
 the default AWS SDK implementation
 captures a set of predefined core metrics that are grouped under three major 
 categories:  AWS Request Metrics, AWS Service Metrics, and Machine Metrics.
 
Nomenclature
 
 - Physical Http Request - an http request initiated by the http client library used by AWS Java SDK . No retry is involved, or at least not initiated from the JVM.
- Logical Http Request - an http request initiated from the AWS Java SDK by executing the underlying http client library. A logical request may involve multiple physical requests due to retries.
- Service Client type - the specific subtype of AmazonWebServiceClient, such as AmazonS3Client, AmazonDynamoDBClient, etc.
- Request type - the specific subtype of AmazonWebServiceRequest, such as PutItemRequest, PutObjectRequest, etc.
- Http Client Library - the Apache HttpComponents client library
AWS Request Metrics
 
 - ClientExecuteTime - Total number of milliseconds taken for a 
 request/response including the time taken to execute the request handlers,
 round trip to AWS, and the time taken to execute the response handlers.
 Captured on a per request type level.
- Exception - Number of logical request failure. Captured both on a per service 
 client type level and a per request type level.
- HttpClientPoolAvailableCount - Number of idle persistent connections of
 the underlying httpclient.
 This metric is collected from the respective PoolStats before the connection of a request is obtained.
- HttpClientPoolLeasedCount - Number of persistent connections tracked by 
 the underlying httpclient connection manager currently being used to execute
 requests.
 This metric is collected from the respective PoolStats before the connection of a request is obtained.
- HttpClientPoolPendingCount - Number of connection requests being blocked
 awaiting a free connection of the underlying httpclient.
 This metric is collected from the respective PoolStats. before the connection of a request is obtained
- HttpRequestTime - Number of milliseconds taken for a logical request/response 
 round trip to AWS. Captured on a per request type level.
- HttpClientSendRequestTime - Number of milliseconds taken for a physical request
 to get sent to AWS. Captured on a per request type level.
- HttpClientReceiveResponseTime - Number of milliseconds taken for a physical response
 to get received from AWS. Captured on a per request type level.
- HttpClientRetryCount - Number of retries per physical request. Captured on a per service 
 client type level. 
- RequestCount - Number of logical requests. Captured on a per service 
 client type level. 
- RetryCount - Number of retries per logical request. Captured on a per service 
 client type level. 
- ThrottleException - Number of times of a request has been throttled by the service.
- DynamoDBConsumedCapacity - Number of Amazon DynamoDB capacity units consumed.
 Captured on a per request type level, and is only available if the request
 has been specified with the necessary "ReturnConsumedCapacity" parameter.
 
AWS Service Metrics
 
 - HttpClientGetConnectionTime - Total number of milliseconds taken for the
 underlying http client library to get a connection.
 
- S3DownloadThroughput - Number of bytes downloaded from S3 per second.
- S3DownloadByteCount - Number of bytes downloaded from S3.
- S3UploadThroughput - Number of bytes uploaded to S3 per second.
- S3UploadByteCount - Number of bytes uploaded to S3.
Machine Metrics
 Memory
 
 - TotalMemory - Total amount of memory currently available to the JVM for
 current and future objects, measured in bytes. This value may vary over 
 time, depending on the host environment.
- FreeMemory - An approximation to the total amount of memory currently 
 available to the JVM for future allocated objects, measured in bytes.
- UsedMemory - TotalMemory minus FreeMemory.
- SpareMemory - The maximum amount of memory that the JVM will attempt to
 use, measured in bytes, minus UsedMemory. 
Threads
 
 - ThreadCount - The current number of live threads including both daemon 
 and non-daemon threads.
- DeadLockThreadCount - The number of threads that are deadlocked waiting 
 for object monitors or ownable synchronizers, if any. Threads are deadlocked
  in a cycle waiting for a lock of these two types if each thread owns one 
  lock while trying to acquire another lock already held by another thread in
   the cycle. No metrics is generated when the value is zero.
- DaemonThreadCount - The current number of live daemon threads. No metrics
  is generated when the value is zero.
- PeakThreadCount - The peak live thread count since the JVM started or 
 since the peak was reset.
- TotalStartedThreadCount - The total number of threads created and also 
 started since the JVM started.
File Descriptors
 
 - OpenFileDescriptorCount - Number of opened file descriptors of the 
 operating system.
- SpareFileDescriptorCount - Maximum number of file descriptors of the 
 operating system minus OpenFileDescriptorCount.