/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the xray-2016-04-12.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.XRay.Model
{
///
/// Metadata generated from the segment documents in a trace.
///
public partial class TraceSummary
{
private Dictionary> _annotations = new Dictionary>();
private List _availabilityZones = new List();
private double? _duration;
private ServiceId _entryPoint;
private List _errorRootCauses = new List();
private List _faultRootCauses = new List();
private bool? _hasError;
private bool? _hasFault;
private bool? _hasThrottle;
private Http _http;
private string _id;
private List _instanceIds = new List();
private bool? _isPartial;
private DateTime? _matchedEventTime;
private List _resourceARNs = new List();
private double? _responseTime;
private List _responseTimeRootCauses = new List();
private int? _revision;
private List _serviceIds = new List();
private List _users = new List();
///
/// Gets and sets the property Annotations.
///
/// Annotations from the trace's segment documents.
///
///
public Dictionary> Annotations
{
get { return this._annotations; }
set { this._annotations = value; }
}
// Check to see if Annotations property is set
internal bool IsSetAnnotations()
{
return this._annotations != null && this._annotations.Count > 0;
}
///
/// Gets and sets the property AvailabilityZones.
///
/// A list of Availability Zones for any zone corresponding to the trace segments.
///
///
public List AvailabilityZones
{
get { return this._availabilityZones; }
set { this._availabilityZones = value; }
}
// Check to see if AvailabilityZones property is set
internal bool IsSetAvailabilityZones()
{
return this._availabilityZones != null && this._availabilityZones.Count > 0;
}
///
/// Gets and sets the property 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.
///
///
public double Duration
{
get { return this._duration.GetValueOrDefault(); }
set { this._duration = value; }
}
// Check to see if Duration property is set
internal bool IsSetDuration()
{
return this._duration.HasValue;
}
///
/// Gets and sets the property EntryPoint.
///
/// The root of a trace.
///
///
public ServiceId EntryPoint
{
get { return this._entryPoint; }
set { this._entryPoint = value; }
}
// Check to see if EntryPoint property is set
internal bool IsSetEntryPoint()
{
return this._entryPoint != null;
}
///
/// Gets and sets the property ErrorRootCauses.
///
/// A collection of ErrorRootCause structures corresponding to the trace segments.
///
///
public List ErrorRootCauses
{
get { return this._errorRootCauses; }
set { this._errorRootCauses = value; }
}
// Check to see if ErrorRootCauses property is set
internal bool IsSetErrorRootCauses()
{
return this._errorRootCauses != null && this._errorRootCauses.Count > 0;
}
///
/// Gets and sets the property FaultRootCauses.
///
/// A collection of FaultRootCause structures corresponding to the trace segments.
///
///
public List FaultRootCauses
{
get { return this._faultRootCauses; }
set { this._faultRootCauses = value; }
}
// Check to see if FaultRootCauses property is set
internal bool IsSetFaultRootCauses()
{
return this._faultRootCauses != null && this._faultRootCauses.Count > 0;
}
///
/// Gets and sets the property HasError.
///
/// The root segment document has a 400 series error.
///
///
public bool HasError
{
get { return this._hasError.GetValueOrDefault(); }
set { this._hasError = value; }
}
// Check to see if HasError property is set
internal bool IsSetHasError()
{
return this._hasError.HasValue;
}
///
/// Gets and sets the property HasFault.
///
/// The root segment document has a 500 series error.
///
///
public bool HasFault
{
get { return this._hasFault.GetValueOrDefault(); }
set { this._hasFault = value; }
}
// Check to see if HasFault property is set
internal bool IsSetHasFault()
{
return this._hasFault.HasValue;
}
///
/// Gets and sets the property HasThrottle.
///
/// One or more of the segment documents has a 429 throttling error.
///
///
public bool HasThrottle
{
get { return this._hasThrottle.GetValueOrDefault(); }
set { this._hasThrottle = value; }
}
// Check to see if HasThrottle property is set
internal bool IsSetHasThrottle()
{
return this._hasThrottle.HasValue;
}
///
/// Gets and sets the property Http.
///
/// Information about the HTTP request served by the trace.
///
///
public Http Http
{
get { return this._http; }
set { this._http = value; }
}
// Check to see if Http property is set
internal bool IsSetHttp()
{
return this._http != null;
}
///
/// Gets and sets the property Id.
///
/// The unique identifier for the request that generated the trace's segments and subsegments.
///
///
[AWSProperty(Min=1, Max=35)]
public string Id
{
get { return this._id; }
set { this._id = value; }
}
// Check to see if Id property is set
internal bool IsSetId()
{
return this._id != null;
}
///
/// Gets and sets the property InstanceIds.
///
/// A list of EC2 instance IDs for any instance corresponding to the trace segments.
///
///
public List InstanceIds
{
get { return this._instanceIds; }
set { this._instanceIds = value; }
}
// Check to see if InstanceIds property is set
internal bool IsSetInstanceIds()
{
return this._instanceIds != null && this._instanceIds.Count > 0;
}
///
/// Gets and sets the property IsPartial.
///
/// One or more of the segment documents is in progress.
///
///
public bool IsPartial
{
get { return this._isPartial.GetValueOrDefault(); }
set { this._isPartial = value; }
}
// Check to see if IsPartial property is set
internal bool IsSetIsPartial()
{
return this._isPartial.HasValue;
}
///
/// Gets and sets the property MatchedEventTime.
///
/// The matched time stamp of a defined event.
///
///
public DateTime MatchedEventTime
{
get { return this._matchedEventTime.GetValueOrDefault(); }
set { this._matchedEventTime = value; }
}
// Check to see if MatchedEventTime property is set
internal bool IsSetMatchedEventTime()
{
return this._matchedEventTime.HasValue;
}
///
/// Gets and sets the property ResourceARNs.
///
/// A list of resource ARNs for any resource corresponding to the trace segments.
///
///
public List ResourceARNs
{
get { return this._resourceARNs; }
set { this._resourceARNs = value; }
}
// Check to see if ResourceARNs property is set
internal bool IsSetResourceARNs()
{
return this._resourceARNs != null && this._resourceARNs.Count > 0;
}
///
/// Gets and sets the property 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.
///
///
public double ResponseTime
{
get { return this._responseTime.GetValueOrDefault(); }
set { this._responseTime = value; }
}
// Check to see if ResponseTime property is set
internal bool IsSetResponseTime()
{
return this._responseTime.HasValue;
}
///
/// Gets and sets the property ResponseTimeRootCauses.
///
/// A collection of ResponseTimeRootCause structures corresponding to the trace segments.
///
///
public List ResponseTimeRootCauses
{
get { return this._responseTimeRootCauses; }
set { this._responseTimeRootCauses = value; }
}
// Check to see if ResponseTimeRootCauses property is set
internal bool IsSetResponseTimeRootCauses()
{
return this._responseTimeRootCauses != null && this._responseTimeRootCauses.Count > 0;
}
///
/// Gets and sets the property Revision.
///
/// The revision number of a trace.
///
///
public int Revision
{
get { return this._revision.GetValueOrDefault(); }
set { this._revision = value; }
}
// Check to see if Revision property is set
internal bool IsSetRevision()
{
return this._revision.HasValue;
}
///
/// Gets and sets the property ServiceIds.
///
/// Service IDs from the trace's segment documents.
///
///
public List ServiceIds
{
get { return this._serviceIds; }
set { this._serviceIds = value; }
}
// Check to see if ServiceIds property is set
internal bool IsSetServiceIds()
{
return this._serviceIds != null && this._serviceIds.Count > 0;
}
///
/// Gets and sets the property Users.
///
/// Users from the trace's segment documents.
///
///
public List Users
{
get { return this._users; }
set { this._users = value; }
}
// Check to see if Users property is set
internal bool IsSetUsers()
{
return this._users != null && this._users.Count > 0;
}
}
}