/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Metadata generated from the segment documents in a trace.See
* Also:
AWS
* API Reference
The unique identifier for the request that generated the trace's segments and * subsegments.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The unique identifier for the request that generated the trace's segments and * subsegments.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The unique identifier for the request that generated the trace's segments and * subsegments.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The unique identifier for the request that generated the trace's segments and * subsegments.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The unique identifier for the request that generated the trace's segments and * subsegments.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The unique identifier for the request that generated the trace's segments and * subsegments.
*/ inline TraceSummary& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The unique identifier for the request that generated the trace's segments and * subsegments.
*/ inline TraceSummary& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The unique identifier for the request that generated the trace's segments and * subsegments.
*/ inline TraceSummary& WithId(const char* value) { SetId(value); return *this;} /** *The length of time in seconds between the start time of the root segment and * the end time of the last segment that completed.
*/ inline double GetDuration() const{ return m_duration; } /** *The length of time in seconds between the start time of the root segment and * the end time of the last segment that completed.
*/ inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; } /** *The length of time in seconds between the start time of the root segment and * the end time of the last segment that completed.
*/ inline void SetDuration(double value) { m_durationHasBeenSet = true; m_duration = value; } /** *The length of time in seconds between the start time of the root segment and * the end time of the last segment that completed.
*/ inline TraceSummary& WithDuration(double value) { SetDuration(value); return *this;} /** *The length of time in seconds between the start and end times of the root * segment. If the service performs work asynchronously, the response time measures * the time before the response is sent to the user, while the duration measures * the amount of time before the last traced activity completes.
*/ inline double GetResponseTime() const{ return m_responseTime; } /** *The length of time in seconds between the start and end times of the root * segment. If the service performs work asynchronously, the response time measures * the time before the response is sent to the user, while the duration measures * the amount of time before the last traced activity completes.
*/ inline bool ResponseTimeHasBeenSet() const { return m_responseTimeHasBeenSet; } /** *The length of time in seconds between the start and end times of the root * segment. If the service performs work asynchronously, the response time measures * the time before the response is sent to the user, while the duration measures * the amount of time before the last traced activity completes.
*/ inline void SetResponseTime(double value) { m_responseTimeHasBeenSet = true; m_responseTime = value; } /** *The length of time in seconds between the start and end times of the root * segment. If the service performs work asynchronously, the response time measures * the time before the response is sent to the user, while the duration measures * the amount of time before the last traced activity completes.
*/ inline TraceSummary& WithResponseTime(double value) { SetResponseTime(value); return *this;} /** *The root segment document has a 500 series error.
*/ inline bool GetHasFault() const{ return m_hasFault; } /** *The root segment document has a 500 series error.
*/ inline bool HasFaultHasBeenSet() const { return m_hasFaultHasBeenSet; } /** *The root segment document has a 500 series error.
*/ inline void SetHasFault(bool value) { m_hasFaultHasBeenSet = true; m_hasFault = value; } /** *The root segment document has a 500 series error.
*/ inline TraceSummary& WithHasFault(bool value) { SetHasFault(value); return *this;} /** *The root segment document has a 400 series error.
*/ inline bool GetHasError() const{ return m_hasError; } /** *The root segment document has a 400 series error.
*/ inline bool HasErrorHasBeenSet() const { return m_hasErrorHasBeenSet; } /** *The root segment document has a 400 series error.
*/ inline void SetHasError(bool value) { m_hasErrorHasBeenSet = true; m_hasError = value; } /** *The root segment document has a 400 series error.
*/ inline TraceSummary& WithHasError(bool value) { SetHasError(value); return *this;} /** *One or more of the segment documents has a 429 throttling error.
*/ inline bool GetHasThrottle() const{ return m_hasThrottle; } /** *One or more of the segment documents has a 429 throttling error.
*/ inline bool HasThrottleHasBeenSet() const { return m_hasThrottleHasBeenSet; } /** *One or more of the segment documents has a 429 throttling error.
*/ inline void SetHasThrottle(bool value) { m_hasThrottleHasBeenSet = true; m_hasThrottle = value; } /** *One or more of the segment documents has a 429 throttling error.
*/ inline TraceSummary& WithHasThrottle(bool value) { SetHasThrottle(value); return *this;} /** *One or more of the segment documents is in progress.
*/ inline bool GetIsPartial() const{ return m_isPartial; } /** *One or more of the segment documents is in progress.
*/ inline bool IsPartialHasBeenSet() const { return m_isPartialHasBeenSet; } /** *One or more of the segment documents is in progress.
*/ inline void SetIsPartial(bool value) { m_isPartialHasBeenSet = true; m_isPartial = value; } /** *One or more of the segment documents is in progress.
*/ inline TraceSummary& WithIsPartial(bool value) { SetIsPartial(value); return *this;} /** *Information about the HTTP request served by the trace.
*/ inline const Http& GetHttp() const{ return m_http; } /** *Information about the HTTP request served by the trace.
*/ inline bool HttpHasBeenSet() const { return m_httpHasBeenSet; } /** *Information about the HTTP request served by the trace.
*/ inline void SetHttp(const Http& value) { m_httpHasBeenSet = true; m_http = value; } /** *Information about the HTTP request served by the trace.
*/ inline void SetHttp(Http&& value) { m_httpHasBeenSet = true; m_http = std::move(value); } /** *Information about the HTTP request served by the trace.
*/ inline TraceSummary& WithHttp(const Http& value) { SetHttp(value); return *this;} /** *Information about the HTTP request served by the trace.
*/ inline TraceSummary& WithHttp(Http&& value) { SetHttp(std::move(value)); return *this;} /** *Annotations from the trace's segment documents.
*/ inline const Aws::MapAnnotations from the trace's segment documents.
*/ inline bool AnnotationsHasBeenSet() const { return m_annotationsHasBeenSet; } /** *Annotations from the trace's segment documents.
*/ inline void SetAnnotations(const Aws::MapAnnotations from the trace's segment documents.
*/ inline void SetAnnotations(Aws::MapAnnotations from the trace's segment documents.
*/ inline TraceSummary& WithAnnotations(const Aws::MapAnnotations from the trace's segment documents.
*/ inline TraceSummary& WithAnnotations(Aws::MapAnnotations from the trace's segment documents.
*/ inline TraceSummary& AddAnnotations(const Aws::String& key, const Aws::VectorAnnotations from the trace's segment documents.
*/ inline TraceSummary& AddAnnotations(Aws::String&& key, const Aws::VectorAnnotations from the trace's segment documents.
*/ inline TraceSummary& AddAnnotations(const Aws::String& key, Aws::VectorAnnotations from the trace's segment documents.
*/ inline TraceSummary& AddAnnotations(Aws::String&& key, Aws::VectorAnnotations from the trace's segment documents.
*/ inline TraceSummary& AddAnnotations(const char* key, Aws::VectorAnnotations from the trace's segment documents.
*/ inline TraceSummary& AddAnnotations(const char* key, const Aws::VectorUsers from the trace's segment documents.
*/ inline const Aws::VectorUsers from the trace's segment documents.
*/ inline bool UsersHasBeenSet() const { return m_usersHasBeenSet; } /** *Users from the trace's segment documents.
*/ inline void SetUsers(const Aws::VectorUsers from the trace's segment documents.
*/ inline void SetUsers(Aws::VectorUsers from the trace's segment documents.
*/ inline TraceSummary& WithUsers(const Aws::VectorUsers from the trace's segment documents.
*/ inline TraceSummary& WithUsers(Aws::VectorUsers from the trace's segment documents.
*/ inline TraceSummary& AddUsers(const TraceUser& value) { m_usersHasBeenSet = true; m_users.push_back(value); return *this; } /** *Users from the trace's segment documents.
*/ inline TraceSummary& AddUsers(TraceUser&& value) { m_usersHasBeenSet = true; m_users.push_back(std::move(value)); return *this; } /** *Service IDs from the trace's segment documents.
*/ inline const Aws::VectorService IDs from the trace's segment documents.
*/ inline bool ServiceIdsHasBeenSet() const { return m_serviceIdsHasBeenSet; } /** *Service IDs from the trace's segment documents.
*/ inline void SetServiceIds(const Aws::VectorService IDs from the trace's segment documents.
*/ inline void SetServiceIds(Aws::VectorService IDs from the trace's segment documents.
*/ inline TraceSummary& WithServiceIds(const Aws::VectorService IDs from the trace's segment documents.
*/ inline TraceSummary& WithServiceIds(Aws::VectorService IDs from the trace's segment documents.
*/ inline TraceSummary& AddServiceIds(const ServiceId& value) { m_serviceIdsHasBeenSet = true; m_serviceIds.push_back(value); return *this; } /** *Service IDs from the trace's segment documents.
*/ inline TraceSummary& AddServiceIds(ServiceId&& value) { m_serviceIdsHasBeenSet = true; m_serviceIds.push_back(std::move(value)); return *this; } /** *A list of resource ARNs for any resource corresponding to the trace * segments.
*/ inline const Aws::VectorA list of resource ARNs for any resource corresponding to the trace * segments.
*/ inline bool ResourceARNsHasBeenSet() const { return m_resourceARNsHasBeenSet; } /** *A list of resource ARNs for any resource corresponding to the trace * segments.
*/ inline void SetResourceARNs(const Aws::VectorA list of resource ARNs for any resource corresponding to the trace * segments.
*/ inline void SetResourceARNs(Aws::VectorA list of resource ARNs for any resource corresponding to the trace * segments.
*/ inline TraceSummary& WithResourceARNs(const Aws::VectorA list of resource ARNs for any resource corresponding to the trace * segments.
*/ inline TraceSummary& WithResourceARNs(Aws::VectorA list of resource ARNs for any resource corresponding to the trace * segments.
*/ inline TraceSummary& AddResourceARNs(const ResourceARNDetail& value) { m_resourceARNsHasBeenSet = true; m_resourceARNs.push_back(value); return *this; } /** *A list of resource ARNs for any resource corresponding to the trace * segments.
*/ inline TraceSummary& AddResourceARNs(ResourceARNDetail&& value) { m_resourceARNsHasBeenSet = true; m_resourceARNs.push_back(std::move(value)); return *this; } /** *A list of EC2 instance IDs for any instance corresponding to the trace * segments.
*/ inline const Aws::VectorA list of EC2 instance IDs for any instance corresponding to the trace * segments.
*/ inline bool InstanceIdsHasBeenSet() const { return m_instanceIdsHasBeenSet; } /** *A list of EC2 instance IDs for any instance corresponding to the trace * segments.
*/ inline void SetInstanceIds(const Aws::VectorA list of EC2 instance IDs for any instance corresponding to the trace * segments.
*/ inline void SetInstanceIds(Aws::VectorA list of EC2 instance IDs for any instance corresponding to the trace * segments.
*/ inline TraceSummary& WithInstanceIds(const Aws::VectorA list of EC2 instance IDs for any instance corresponding to the trace * segments.
*/ inline TraceSummary& WithInstanceIds(Aws::VectorA list of EC2 instance IDs for any instance corresponding to the trace * segments.
*/ inline TraceSummary& AddInstanceIds(const InstanceIdDetail& value) { m_instanceIdsHasBeenSet = true; m_instanceIds.push_back(value); return *this; } /** *A list of EC2 instance IDs for any instance corresponding to the trace * segments.
*/ inline TraceSummary& AddInstanceIds(InstanceIdDetail&& value) { m_instanceIdsHasBeenSet = true; m_instanceIds.push_back(std::move(value)); return *this; } /** *A list of Availability Zones for any zone corresponding to the trace * segments.
*/ inline const Aws::VectorA list of Availability Zones for any zone corresponding to the trace * segments.
*/ inline bool AvailabilityZonesHasBeenSet() const { return m_availabilityZonesHasBeenSet; } /** *A list of Availability Zones for any zone corresponding to the trace * segments.
*/ inline void SetAvailabilityZones(const Aws::VectorA list of Availability Zones for any zone corresponding to the trace * segments.
*/ inline void SetAvailabilityZones(Aws::VectorA list of Availability Zones for any zone corresponding to the trace * segments.
*/ inline TraceSummary& WithAvailabilityZones(const Aws::VectorA list of Availability Zones for any zone corresponding to the trace * segments.
*/ inline TraceSummary& WithAvailabilityZones(Aws::VectorA list of Availability Zones for any zone corresponding to the trace * segments.
*/ inline TraceSummary& AddAvailabilityZones(const AvailabilityZoneDetail& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; } /** *A list of Availability Zones for any zone corresponding to the trace * segments.
*/ inline TraceSummary& AddAvailabilityZones(AvailabilityZoneDetail&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(std::move(value)); return *this; } /** *The root of a trace.
*/ inline const ServiceId& GetEntryPoint() const{ return m_entryPoint; } /** *The root of a trace.
*/ inline bool EntryPointHasBeenSet() const { return m_entryPointHasBeenSet; } /** *The root of a trace.
*/ inline void SetEntryPoint(const ServiceId& value) { m_entryPointHasBeenSet = true; m_entryPoint = value; } /** *The root of a trace.
*/ inline void SetEntryPoint(ServiceId&& value) { m_entryPointHasBeenSet = true; m_entryPoint = std::move(value); } /** *The root of a trace.
*/ inline TraceSummary& WithEntryPoint(const ServiceId& value) { SetEntryPoint(value); return *this;} /** *The root of a trace.
*/ inline TraceSummary& WithEntryPoint(ServiceId&& value) { SetEntryPoint(std::move(value)); return *this;} /** *A collection of FaultRootCause structures corresponding to the trace * segments.
*/ inline const Aws::VectorA collection of FaultRootCause structures corresponding to the trace * segments.
*/ inline bool FaultRootCausesHasBeenSet() const { return m_faultRootCausesHasBeenSet; } /** *A collection of FaultRootCause structures corresponding to the trace * segments.
*/ inline void SetFaultRootCauses(const Aws::VectorA collection of FaultRootCause structures corresponding to the trace * segments.
*/ inline void SetFaultRootCauses(Aws::VectorA collection of FaultRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& WithFaultRootCauses(const Aws::VectorA collection of FaultRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& WithFaultRootCauses(Aws::VectorA collection of FaultRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& AddFaultRootCauses(const FaultRootCause& value) { m_faultRootCausesHasBeenSet = true; m_faultRootCauses.push_back(value); return *this; } /** *A collection of FaultRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& AddFaultRootCauses(FaultRootCause&& value) { m_faultRootCausesHasBeenSet = true; m_faultRootCauses.push_back(std::move(value)); return *this; } /** *A collection of ErrorRootCause structures corresponding to the trace * segments.
*/ inline const Aws::VectorA collection of ErrorRootCause structures corresponding to the trace * segments.
*/ inline bool ErrorRootCausesHasBeenSet() const { return m_errorRootCausesHasBeenSet; } /** *A collection of ErrorRootCause structures corresponding to the trace * segments.
*/ inline void SetErrorRootCauses(const Aws::VectorA collection of ErrorRootCause structures corresponding to the trace * segments.
*/ inline void SetErrorRootCauses(Aws::VectorA collection of ErrorRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& WithErrorRootCauses(const Aws::VectorA collection of ErrorRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& WithErrorRootCauses(Aws::VectorA collection of ErrorRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& AddErrorRootCauses(const ErrorRootCause& value) { m_errorRootCausesHasBeenSet = true; m_errorRootCauses.push_back(value); return *this; } /** *A collection of ErrorRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& AddErrorRootCauses(ErrorRootCause&& value) { m_errorRootCausesHasBeenSet = true; m_errorRootCauses.push_back(std::move(value)); return *this; } /** *A collection of ResponseTimeRootCause structures corresponding to the trace * segments.
*/ inline const Aws::VectorA collection of ResponseTimeRootCause structures corresponding to the trace * segments.
*/ inline bool ResponseTimeRootCausesHasBeenSet() const { return m_responseTimeRootCausesHasBeenSet; } /** *A collection of ResponseTimeRootCause structures corresponding to the trace * segments.
*/ inline void SetResponseTimeRootCauses(const Aws::VectorA collection of ResponseTimeRootCause structures corresponding to the trace * segments.
*/ inline void SetResponseTimeRootCauses(Aws::VectorA collection of ResponseTimeRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& WithResponseTimeRootCauses(const Aws::VectorA collection of ResponseTimeRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& WithResponseTimeRootCauses(Aws::VectorA collection of ResponseTimeRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& AddResponseTimeRootCauses(const ResponseTimeRootCause& value) { m_responseTimeRootCausesHasBeenSet = true; m_responseTimeRootCauses.push_back(value); return *this; } /** *A collection of ResponseTimeRootCause structures corresponding to the trace * segments.
*/ inline TraceSummary& AddResponseTimeRootCauses(ResponseTimeRootCause&& value) { m_responseTimeRootCausesHasBeenSet = true; m_responseTimeRootCauses.push_back(std::move(value)); return *this; } /** *The revision number of a trace.
*/ inline int GetRevision() const{ return m_revision; } /** *The revision number of a trace.
*/ inline bool RevisionHasBeenSet() const { return m_revisionHasBeenSet; } /** *The revision number of a trace.
*/ inline void SetRevision(int value) { m_revisionHasBeenSet = true; m_revision = value; } /** *The revision number of a trace.
*/ inline TraceSummary& WithRevision(int value) { SetRevision(value); return *this;} /** *The matched time stamp of a defined event.
*/ inline const Aws::Utils::DateTime& GetMatchedEventTime() const{ return m_matchedEventTime; } /** *The matched time stamp of a defined event.
*/ inline bool MatchedEventTimeHasBeenSet() const { return m_matchedEventTimeHasBeenSet; } /** *The matched time stamp of a defined event.
*/ inline void SetMatchedEventTime(const Aws::Utils::DateTime& value) { m_matchedEventTimeHasBeenSet = true; m_matchedEventTime = value; } /** *The matched time stamp of a defined event.
*/ inline void SetMatchedEventTime(Aws::Utils::DateTime&& value) { m_matchedEventTimeHasBeenSet = true; m_matchedEventTime = std::move(value); } /** *The matched time stamp of a defined event.
*/ inline TraceSummary& WithMatchedEventTime(const Aws::Utils::DateTime& value) { SetMatchedEventTime(value); return *this;} /** *The matched time stamp of a defined event.
*/ inline TraceSummary& WithMatchedEventTime(Aws::Utils::DateTime&& value) { SetMatchedEventTime(std::move(value)); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; double m_duration; bool m_durationHasBeenSet = false; double m_responseTime; bool m_responseTimeHasBeenSet = false; bool m_hasFault; bool m_hasFaultHasBeenSet = false; bool m_hasError; bool m_hasErrorHasBeenSet = false; bool m_hasThrottle; bool m_hasThrottleHasBeenSet = false; bool m_isPartial; bool m_isPartialHasBeenSet = false; Http m_http; bool m_httpHasBeenSet = false; Aws::Map