All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.cloudwatchrum.model.AppMonitorConfiguration Maven / Gradle / Ivy

Go to download

The AWS Java SDK for CloudWatch RUM module holds the client classes that are used for communicating with CloudWatch RUM Service

There is a newer version: 1.12.778
Show newest version
/*
 * Copyright 2019-2024 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.
 */
package com.amazonaws.services.cloudwatchrum.model;

import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;

/**
 * 

* This structure contains much of the configuration data for the app monitor. *

* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AppMonitorConfiguration implements Serializable, Cloneable, StructuredPojo { /** *

* 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. *

*/ private Boolean allowCookies; /** *

* 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? *

*/ private Boolean enableXRay; /** *

* 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. *

*/ private java.util.List excludedPages; /** *

* A list of pages in your application that are to be displayed with a "favorite" icon in the CloudWatch RUM * console. *

*/ private java.util.List favoritePages; /** *

* 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. *

* *

* It is possible that an app monitor does not have a value for GuestRoleArn. For example, this can * happen when you use the console to create an app monitor and you allow CloudWatch RUM to create a new identity * pool for Authorization. In this case, GuestRoleArn is not present in the GetAppMonitor * response because it is not stored by the service. *

*

* If this issue affects you, you can take one of the following steps: *

*
    *
  • *

    * Use the Cloud Development Kit (CDK) to create an identity pool and the associated IAM role, and use that for your * app monitor. *

    *
  • *
  • *

    * Make a separate GetIdentityPoolRoles call to Amazon Cognito to retrieve the GuestRoleArn. *

    *
  • *
*
*/ private String guestRoleArn; /** *

* The ID of the Amazon Cognito identity pool that is used to authorize the sending of data to RUM. *

*/ private String identityPoolId; /** *

* 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. *

*/ private java.util.List includedPages; /** *

* 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. *

*/ private Double sessionSampleRate; /** *

* 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. *

    *
  • *
*/ private java.util.List telemetries; /** *

* 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. *

* * @param 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 void setAllowCookies(Boolean allowCookies) { this.allowCookies = 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. *

* * @return 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 Boolean getAllowCookies() { return this.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. *

* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public AppMonitorConfiguration withAllowCookies(Boolean allowCookies) { setAllowCookies(allowCookies); return this; } /** *

* 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. *

* * @return 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 Boolean isAllowCookies() { return this.allowCookies; } /** *

* 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? *

* * @param 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 void setEnableXRay(Boolean enableXRay) { this.enableXRay = 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? *

* * @return 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 Boolean getEnableXRay() { return this.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? *

* * @param 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? * @return Returns a reference to this object so that method calls can be chained together. */ public AppMonitorConfiguration withEnableXRay(Boolean enableXRay) { setEnableXRay(enableXRay); return this; } /** *

* 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? *

* * @return 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 Boolean isEnableXRay() { return this.enableXRay; } /** *

* 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. *

* * @return 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. */ public java.util.List getExcludedPages() { return 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. *

* * @param 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. */ public void setExcludedPages(java.util.Collection excludedPages) { if (excludedPages == null) { this.excludedPages = null; return; } this.excludedPages = new java.util.ArrayList(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. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setExcludedPages(java.util.Collection)} or {@link #withExcludedPages(java.util.Collection)} if you want * to override the existing values. *

* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public AppMonitorConfiguration withExcludedPages(String... excludedPages) { if (this.excludedPages == null) { setExcludedPages(new java.util.ArrayList(excludedPages.length)); } for (String ele : excludedPages) { this.excludedPages.add(ele); } return this; } /** *

* 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. *

* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public AppMonitorConfiguration withExcludedPages(java.util.Collection excludedPages) { setExcludedPages(excludedPages); return this; } /** *

* A list of pages in your application that are to be displayed with a "favorite" icon in the CloudWatch RUM * console. *

* * @return A list of pages in your application that are to be displayed with a "favorite" icon in the CloudWatch RUM * console. */ public java.util.List getFavoritePages() { return favoritePages; } /** *

* A list of pages in your application that are to be displayed with a "favorite" icon in the CloudWatch RUM * console. *

* * @param favoritePages * A list of pages in your application that are to be displayed with a "favorite" icon in the CloudWatch RUM * console. */ public void setFavoritePages(java.util.Collection favoritePages) { if (favoritePages == null) { this.favoritePages = null; return; } this.favoritePages = new java.util.ArrayList(favoritePages); } /** *

* A list of pages in your application that are to be displayed with a "favorite" icon in the CloudWatch RUM * console. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setFavoritePages(java.util.Collection)} or {@link #withFavoritePages(java.util.Collection)} if you want * to override the existing values. *

* * @param favoritePages * A list of pages in your application that are to be displayed with a "favorite" icon in the CloudWatch RUM * console. * @return Returns a reference to this object so that method calls can be chained together. */ public AppMonitorConfiguration withFavoritePages(String... favoritePages) { if (this.favoritePages == null) { setFavoritePages(new java.util.ArrayList(favoritePages.length)); } for (String ele : favoritePages) { this.favoritePages.add(ele); } return this; } /** *

* A list of pages in your application that are to be displayed with a "favorite" icon in the CloudWatch RUM * console. *

* * @param favoritePages * A list of pages in your application that are to be displayed with a "favorite" icon in the CloudWatch RUM * console. * @return Returns a reference to this object so that method calls can be chained together. */ public AppMonitorConfiguration withFavoritePages(java.util.Collection favoritePages) { setFavoritePages(favoritePages); return this; } /** *

* 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. *

* *

* It is possible that an app monitor does not have a value for GuestRoleArn. For example, this can * happen when you use the console to create an app monitor and you allow CloudWatch RUM to create a new identity * pool for Authorization. In this case, GuestRoleArn is not present in the GetAppMonitor * response because it is not stored by the service. *

*

* If this issue affects you, you can take one of the following steps: *

*
    *
  • *

    * Use the Cloud Development Kit (CDK) to create an identity pool and the associated IAM role, and use that for your * app monitor. *

    *
  • *
  • *

    * Make a separate GetIdentityPoolRoles call to Amazon Cognito to retrieve the GuestRoleArn. *

    *
  • *
*
* * @param 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.

*

* It is possible that an app monitor does not have a value for GuestRoleArn. For example, this * can happen when you use the console to create an app monitor and you allow CloudWatch RUM to create a new * identity pool for Authorization. In this case, GuestRoleArn is not present in the GetAppMonitor response because it is not stored by the service. *

*

* If this issue affects you, you can take one of the following steps: *

*
    *
  • *

    * Use the Cloud Development Kit (CDK) to create an identity pool and the associated IAM role, and use that * for your app monitor. *

    *
  • *
  • *

    * Make a separate GetIdentityPoolRoles call to Amazon Cognito to retrieve the GuestRoleArn. *

    *
  • *
*/ public void setGuestRoleArn(String guestRoleArn) { this.guestRoleArn = 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. *

* *

* It is possible that an app monitor does not have a value for GuestRoleArn. For example, this can * happen when you use the console to create an app monitor and you allow CloudWatch RUM to create a new identity * pool for Authorization. In this case, GuestRoleArn is not present in the GetAppMonitor * response because it is not stored by the service. *

*

* If this issue affects you, you can take one of the following steps: *

*
    *
  • *

    * Use the Cloud Development Kit (CDK) to create an identity pool and the associated IAM role, and use that for your * app monitor. *

    *
  • *
  • *

    * Make a separate GetIdentityPoolRoles call to Amazon Cognito to retrieve the GuestRoleArn. *

    *
  • *
*
* * @return 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.

*

* It is possible that an app monitor does not have a value for GuestRoleArn. For example, this * can happen when you use the console to create an app monitor and you allow CloudWatch RUM to create a new * identity pool for Authorization. In this case, GuestRoleArn is not present in the GetAppMonitor response because it is not stored by the service. *

*

* If this issue affects you, you can take one of the following steps: *

*
    *
  • *

    * Use the Cloud Development Kit (CDK) to create an identity pool and the associated IAM role, and use that * for your app monitor. *

    *
  • *
  • *

    * Make a separate GetIdentityPoolRoles call to Amazon Cognito to retrieve the GuestRoleArn. *

    *
  • *
*/ public String getGuestRoleArn() { return this.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. *

* *

* It is possible that an app monitor does not have a value for GuestRoleArn. For example, this can * happen when you use the console to create an app monitor and you allow CloudWatch RUM to create a new identity * pool for Authorization. In this case, GuestRoleArn is not present in the GetAppMonitor * response because it is not stored by the service. *

*

* If this issue affects you, you can take one of the following steps: *

*
    *
  • *

    * Use the Cloud Development Kit (CDK) to create an identity pool and the associated IAM role, and use that for your * app monitor. *

    *
  • *
  • *

    * Make a separate GetIdentityPoolRoles call to Amazon Cognito to retrieve the GuestRoleArn. *

    *
  • *
*
* * @param 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.

*

* It is possible that an app monitor does not have a value for GuestRoleArn. For example, this * can happen when you use the console to create an app monitor and you allow CloudWatch RUM to create a new * identity pool for Authorization. In this case, GuestRoleArn is not present in the GetAppMonitor response because it is not stored by the service. *

*

* If this issue affects you, you can take one of the following steps: *

*
    *
  • *

    * Use the Cloud Development Kit (CDK) to create an identity pool and the associated IAM role, and use that * for your app monitor. *

    *
  • *
  • *

    * Make a separate GetIdentityPoolRoles call to Amazon Cognito to retrieve the GuestRoleArn. *

    *
  • *
* @return Returns a reference to this object so that method calls can be chained together. */ public AppMonitorConfiguration withGuestRoleArn(String guestRoleArn) { setGuestRoleArn(guestRoleArn); return this; } /** *

* The ID of the Amazon Cognito identity pool that is used to authorize the sending of data to RUM. *

* * @param identityPoolId * The ID of the Amazon Cognito identity pool that is used to authorize the sending of data to RUM. */ public void setIdentityPoolId(String identityPoolId) { this.identityPoolId = identityPoolId; } /** *

* The ID of the Amazon Cognito identity pool that is used to authorize the sending of data to RUM. *

* * @return The ID of the Amazon Cognito identity pool that is used to authorize the sending of data to RUM. */ public String getIdentityPoolId() { return this.identityPoolId; } /** *

* The ID of the Amazon Cognito identity pool that is used to authorize the sending of data to RUM. *

* * @param identityPoolId * The ID of the Amazon Cognito identity pool that is used to authorize the sending of data to RUM. * @return Returns a reference to this object so that method calls can be chained together. */ public AppMonitorConfiguration withIdentityPoolId(String identityPoolId) { setIdentityPoolId(identityPoolId); return this; } /** *

* 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. *

* * @return 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. */ public java.util.List getIncludedPages() { return 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. *

* * @param 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. */ public void setIncludedPages(java.util.Collection includedPages) { if (includedPages == null) { this.includedPages = null; return; } this.includedPages = new java.util.ArrayList(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. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setIncludedPages(java.util.Collection)} or {@link #withIncludedPages(java.util.Collection)} if you want * to override the existing values. *

* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public AppMonitorConfiguration withIncludedPages(String... includedPages) { if (this.includedPages == null) { setIncludedPages(new java.util.ArrayList(includedPages.length)); } for (String ele : includedPages) { this.includedPages.add(ele); } return this; } /** *

* 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. *

* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public AppMonitorConfiguration withIncludedPages(java.util.Collection includedPages) { setIncludedPages(includedPages); return this; } /** *

* 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. *

* * @param 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. */ public void setSessionSampleRate(Double sessionSampleRate) { this.sessionSampleRate = 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. *

* * @return 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. */ public Double getSessionSampleRate() { return this.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. *

* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public AppMonitorConfiguration withSessionSampleRate(Double sessionSampleRate) { setSessionSampleRate(sessionSampleRate); return this; } /** *

* 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. *

    *
  • *
* * @return 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. *

    *
  • * @see Telemetry */ public java.util.List getTelemetries() { return 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. *

      *
    • *
    * * @param 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. *

      *
    • * @see Telemetry */ public void setTelemetries(java.util.Collection telemetries) { if (telemetries == null) { this.telemetries = null; return; } this.telemetries = new java.util.ArrayList(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. *

        *
      • *
      *

      * NOTE: This method appends the values to the existing list (if any). Use * {@link #setTelemetries(java.util.Collection)} or {@link #withTelemetries(java.util.Collection)} if you want to * override the existing values. *

      * * @param 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. *

        *
      • * @return Returns a reference to this object so that method calls can be chained together. * @see Telemetry */ public AppMonitorConfiguration withTelemetries(String... telemetries) { if (this.telemetries == null) { setTelemetries(new java.util.ArrayList(telemetries.length)); } for (String ele : telemetries) { this.telemetries.add(ele); } return this; } /** *

        * 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. *

          *
        • *
        * * @param 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. *

          *
        • * @return Returns a reference to this object so that method calls can be chained together. * @see Telemetry */ public AppMonitorConfiguration withTelemetries(java.util.Collection telemetries) { setTelemetries(telemetries); return this; } /** *

          * 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. *

            *
          • *
          * * @param 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. *

            *
          • * @return Returns a reference to this object so that method calls can be chained together. * @see Telemetry */ public AppMonitorConfiguration withTelemetries(Telemetry... telemetries) { java.util.ArrayList telemetriesCopy = new java.util.ArrayList(telemetries.length); for (Telemetry value : telemetries) { telemetriesCopy.add(value.toString()); } if (getTelemetries() == null) { setTelemetries(telemetriesCopy); } else { getTelemetries().addAll(telemetriesCopy); } return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getAllowCookies() != null) sb.append("AllowCookies: ").append(getAllowCookies()).append(","); if (getEnableXRay() != null) sb.append("EnableXRay: ").append(getEnableXRay()).append(","); if (getExcludedPages() != null) sb.append("ExcludedPages: ").append(getExcludedPages()).append(","); if (getFavoritePages() != null) sb.append("FavoritePages: ").append(getFavoritePages()).append(","); if (getGuestRoleArn() != null) sb.append("GuestRoleArn: ").append(getGuestRoleArn()).append(","); if (getIdentityPoolId() != null) sb.append("IdentityPoolId: ").append(getIdentityPoolId()).append(","); if (getIncludedPages() != null) sb.append("IncludedPages: ").append(getIncludedPages()).append(","); if (getSessionSampleRate() != null) sb.append("SessionSampleRate: ").append(getSessionSampleRate()).append(","); if (getTelemetries() != null) sb.append("Telemetries: ").append(getTelemetries()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof AppMonitorConfiguration == false) return false; AppMonitorConfiguration other = (AppMonitorConfiguration) obj; if (other.getAllowCookies() == null ^ this.getAllowCookies() == null) return false; if (other.getAllowCookies() != null && other.getAllowCookies().equals(this.getAllowCookies()) == false) return false; if (other.getEnableXRay() == null ^ this.getEnableXRay() == null) return false; if (other.getEnableXRay() != null && other.getEnableXRay().equals(this.getEnableXRay()) == false) return false; if (other.getExcludedPages() == null ^ this.getExcludedPages() == null) return false; if (other.getExcludedPages() != null && other.getExcludedPages().equals(this.getExcludedPages()) == false) return false; if (other.getFavoritePages() == null ^ this.getFavoritePages() == null) return false; if (other.getFavoritePages() != null && other.getFavoritePages().equals(this.getFavoritePages()) == false) return false; if (other.getGuestRoleArn() == null ^ this.getGuestRoleArn() == null) return false; if (other.getGuestRoleArn() != null && other.getGuestRoleArn().equals(this.getGuestRoleArn()) == false) return false; if (other.getIdentityPoolId() == null ^ this.getIdentityPoolId() == null) return false; if (other.getIdentityPoolId() != null && other.getIdentityPoolId().equals(this.getIdentityPoolId()) == false) return false; if (other.getIncludedPages() == null ^ this.getIncludedPages() == null) return false; if (other.getIncludedPages() != null && other.getIncludedPages().equals(this.getIncludedPages()) == false) return false; if (other.getSessionSampleRate() == null ^ this.getSessionSampleRate() == null) return false; if (other.getSessionSampleRate() != null && other.getSessionSampleRate().equals(this.getSessionSampleRate()) == false) return false; if (other.getTelemetries() == null ^ this.getTelemetries() == null) return false; if (other.getTelemetries() != null && other.getTelemetries().equals(this.getTelemetries()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getAllowCookies() == null) ? 0 : getAllowCookies().hashCode()); hashCode = prime * hashCode + ((getEnableXRay() == null) ? 0 : getEnableXRay().hashCode()); hashCode = prime * hashCode + ((getExcludedPages() == null) ? 0 : getExcludedPages().hashCode()); hashCode = prime * hashCode + ((getFavoritePages() == null) ? 0 : getFavoritePages().hashCode()); hashCode = prime * hashCode + ((getGuestRoleArn() == null) ? 0 : getGuestRoleArn().hashCode()); hashCode = prime * hashCode + ((getIdentityPoolId() == null) ? 0 : getIdentityPoolId().hashCode()); hashCode = prime * hashCode + ((getIncludedPages() == null) ? 0 : getIncludedPages().hashCode()); hashCode = prime * hashCode + ((getSessionSampleRate() == null) ? 0 : getSessionSampleRate().hashCode()); hashCode = prime * hashCode + ((getTelemetries() == null) ? 0 : getTelemetries().hashCode()); return hashCode; } @Override public AppMonitorConfiguration clone() { try { return (AppMonitorConfiguration) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.cloudwatchrum.model.transform.AppMonitorConfigurationMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy