/** * 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. * * <p>This feature is enabled if the system property * "apphub.dep.amazonaws.sdk.enableRuntimeProfiling" is set, or if a {@link * RequestMetricCollector} is in use either at the request, web service client, or AWS SDK level. * * @param eventName - The name of the event to start * @see AwsSdkMetrics */ @Override public void startEvent(String eventName) { /* This will overwrite past events */ eventsBeingProfiled.put // ignoring the wall clock time (eventName, TimingInfo.startTimingFullSupport(System.nanoTime())); }
/** * This constructor should be used in the case when AWS SDK metrics collector is enabled. * * @see AWSRequestMetricsFullSupport */ public AWSRequestMetricsFullSupport() { super(TimingInfo.startTimingFullSupport()); }