Class: AWSCDK::RUM::CfnAppMonitorProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::RUM::CfnAppMonitorProps
- Defined in:
- rum/cfn_app_monitor_props.rb
Overview
Properties for defining a CfnAppMonitor.
Instance Attribute Summary collapse
-
#app_monitor_configuration ⇒ AWSCDK::IResolvable, ...
readonly
A structure that contains much of the configuration data for the app monitor.
-
#custom_events ⇒ AWSCDK::IResolvable, ...
readonly
Specifies whether this app monitor allows the web client to define and send custom events.
-
#cw_log_enabled ⇒ Boolean, ...
readonly
Data collected by CloudWatch RUM is kept by RUM for 30 days and then deleted.
-
#deobfuscation_configuration ⇒ AWSCDK::IResolvable, ...
readonly
A structure that contains the configuration for how an app monitor can deobfuscate stack traces.
-
#domain ⇒ String?
readonly
The top-level internet domain name for which your application has administrative authority.
-
#domain_list ⇒ Array<String>?
readonly
List the domain names for which your application has administrative authority.
-
#name ⇒ String
readonly
A name for the app monitor.
- #platform ⇒ String? readonly
-
#resource_policy ⇒ AWSCDK::IResolvable, ...
readonly
Use this structure to assign a resource-based policy to a CloudWatch RUM app monitor to control access to it.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
Assigns one or more tags (key-value pairs) to the app monitor.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(name:, app_monitor_configuration: nil, custom_events: nil, cw_log_enabled: nil, deobfuscation_configuration: nil, domain: nil, domain_list: nil, platform: nil, resource_policy: nil, tags: nil) ⇒ CfnAppMonitorProps
constructor
A new instance of CfnAppMonitorProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(name:, app_monitor_configuration: nil, custom_events: nil, cw_log_enabled: nil, deobfuscation_configuration: nil, domain: nil, domain_list: nil, platform: nil, resource_policy: nil, tags: nil) ⇒ CfnAppMonitorProps
Returns a new instance of CfnAppMonitorProps.
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'rum/cfn_app_monitor_props.rb', line 19 def initialize(name:, app_monitor_configuration: nil, custom_events: nil, cw_log_enabled: nil, deobfuscation_configuration: nil, domain: nil, domain_list: nil, platform: nil, resource_policy: nil, tags: nil) @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") @app_monitor_configuration = app_monitor_configuration.is_a?(Hash) ? ::AWSCDK::RUM::CfnAppMonitor::AppMonitorConfigurationProperty.new(**app_monitor_configuration.transform_keys(&:to_sym)) : app_monitor_configuration Jsii::Type.check_type(@app_monitor_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19ydW0uQ2ZuQXBwTW9uaXRvci5BcHBNb25pdG9yQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "appMonitorConfiguration") unless @app_monitor_configuration.nil? @custom_events = custom_events.is_a?(Hash) ? ::AWSCDK::RUM::CfnAppMonitor::CustomEventsProperty.new(**custom_events.transform_keys(&:to_sym)) : custom_events Jsii::Type.check_type(@custom_events, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19ydW0uQ2ZuQXBwTW9uaXRvci5DdXN0b21FdmVudHNQcm9wZXJ0eSJ9XX19")), "customEvents") unless @custom_events.nil? @cw_log_enabled = cw_log_enabled Jsii::Type.check_type(@cw_log_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "cwLogEnabled") unless @cw_log_enabled.nil? @deobfuscation_configuration = deobfuscation_configuration.is_a?(Hash) ? ::AWSCDK::RUM::CfnAppMonitor::DeobfuscationConfigurationProperty.new(**deobfuscation_configuration.transform_keys(&:to_sym)) : deobfuscation_configuration Jsii::Type.check_type(@deobfuscation_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19ydW0uQ2ZuQXBwTW9uaXRvci5EZW9iZnVzY2F0aW9uQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "deobfuscationConfiguration") unless @deobfuscation_configuration.nil? @domain = domain Jsii::Type.check_type(@domain, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "domain") unless @domain.nil? @domain_list = domain_list Jsii::Type.check_type(@domain_list, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "domainList") unless @domain_list.nil? @platform = platform Jsii::Type.check_type(@platform, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "platform") unless @platform.nil? @resource_policy = resource_policy.is_a?(Hash) ? ::AWSCDK::RUM::CfnAppMonitor::ResourcePolicyProperty.new(**resource_policy.transform_keys(&:to_sym)) : resource_policy Jsii::Type.check_type(@resource_policy, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19ydW0uQ2ZuQXBwTW9uaXRvci5SZXNvdXJjZVBvbGljeVByb3BlcnR5In1dfX0=")), "resourcePolicy") unless @resource_policy.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? end |
Instance Attribute Details
#app_monitor_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
A structure that contains much of the configuration data for the app monitor.
If you are using Amazon Cognito for authorization, you must include this structure in your request, and it must include the ID of the Amazon Cognito identity pool to use for authorization. If you don't include AppMonitorConfiguration , you must set up your own authorization method. For more information, see Authorize your application to send data to AWS .
If you omit this argument, the sample rate used for CloudWatch RUM is set to 10% of the user sessions.
57 58 59 |
# File 'rum/cfn_app_monitor_props.rb', line 57 def app_monitor_configuration @app_monitor_configuration end |
#custom_events ⇒ AWSCDK::IResolvable, ... (readonly)
Specifies whether this app monitor allows the web client to define and send custom events.
If you omit this parameter, custom events are DISABLED .
64 65 66 |
# File 'rum/cfn_app_monitor_props.rb', line 64 def custom_events @custom_events end |
#cw_log_enabled ⇒ Boolean, ... (readonly)
Data collected by CloudWatch RUM is kept by RUM for 30 days and then deleted.
This parameter specifies whether CloudWatch RUM sends a copy of this telemetry data to Amazon CloudWatch Logs in your account. This enables you to keep the telemetry data for more than 30 days, but it does incur Amazon CloudWatch Logs charges.
If you omit this parameter, the default is false .
73 74 75 |
# File 'rum/cfn_app_monitor_props.rb', line 73 def cw_log_enabled @cw_log_enabled end |
#deobfuscation_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
A structure that contains the configuration for how an app monitor can deobfuscate stack traces.
78 79 80 |
# File 'rum/cfn_app_monitor_props.rb', line 78 def deobfuscation_configuration @deobfuscation_configuration end |
#domain ⇒ String? (readonly)
The top-level internet domain name for which your application has administrative authority.
This parameter or the DomainList parameter is required.
85 86 87 |
# File 'rum/cfn_app_monitor_props.rb', line 85 def domain @domain end |
#domain_list ⇒ Array<String>? (readonly)
List the domain names for which your application has administrative authority. This parameter or the Domain parameter is required.
You can have a minimum of 1 and a maximum of 5 Domain under DomainList . Each Domain must be a minimum length of 1 and a maximum of 253 characters.
92 93 94 |
# File 'rum/cfn_app_monitor_props.rb', line 92 def domain_list @domain_list end |
#name ⇒ String (readonly)
A name for the app monitor.
This parameter is required.
48 49 50 |
# File 'rum/cfn_app_monitor_props.rb', line 48 def name @name end |
#platform ⇒ String? (readonly)
95 96 97 |
# File 'rum/cfn_app_monitor_props.rb', line 95 def platform @platform end |
#resource_policy ⇒ AWSCDK::IResolvable, ... (readonly)
Use this structure to assign a resource-based policy to a CloudWatch RUM app monitor to control access to it.
Each app monitor can have one resource-based policy. The maximum size of the policy is 4 KB. To learn more about using resource policies with RUM, see Using resource-based policies with CloudWatch RUM .
102 103 104 |
# File 'rum/cfn_app_monitor_props.rb', line 102 def resource_policy @resource_policy end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
Assigns one or more tags (key-value pairs) to the app monitor.
Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.
Tags don't have any semantic meaning to AWS and are interpreted strictly as strings of characters.
You can associate as many as 50 tags with an app monitor.
For more information, see Tagging AWS resources .
115 116 117 |
# File 'rum/cfn_app_monitor_props.rb', line 115 def @tags end |
Class Method Details
.jsii_properties ⇒ Object
117 118 119 120 121 122 123 124 125 126 127 128 129 130 |
# File 'rum/cfn_app_monitor_props.rb', line 117 def self.jsii_properties { :name => "name", :app_monitor_configuration => "appMonitorConfiguration", :custom_events => "customEvents", :cw_log_enabled => "cwLogEnabled", :deobfuscation_configuration => "deobfuscationConfiguration", :domain => "domain", :domain_list => "domainList", :platform => "platform", :resource_policy => "resourcePolicy", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 |
# File 'rum/cfn_app_monitor_props.rb', line 132 def to_jsii result = {} result.merge!({ "name" => @name, "appMonitorConfiguration" => @app_monitor_configuration, "customEvents" => @custom_events, "cwLogEnabled" => @cw_log_enabled, "deobfuscationConfiguration" => @deobfuscation_configuration, "domain" => @domain, "domainList" => @domain_list, "platform" => @platform, "resourcePolicy" => @resource_policy, "tags" => @tags, }) result.compact end |