/* * 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.Runtime.ExceptionServices; using System.Threading; using System.Threading.Tasks; using System.Collections.Generic; using System.Net; using Amazon.XRay.Model; using Amazon.XRay.Model.Internal.MarshallTransformations; using Amazon.XRay.Internal; using Amazon.Runtime; using Amazon.Runtime.Internal; using Amazon.Runtime.Internal.Auth; using Amazon.Runtime.Internal.Transform; namespace Amazon.XRay { /// /// Implementation for accessing XRay /// /// Amazon Web Services X-Ray provides APIs for managing debug traces and retrieving service /// maps and other data created by processing those traces. /// public partial class AmazonXRayClient : AmazonServiceClient, IAmazonXRay { private static IServiceMetadata serviceMetadata = new AmazonXRayMetadata(); #region Constructors /// /// Constructs AmazonXRayClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// public AmazonXRayClient() : base(FallbackCredentialsFactory.GetCredentials(), new AmazonXRayConfig()) { } /// /// Constructs AmazonXRayClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The region to connect. public AmazonXRayClient(RegionEndpoint region) : base(FallbackCredentialsFactory.GetCredentials(), new AmazonXRayConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonXRayClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The AmazonXRayClient Configuration Object public AmazonXRayClient(AmazonXRayConfig config) : base(FallbackCredentialsFactory.GetCredentials(config), config){} /// /// Constructs AmazonXRayClient with AWS Credentials /// /// AWS Credentials public AmazonXRayClient(AWSCredentials credentials) : this(credentials, new AmazonXRayConfig()) { } /// /// Constructs AmazonXRayClient with AWS Credentials /// /// AWS Credentials /// The region to connect. public AmazonXRayClient(AWSCredentials credentials, RegionEndpoint region) : this(credentials, new AmazonXRayConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonXRayClient with AWS Credentials and an /// AmazonXRayClient Configuration object. /// /// AWS Credentials /// The AmazonXRayClient Configuration Object public AmazonXRayClient(AWSCredentials credentials, AmazonXRayConfig clientConfig) : base(credentials, clientConfig) { } /// /// Constructs AmazonXRayClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key public AmazonXRayClient(string awsAccessKeyId, string awsSecretAccessKey) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonXRayConfig()) { } /// /// Constructs AmazonXRayClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// The region to connect. public AmazonXRayClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonXRayConfig() {RegionEndpoint=region}) { } /// /// Constructs AmazonXRayClient with AWS Access Key ID, AWS Secret Key and an /// AmazonXRayClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// The AmazonXRayClient Configuration Object public AmazonXRayClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonXRayConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, clientConfig) { } /// /// Constructs AmazonXRayClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token public AmazonXRayClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonXRayConfig()) { } /// /// Constructs AmazonXRayClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The region to connect. public AmazonXRayClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonXRayConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonXRayClient with AWS Access Key ID, AWS Secret Key and an /// AmazonXRayClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The AmazonXRayClient Configuration Object public AmazonXRayClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonXRayConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig) { } #endregion #if AWS_ASYNC_ENUMERABLES_API private IXRayPaginatorFactory _paginators; /// /// Paginators for the service /// public IXRayPaginatorFactory Paginators { get { if (this._paginators == null) { this._paginators = new XRayPaginatorFactory(this); } return this._paginators; } } #endif #region Overrides /// /// Creates the signer for the service. /// protected override AbstractAWSSigner CreateSigner() { return new AWS4Signer(); } /// /// Customizes the runtime pipeline. /// /// Runtime pipeline for the current client. protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline) { pipeline.RemoveHandler(); pipeline.AddHandlerAfter(new AmazonXRayEndpointResolver()); } /// /// Capture metadata for the service. /// protected override IServiceMetadata ServiceMetadata { get { return serviceMetadata; } } #endregion #region Dispose /// /// Disposes the service client. /// protected override void Dispose(bool disposing) { base.Dispose(disposing); } #endregion #region BatchGetTraces internal virtual BatchGetTracesResponse BatchGetTraces(BatchGetTracesRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = BatchGetTracesRequestMarshaller.Instance; options.ResponseUnmarshaller = BatchGetTracesResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves a list of traces specified by ID. Each trace is a collection of segment /// documents that originates from a single request. Use GetTraceSummaries /// to get a list of trace IDs. /// /// Container for the necessary parameters to execute the BatchGetTraces service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the BatchGetTraces service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for BatchGetTraces Operation public virtual Task BatchGetTracesAsync(BatchGetTracesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = BatchGetTracesRequestMarshaller.Instance; options.ResponseUnmarshaller = BatchGetTracesResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region CreateGroup internal virtual CreateGroupResponse CreateGroup(CreateGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Creates a group resource with a name and a filter expression. /// /// Container for the necessary parameters to execute the CreateGroup service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the CreateGroup service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for CreateGroup Operation public virtual Task CreateGroupAsync(CreateGroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = CreateGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateGroupResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region CreateSamplingRule internal virtual CreateSamplingRuleResponse CreateSamplingRule(CreateSamplingRuleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateSamplingRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateSamplingRuleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Creates a rule to control sampling behavior for instrumented applications. Services /// retrieve rules with GetSamplingRules, /// and evaluate each rule in ascending order of priority for each request. If /// a rule matches, the service records a trace, borrowing it from the reservoir size. /// After 10 seconds, the service reports back to X-Ray with GetSamplingTargets /// to get updated versions of each in-use rule. The updated rule contains a trace quota /// that the service can use instead of borrowing from the reservoir. /// /// Container for the necessary parameters to execute the CreateSamplingRule service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the CreateSamplingRule service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// You have reached the maximum number of sampling rules. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for CreateSamplingRule Operation public virtual Task CreateSamplingRuleAsync(CreateSamplingRuleRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = CreateSamplingRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateSamplingRuleResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DeleteGroup internal virtual DeleteGroupResponse DeleteGroup(DeleteGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Deletes a group resource. /// /// Container for the necessary parameters to execute the DeleteGroup service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DeleteGroup service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for DeleteGroup Operation public virtual Task DeleteGroupAsync(DeleteGroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteGroupResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DeleteResourcePolicy internal virtual DeleteResourcePolicyResponse DeleteResourcePolicy(DeleteResourcePolicyRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteResourcePolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteResourcePolicyResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Deletes a resource policy from the target Amazon Web Services account. /// /// Container for the necessary parameters to execute the DeleteResourcePolicy service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DeleteResourcePolicy service method, as returned by XRay. /// /// A policy revision id was provided which does not match the latest policy revision. /// This exception is also if a policy revision id of 0 is provided via PutResourcePolicy /// and a policy with the same name already exists. /// /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for DeleteResourcePolicy Operation public virtual Task DeleteResourcePolicyAsync(DeleteResourcePolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteResourcePolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteResourcePolicyResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DeleteSamplingRule internal virtual DeleteSamplingRuleResponse DeleteSamplingRule(DeleteSamplingRuleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteSamplingRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteSamplingRuleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Deletes a sampling rule. /// /// Container for the necessary parameters to execute the DeleteSamplingRule service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DeleteSamplingRule service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for DeleteSamplingRule Operation public virtual Task DeleteSamplingRuleAsync(DeleteSamplingRuleRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteSamplingRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteSamplingRuleResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetEncryptionConfig internal virtual GetEncryptionConfigResponse GetEncryptionConfig(GetEncryptionConfigRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetEncryptionConfigRequestMarshaller.Instance; options.ResponseUnmarshaller = GetEncryptionConfigResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves the current encryption configuration for X-Ray data. /// /// Container for the necessary parameters to execute the GetEncryptionConfig service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetEncryptionConfig service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetEncryptionConfig Operation public virtual Task GetEncryptionConfigAsync(GetEncryptionConfigRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetEncryptionConfigRequestMarshaller.Instance; options.ResponseUnmarshaller = GetEncryptionConfigResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetGroup internal virtual GetGroupResponse GetGroup(GetGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = GetGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves group resource details. /// /// Container for the necessary parameters to execute the GetGroup service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetGroup service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetGroup Operation public virtual Task GetGroupAsync(GetGroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = GetGroupResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetGroups internal virtual GetGroupsResponse GetGroups(GetGroupsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetGroupsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetGroupsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves all active group details. /// /// Container for the necessary parameters to execute the GetGroups service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetGroups service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetGroups Operation public virtual Task GetGroupsAsync(GetGroupsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetGroupsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetGroupsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetInsight internal virtual GetInsightResponse GetInsight(GetInsightRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetInsightRequestMarshaller.Instance; options.ResponseUnmarshaller = GetInsightResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves the summary information of an insight. This includes impact to clients and /// root cause services, the top anomalous services, the category, the state of the insight, /// and the start and end time of the insight. /// /// Container for the necessary parameters to execute the GetInsight service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetInsight service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetInsight Operation public virtual Task GetInsightAsync(GetInsightRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetInsightRequestMarshaller.Instance; options.ResponseUnmarshaller = GetInsightResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetInsightEvents internal virtual GetInsightEventsResponse GetInsightEvents(GetInsightEventsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetInsightEventsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetInsightEventsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// X-Ray reevaluates insights periodically until they're resolved, and records each intermediate /// state as an event. You can review an insight's events in the Impact Timeline on the /// Inspect page in the X-Ray console. /// /// Container for the necessary parameters to execute the GetInsightEvents service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetInsightEvents service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetInsightEvents Operation public virtual Task GetInsightEventsAsync(GetInsightEventsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetInsightEventsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetInsightEventsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetInsightImpactGraph internal virtual GetInsightImpactGraphResponse GetInsightImpactGraph(GetInsightImpactGraphRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetInsightImpactGraphRequestMarshaller.Instance; options.ResponseUnmarshaller = GetInsightImpactGraphResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves a service graph structure filtered by the specified insight. The service /// graph is limited to only structural information. For a complete service graph, use /// this API with the GetServiceGraph API. /// /// Container for the necessary parameters to execute the GetInsightImpactGraph service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetInsightImpactGraph service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetInsightImpactGraph Operation public virtual Task GetInsightImpactGraphAsync(GetInsightImpactGraphRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetInsightImpactGraphRequestMarshaller.Instance; options.ResponseUnmarshaller = GetInsightImpactGraphResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetInsightSummaries internal virtual GetInsightSummariesResponse GetInsightSummaries(GetInsightSummariesRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetInsightSummariesRequestMarshaller.Instance; options.ResponseUnmarshaller = GetInsightSummariesResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves the summaries of all insights in the specified group matching the provided /// filter values. /// /// Container for the necessary parameters to execute the GetInsightSummaries service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetInsightSummaries service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetInsightSummaries Operation public virtual Task GetInsightSummariesAsync(GetInsightSummariesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetInsightSummariesRequestMarshaller.Instance; options.ResponseUnmarshaller = GetInsightSummariesResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetSamplingRules internal virtual GetSamplingRulesResponse GetSamplingRules(GetSamplingRulesRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetSamplingRulesRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSamplingRulesResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves all sampling rules. /// /// Container for the necessary parameters to execute the GetSamplingRules service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetSamplingRules service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetSamplingRules Operation public virtual Task GetSamplingRulesAsync(GetSamplingRulesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetSamplingRulesRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSamplingRulesResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetSamplingStatisticSummaries internal virtual GetSamplingStatisticSummariesResponse GetSamplingStatisticSummaries(GetSamplingStatisticSummariesRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetSamplingStatisticSummariesRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSamplingStatisticSummariesResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves information about recent sampling results for all sampling rules. /// /// Container for the necessary parameters to execute the GetSamplingStatisticSummaries service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetSamplingStatisticSummaries service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetSamplingStatisticSummaries Operation public virtual Task GetSamplingStatisticSummariesAsync(GetSamplingStatisticSummariesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetSamplingStatisticSummariesRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSamplingStatisticSummariesResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetSamplingTargets internal virtual GetSamplingTargetsResponse GetSamplingTargets(GetSamplingTargetsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetSamplingTargetsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSamplingTargetsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Requests a sampling quota for rules that the service is using to sample requests. /// /// Container for the necessary parameters to execute the GetSamplingTargets service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetSamplingTargets service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetSamplingTargets Operation public virtual Task GetSamplingTargetsAsync(GetSamplingTargetsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetSamplingTargetsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSamplingTargetsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetServiceGraph internal virtual GetServiceGraphResponse GetServiceGraph(GetServiceGraphRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetServiceGraphRequestMarshaller.Instance; options.ResponseUnmarshaller = GetServiceGraphResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves a document that describes services that process incoming requests, and downstream /// services that they call as a result. Root services process incoming requests and make /// calls to downstream services. Root services are applications that use the Amazon /// Web Services X-Ray SDK. Downstream services can be other applications, Amazon /// Web Services resources, HTTP web APIs, or SQL databases. /// /// Container for the necessary parameters to execute the GetServiceGraph service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetServiceGraph service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetServiceGraph Operation public virtual Task GetServiceGraphAsync(GetServiceGraphRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetServiceGraphRequestMarshaller.Instance; options.ResponseUnmarshaller = GetServiceGraphResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetTimeSeriesServiceStatistics internal virtual GetTimeSeriesServiceStatisticsResponse GetTimeSeriesServiceStatistics(GetTimeSeriesServiceStatisticsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetTimeSeriesServiceStatisticsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetTimeSeriesServiceStatisticsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Get an aggregation of service statistics defined by a specific time range. /// /// Container for the necessary parameters to execute the GetTimeSeriesServiceStatistics service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetTimeSeriesServiceStatistics service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetTimeSeriesServiceStatistics Operation public virtual Task GetTimeSeriesServiceStatisticsAsync(GetTimeSeriesServiceStatisticsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetTimeSeriesServiceStatisticsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetTimeSeriesServiceStatisticsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetTraceGraph internal virtual GetTraceGraphResponse GetTraceGraph(GetTraceGraphRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetTraceGraphRequestMarshaller.Instance; options.ResponseUnmarshaller = GetTraceGraphResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves a service graph for one or more specific trace IDs. /// /// Container for the necessary parameters to execute the GetTraceGraph service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetTraceGraph service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetTraceGraph Operation public virtual Task GetTraceGraphAsync(GetTraceGraphRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetTraceGraphRequestMarshaller.Instance; options.ResponseUnmarshaller = GetTraceGraphResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetTraceSummaries internal virtual GetTraceSummariesResponse GetTraceSummaries(GetTraceSummariesRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetTraceSummariesRequestMarshaller.Instance; options.ResponseUnmarshaller = GetTraceSummariesResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves IDs and annotations for traces available for a specified time frame using /// an optional filter. To get the full traces, pass the trace IDs to BatchGetTraces. /// /// /// /// A filter expression can target traced requests that hit specific service nodes or /// edges, have errors, or come from a known user. For example, the following filter expression /// targets traces that pass through api.example.com: /// /// /// /// service("api.example.com") /// /// /// /// This filter expression finds traces that have an annotation named account /// with the value 12345: /// /// /// /// annotation.account = "12345" /// /// /// /// For a full list of indexed fields and keywords that you can use in filter expressions, /// see Using /// Filter Expressions in the Amazon Web Services X-Ray Developer Guide. /// /// /// Container for the necessary parameters to execute the GetTraceSummaries service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetTraceSummaries service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for GetTraceSummaries Operation public virtual Task GetTraceSummariesAsync(GetTraceSummariesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetTraceSummariesRequestMarshaller.Instance; options.ResponseUnmarshaller = GetTraceSummariesResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListResourcePolicies internal virtual ListResourcePoliciesResponse ListResourcePolicies(ListResourcePoliciesRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListResourcePoliciesRequestMarshaller.Instance; options.ResponseUnmarshaller = ListResourcePoliciesResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Returns the list of resource policies in the target Amazon Web Services account. /// /// Container for the necessary parameters to execute the ListResourcePolicies service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListResourcePolicies service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for ListResourcePolicies Operation public virtual Task ListResourcePoliciesAsync(ListResourcePoliciesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListResourcePoliciesRequestMarshaller.Instance; options.ResponseUnmarshaller = ListResourcePoliciesResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListTagsForResource internal virtual ListTagsForResourceResponse ListTagsForResource(ListTagsForResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Returns a list of tags that are applied to the specified Amazon Web Services X-Ray /// group or sampling rule. /// /// Container for the necessary parameters to execute the ListTagsForResource service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListTagsForResource service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The resource was not found. Verify that the name or Amazon Resource Name (ARN) of /// the resource is correct. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for ListTagsForResource Operation public virtual Task ListTagsForResourceAsync(ListTagsForResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region PutEncryptionConfig internal virtual PutEncryptionConfigResponse PutEncryptionConfig(PutEncryptionConfigRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = PutEncryptionConfigRequestMarshaller.Instance; options.ResponseUnmarshaller = PutEncryptionConfigResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Updates the encryption configuration for X-Ray data. /// /// Container for the necessary parameters to execute the PutEncryptionConfig service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the PutEncryptionConfig service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for PutEncryptionConfig Operation public virtual Task PutEncryptionConfigAsync(PutEncryptionConfigRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = PutEncryptionConfigRequestMarshaller.Instance; options.ResponseUnmarshaller = PutEncryptionConfigResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region PutResourcePolicy internal virtual PutResourcePolicyResponse PutResourcePolicy(PutResourcePolicyRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = PutResourcePolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = PutResourcePolicyResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Sets the resource policy to grant one or more Amazon Web Services services and accounts /// permissions to access X-Ray. Each resource policy will be associated with a specific /// Amazon Web Services account. Each Amazon Web Services account can have a maximum of /// 5 resource policies, and each policy name must be unique within that account. The /// maximum size of each resource policy is 5KB. /// /// Container for the necessary parameters to execute the PutResourcePolicy service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the PutResourcePolicy service method, as returned by XRay. /// /// A policy revision id was provided which does not match the latest policy revision. /// This exception is also if a policy revision id of 0 is provided via PutResourcePolicy /// and a policy with the same name already exists. /// /// /// The provided resource policy would prevent the caller of this request from calling /// PutResourcePolicy in the future. /// /// /// Invalid policy document provided in request. /// /// /// Exceeded the maximum number of resource policies for a target Amazon Web Services /// account. /// /// /// Exceeded the maximum size for a resource policy. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for PutResourcePolicy Operation public virtual Task PutResourcePolicyAsync(PutResourcePolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = PutResourcePolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = PutResourcePolicyResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region PutTelemetryRecords internal virtual PutTelemetryRecordsResponse PutTelemetryRecords(PutTelemetryRecordsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = PutTelemetryRecordsRequestMarshaller.Instance; options.ResponseUnmarshaller = PutTelemetryRecordsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Used by the Amazon Web Services X-Ray daemon to upload telemetry. /// /// Container for the necessary parameters to execute the PutTelemetryRecords service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the PutTelemetryRecords service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for PutTelemetryRecords Operation public virtual Task PutTelemetryRecordsAsync(PutTelemetryRecordsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = PutTelemetryRecordsRequestMarshaller.Instance; options.ResponseUnmarshaller = PutTelemetryRecordsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region PutTraceSegments internal virtual PutTraceSegmentsResponse PutTraceSegments(PutTraceSegmentsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = PutTraceSegmentsRequestMarshaller.Instance; options.ResponseUnmarshaller = PutTraceSegmentsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Uploads segment documents to Amazon Web Services X-Ray. The X-Ray /// SDK generates segment documents and sends them to the X-Ray daemon, which uploads /// them in batches. A segment document can be a completed segment, an in-progress segment, /// or an array of subsegments. /// /// /// /// Segments must include the following fields. For the full segment document schema, /// see Amazon /// Web Services X-Ray Segment Documents in the Amazon Web Services X-Ray Developer /// Guide. /// ///

Required segment document fields /// ///

  • /// /// name - The name of the service that handled the request. /// ///
  • /// /// id - A 64-bit identifier for the segment, unique among segments in the /// same trace, in 16 hexadecimal digits. /// ///
  • /// /// trace_id - A unique identifier that connects all segments and subsegments /// originating from a single client request. /// ///
  • /// /// start_time - Time the segment or subsegment was created, in floating /// point seconds in epoch time, accurate to milliseconds. For example, 1480615200.010 /// or 1.480615200010E9. /// ///
  • /// /// end_time - Time the segment or subsegment was closed. For example, 1480615200.090 /// or 1.480615200090E9. Specify either an end_time or in_progress. /// ///
  • /// /// in_progress - Set to true instead of specifying an end_time /// to record that a segment has been started, but is not complete. Send an in-progress /// segment when your application receives a request that will take a long time to serve, /// to trace that the request was received. When the response is sent, send the complete /// segment to overwrite the in-progress segment. /// ///
/// /// A trace_id consists of three numbers separated by hyphens. For example, /// 1-58406520-a006649127e371903a2de979. This includes: /// ///

Trace ID Format /// ///

  • /// /// The version number, for instance, 1. /// ///
  • /// /// The time of the original request, in Unix epoch time, in 8 hexadecimal digits. For /// example, 10:00AM December 2nd, 2016 PST in epoch time is 1480615200 seconds, /// or 58406520 in hexadecimal. /// ///
  • /// /// A 96-bit identifier for the trace, globally unique, in 24 hexadecimal digits. /// ///
///
/// Container for the necessary parameters to execute the PutTraceSegments service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the PutTraceSegments service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for PutTraceSegments Operation public virtual Task PutTraceSegmentsAsync(PutTraceSegmentsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = PutTraceSegmentsRequestMarshaller.Instance; options.ResponseUnmarshaller = PutTraceSegmentsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region TagResource internal virtual TagResourceResponse TagResource(TagResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = TagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Applies tags to an existing Amazon Web Services X-Ray group or sampling rule. /// /// Container for the necessary parameters to execute the TagResource service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the TagResource service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The resource was not found. Verify that the name or Amazon Resource Name (ARN) of /// the resource is correct. /// /// /// The request exceeds the maximum number of requests per second. /// /// /// You have exceeded the maximum number of tags you can apply to this resource. /// /// REST API Reference for TagResource Operation public virtual Task TagResourceAsync(TagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = TagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UntagResource internal virtual UntagResourceResponse UntagResource(UntagResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UntagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Removes tags from an Amazon Web Services X-Ray group or sampling rule. You cannot /// edit or delete system tags (those with an aws: prefix). /// /// Container for the necessary parameters to execute the UntagResource service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UntagResource service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The resource was not found. Verify that the name or Amazon Resource Name (ARN) of /// the resource is correct. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for UntagResource Operation public virtual Task UntagResourceAsync(UntagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UntagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateGroup internal virtual UpdateGroupResponse UpdateGroup(UpdateGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Updates a group resource. /// /// Container for the necessary parameters to execute the UpdateGroup service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateGroup service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for UpdateGroup Operation public virtual Task UpdateGroupAsync(UpdateGroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateGroupResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateSamplingRule internal virtual UpdateSamplingRuleResponse UpdateSamplingRule(UpdateSamplingRuleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateSamplingRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateSamplingRuleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Modifies a sampling rule's configuration. /// /// Container for the necessary parameters to execute the UpdateSamplingRule service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateSamplingRule service method, as returned by XRay. /// /// The request is missing required parameters or has invalid parameters. /// /// /// The request exceeds the maximum number of requests per second. /// /// REST API Reference for UpdateSamplingRule Operation public virtual Task UpdateSamplingRuleAsync(UpdateSamplingRuleRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateSamplingRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateSamplingRuleResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion } }