/* * 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 rum-2018-05-10.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.CloudWatchRUM.Model { /// /// This structure contains much of the configuration data for the app monitor. /// public partial class AppMonitorConfiguration { private bool? _allowCookies; private bool? _enableXRay; private List _excludedPages = new List(); private List _favoritePages = new List(); private string _guestRoleArn; private string _identityPoolId; private List _includedPages = new List(); private double? _sessionSampleRate; private List _telemetries = new List(); /// /// Gets and sets the property AllowCookies. /// /// If you set this to true, the RUM web client sets two cookies, a session /// cookie and a user cookie. The cookies allow the RUM web client to collect data relating /// to the number of users an application has and the behavior of the application across /// a sequence of events. Cookies are stored in the top-level domain of the current page. /// /// public bool AllowCookies { get { return this._allowCookies.GetValueOrDefault(); } set { this._allowCookies = value; } } // Check to see if AllowCookies property is set internal bool IsSetAllowCookies() { return this._allowCookies.HasValue; } /// /// Gets and sets the property EnableXRay. /// /// If you set this to true, RUM enables X-Ray tracing for the user sessions /// that RUM samples. RUM adds an X-Ray trace header to allowed HTTP requests. It also /// records an X-Ray segment for allowed HTTP requests. You can see traces and segments /// from these user sessions in the X-Ray console and the CloudWatch ServiceLens console. /// For more information, see What /// is X-Ray? /// /// public bool EnableXRay { get { return this._enableXRay.GetValueOrDefault(); } set { this._enableXRay = value; } } // Check to see if EnableXRay property is set internal bool IsSetEnableXRay() { return this._enableXRay.HasValue; } /// /// Gets and sets the property ExcludedPages. /// /// A list of URLs in your website or application to exclude from RUM data collection. /// /// /// /// You can't include both ExcludedPages and IncludedPages in /// the same operation. /// /// [AWSProperty(Min=0, Max=50)] public List ExcludedPages { get { return this._excludedPages; } set { this._excludedPages = value; } } // Check to see if ExcludedPages property is set internal bool IsSetExcludedPages() { return this._excludedPages != null && this._excludedPages.Count > 0; } /// /// Gets and sets the property FavoritePages. /// /// A list of pages in your application that are to be displayed with a "favorite" icon /// in the CloudWatch RUM console. /// /// [AWSProperty(Min=0, Max=50)] public List FavoritePages { get { return this._favoritePages; } set { this._favoritePages = value; } } // Check to see if FavoritePages property is set internal bool IsSetFavoritePages() { return this._favoritePages != null && this._favoritePages.Count > 0; } /// /// Gets and sets the property GuestRoleArn. /// /// The ARN of the guest IAM role that is attached to the Amazon Cognito identity pool /// that is used to authorize the sending of data to RUM. /// /// public string GuestRoleArn { get { return this._guestRoleArn; } set { this._guestRoleArn = value; } } // Check to see if GuestRoleArn property is set internal bool IsSetGuestRoleArn() { return this._guestRoleArn != null; } /// /// Gets and sets the property IdentityPoolId. /// /// The ID of the Amazon Cognito identity pool that is used to authorize the sending of /// data to RUM. /// /// [AWSProperty(Min=1, Max=55)] public string IdentityPoolId { get { return this._identityPoolId; } set { this._identityPoolId = value; } } // Check to see if IdentityPoolId property is set internal bool IsSetIdentityPoolId() { return this._identityPoolId != null; } /// /// Gets and sets the property IncludedPages. /// /// If this app monitor is to collect data from only certain pages in your application, /// this structure lists those pages. /// /// /// /// You can't include both ExcludedPages and IncludedPages in /// the same operation. /// /// [AWSProperty(Min=0, Max=50)] public List IncludedPages { get { return this._includedPages; } set { this._includedPages = value; } } // Check to see if IncludedPages property is set internal bool IsSetIncludedPages() { return this._includedPages != null && this._includedPages.Count > 0; } /// /// Gets and sets the property SessionSampleRate. /// /// Specifies the portion of user sessions to use for RUM data collection. Choosing a /// higher portion gives you more data but also incurs more costs. /// /// /// /// The range for this value is 0 to 1 inclusive. Setting this to 1 means that 100% of /// user sessions are sampled, and setting it to 0.1 means that 10% of user sessions are /// sampled. /// /// /// /// If you omit this parameter, the default of 0.1 is used, and 10% of sessions will be /// sampled. /// /// [AWSProperty(Min=0, Max=1)] public double SessionSampleRate { get { return this._sessionSampleRate.GetValueOrDefault(); } set { this._sessionSampleRate = value; } } // Check to see if SessionSampleRate property is set internal bool IsSetSessionSampleRate() { return this._sessionSampleRate.HasValue; } /// /// Gets and sets the property Telemetries. /// /// An array that lists the types of telemetry data that this app monitor is to collect. /// ///
  • /// /// errors indicates that RUM collects data about unhandled JavaScript errors /// raised by your application. /// ///
  • /// /// performance indicates that RUM collects performance data about how your /// application and its resources are loaded and rendered. This includes Core Web Vitals. /// ///
  • /// /// http indicates that RUM collects data about HTTP errors thrown by your /// application. /// ///
///
public List Telemetries { get { return this._telemetries; } set { this._telemetries = value; } } // Check to see if Telemetries property is set internal bool IsSetTelemetries() { return this._telemetries != null && this._telemetries.Count > 0; } } }