Class AWSRequestMetricsFullSupport
java.lang.Object
com.amazonaws.util.AWSRequestMetrics
com.amazonaws.util.AWSRequestMetricsFullSupport
In contrast to
AWSRequestMetrics, which is intended to be a minimal
support of AWS SDK request metrics, this class is the full support of AWS SDK
request metrics including features such as properties and sub-events.
This class is instantiated instead of AWSRequestMetrics when request
metric collection is required during a particular service request/response
cycle.
-
Nested Class Summary
Nested classes/interfaces inherited from class AWSRequestMetrics
AWSRequestMetrics.Field -
Field Summary
Fields inherited from class AWSRequestMetrics
timingInfo -
Constructor Summary
ConstructorsConstructorDescriptionThis constructor should be used in the case when AWS SDK metrics collector is enabled. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddProperty(MetricType f, Object value) voidaddProperty(String propertyName, Object value) Add a property.voidvoidEnd an event which was previously started.getProperty(String propertyName) voidvoidincrementCounter(String event) Add 1 to an existing count for a given event.final booleanAlways returns true.voidlog()voidsetCounter(MetricType f, long count) voidsetCounter(String counterName, long count) voidvoidstartEvent(String eventName) Start an event which will be timed.Methods inherited from class AWSRequestMetrics
addPropertyWith, addPropertyWith, getTimingInfo, incrementCounterWith, incrementCounterWith, withCounter, withCounter
-
Constructor Details
-
AWSRequestMetricsFullSupport
public AWSRequestMetricsFullSupport()This constructor should be used in the case when AWS SDK metrics collector is enabled.- See Also:
-
-
Method Details
-
startEvent
Start an event which will be timed. The startTime and endTime are added to timingInfo only after endEvent is called. For every startEvent there should be a corresponding endEvent. If you start the same event without ending it, this will overwrite the old event. i.e. There is no support for recursive events yet. Having said that, if you start and end an event in that sequence multiple times, all events are logged in timingInfo in that order. This feature is enabled if the system property "com.amazonaws.sdk.enableRuntimeProfiling" is set, or if aRequestMetricCollectoris in use either at the request, web service client, or AWS SDK level.- Overrides:
startEventin classAWSRequestMetrics- Parameters:
eventName- - The name of the event to start- See Also:
-
startEvent
- Overrides:
startEventin classAWSRequestMetrics
-
endEvent
End an event which was previously started. Once ended, log how much time the event took. It is illegal to end an Event that was not started. It is good practice to endEvent in a finally block. See Also startEvent.- Overrides:
endEventin classAWSRequestMetrics- Parameters:
eventName- - The name of the event to start
-
endEvent
- Overrides:
endEventin classAWSRequestMetrics
-
incrementCounter
Add 1 to an existing count for a given event. If the count for that event does not exist, then it creates one and initializes it to 1. This feature is enabled if the system property "com.amazonaws.sdk.enableRuntimeProfiling" is set, or if aRequestMetricCollectoris in use either at the request, web service client, or AWS SDK level.- Overrides:
incrementCounterin classAWSRequestMetrics- Parameters:
event- - The name of the event to count
-
incrementCounter
- Overrides:
incrementCounterin classAWSRequestMetrics
-
setCounter
- Overrides:
setCounterin classAWSRequestMetrics
-
setCounter
- Overrides:
setCounterin classAWSRequestMetrics
-
addProperty
Add a property. If you add the same property more than once, it stores all values a list. This feature is enabled if the system property "com.amazonaws.sdk.enableRuntimeProfiling" is set, or if aRequestMetricCollectoris in use either at the request, web service client, or AWS SDK level.- Overrides:
addPropertyin classAWSRequestMetrics- Parameters:
propertyName- The name of the propertyvalue- The property value
-
addProperty
- Overrides:
addPropertyin classAWSRequestMetrics
-
log
public void log()- Overrides:
login classAWSRequestMetrics
-
getProperty
- Overrides:
getPropertyin classAWSRequestMetrics
-
getProperty
- Overrides:
getPropertyin classAWSRequestMetrics
-
isEnabled
public final boolean isEnabled()Always returns true.- Overrides:
isEnabledin classAWSRequestMetrics
-