Class: AWSCDK::ApplicationInsights::CfnApplicationProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
application_insights/cfn_application_props.rb

Overview

Properties for defining a CfnApplication.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(resource_group_name:, attach_missing_permission: nil, auto_configuration_enabled: nil, component_monitoring_settings: nil, custom_components: nil, cwe_monitor_enabled: nil, grouping_type: nil, log_pattern_sets: nil, ops_center_enabled: nil, ops_item_sns_topic_arn: nil, sns_notification_arn: nil, tags: nil) ⇒ CfnApplicationProps

Returns a new instance of CfnApplicationProps.

Parameters:

  • resource_group_name (String)

    The name of the resource group used for the application.

  • attach_missing_permission (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    If set to true, the managed policies for SSM and CW will be attached to the instance roles if they are missing.

  • auto_configuration_enabled (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    If set to true , the application components will be configured with the monitoring configuration recommended by Application Insights.

  • component_monitoring_settings (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::ApplicationInsights::CfnApplication::ComponentMonitoringSettingProperty>, nil) (defaults to: nil)

    The monitoring settings of the components.

  • custom_components (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::ApplicationInsights::CfnApplication::CustomComponentProperty>, nil) (defaults to: nil)

    Describes a custom component by grouping similar standalone instances to monitor.

  • cwe_monitor_enabled (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Indicates whether Application Insights can listen to CloudWatch events for the application resources, such as instance terminated , failed deployment , and others.

  • grouping_type (String, nil) (defaults to: nil)

    Application Insights can create applications based on a resource group or on an account.

  • log_pattern_sets (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::ApplicationInsights::CfnApplication::LogPatternSetProperty>, nil) (defaults to: nil)

    The log pattern sets.

  • ops_center_enabled (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Indicates whether Application Insights will create OpsItems for any problem that is detected by Application Insights for an application.

  • ops_item_sns_topic_arn (String, nil) (defaults to: nil)

    The SNS topic provided to Application Insights that is associated with the created OpsItems to receive SNS notifications for opsItem updates.

  • sns_notification_arn (String, nil) (defaults to: nil)

    The SNS topic ARN that is associated with SNS notifications for updates or issues.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    An array of Tags .



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'application_insights/cfn_application_props.rb', line 21

def initialize(resource_group_name:, attach_missing_permission: nil, auto_configuration_enabled: nil, component_monitoring_settings: nil, custom_components: nil, cwe_monitor_enabled: nil, grouping_type: nil, log_pattern_sets: nil, ops_center_enabled: nil, ops_item_sns_topic_arn: nil, sns_notification_arn: nil, tags: nil)
  @resource_group_name = resource_group_name
  Jsii::Type.check_type(@resource_group_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "resourceGroupName")
  @attach_missing_permission = attach_missing_permission
  Jsii::Type.check_type(@attach_missing_permission, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "attachMissingPermission") unless @attach_missing_permission.nil?
  @auto_configuration_enabled = auto_configuration_enabled
  Jsii::Type.check_type(@auto_configuration_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "autoConfigurationEnabled") unless @auto_configuration_enabled.nil?
  @component_monitoring_settings = component_monitoring_settings
  Jsii::Type.check_type(@component_monitoring_settings, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwbGljYXRpb25pbnNpZ2h0cy5DZm5BcHBsaWNhdGlvbi5Db21wb25lbnRNb25pdG9yaW5nU2V0dGluZ1Byb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "componentMonitoringSettings") unless @component_monitoring_settings.nil?
  @custom_components = custom_components
  Jsii::Type.check_type(@custom_components, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwbGljYXRpb25pbnNpZ2h0cy5DZm5BcHBsaWNhdGlvbi5DdXN0b21Db21wb25lbnRQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "customComponents") unless @custom_components.nil?
  @cwe_monitor_enabled = cwe_monitor_enabled
  Jsii::Type.check_type(@cwe_monitor_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "cweMonitorEnabled") unless @cwe_monitor_enabled.nil?
  @grouping_type = grouping_type
  Jsii::Type.check_type(@grouping_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "groupingType") unless @grouping_type.nil?
  @log_pattern_sets = log_pattern_sets
  Jsii::Type.check_type(@log_pattern_sets, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwbGljYXRpb25pbnNpZ2h0cy5DZm5BcHBsaWNhdGlvbi5Mb2dQYXR0ZXJuU2V0UHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "logPatternSets") unless @log_pattern_sets.nil?
  @ops_center_enabled = ops_center_enabled
  Jsii::Type.check_type(@ops_center_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "opsCenterEnabled") unless @ops_center_enabled.nil?
  @ops_item_sns_topic_arn = ops_item_sns_topic_arn
  Jsii::Type.check_type(@ops_item_sns_topic_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "opsItemSnsTopicArn") unless @ops_item_sns_topic_arn.nil?
  @sns_notification_arn = sns_notification_arn
  Jsii::Type.check_type(@sns_notification_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "snsNotificationArn") unless @sns_notification_arn.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#attach_missing_permissionBoolean, ... (readonly)

If set to true, the managed policies for SSM and CW will be attached to the instance roles if they are missing.



57
58
59
# File 'application_insights/cfn_application_props.rb', line 57

def attach_missing_permission
  @attach_missing_permission
end

#auto_configuration_enabledBoolean, ... (readonly)

If set to true , the application components will be configured with the monitoring configuration recommended by Application Insights.



62
63
64
# File 'application_insights/cfn_application_props.rb', line 62

def auto_configuration_enabled
  @auto_configuration_enabled
end

#component_monitoring_settingsAWSCDK::IResolvable, ... (readonly)

The monitoring settings of the components.

Not required to set up default monitoring for all components. To set up default monitoring for all components, set AutoConfigurationEnabled to true .



69
70
71
# File 'application_insights/cfn_application_props.rb', line 69

def component_monitoring_settings
  @component_monitoring_settings
end

#custom_componentsAWSCDK::IResolvable, ... (readonly)

Describes a custom component by grouping similar standalone instances to monitor.



74
75
76
# File 'application_insights/cfn_application_props.rb', line 74

def custom_components
  @custom_components
end

#cwe_monitor_enabledBoolean, ... (readonly)

Indicates whether Application Insights can listen to CloudWatch events for the application resources, such as instance terminated , failed deployment , and others.



79
80
81
# File 'application_insights/cfn_application_props.rb', line 79

def cwe_monitor_enabled
  @cwe_monitor_enabled
end

#grouping_typeString? (readonly)

Application Insights can create applications based on a resource group or on an account.

To create an account-based application using all of the resources in the account, set this parameter to ACCOUNT_BASED .



86
87
88
# File 'application_insights/cfn_application_props.rb', line 86

def grouping_type
  @grouping_type
end

#log_pattern_setsAWSCDK::IResolvable, ... (readonly)

The log pattern sets.



91
92
93
# File 'application_insights/cfn_application_props.rb', line 91

def log_pattern_sets
  @log_pattern_sets
end

#ops_center_enabledBoolean, ... (readonly)

Indicates whether Application Insights will create OpsItems for any problem that is detected by Application Insights for an application.



96
97
98
# File 'application_insights/cfn_application_props.rb', line 96

def ops_center_enabled
  @ops_center_enabled
end

#ops_item_sns_topic_arnString? (readonly)

The SNS topic provided to Application Insights that is associated with the created OpsItems to receive SNS notifications for opsItem updates.



101
102
103
# File 'application_insights/cfn_application_props.rb', line 101

def ops_item_sns_topic_arn
  @ops_item_sns_topic_arn
end

#resource_group_nameString (readonly)

The name of the resource group used for the application.



52
53
54
# File 'application_insights/cfn_application_props.rb', line 52

def resource_group_name
  @resource_group_name
end

#sns_notification_arnString? (readonly)

The SNS topic ARN that is associated with SNS notifications for updates or issues.



106
107
108
# File 'application_insights/cfn_application_props.rb', line 106

def sns_notification_arn
  @sns_notification_arn
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

An array of Tags .



111
112
113
# File 'application_insights/cfn_application_props.rb', line 111

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# File 'application_insights/cfn_application_props.rb', line 113

def self.jsii_properties
  {
    :resource_group_name => "resourceGroupName",
    :attach_missing_permission => "attachMissingPermission",
    :auto_configuration_enabled => "autoConfigurationEnabled",
    :component_monitoring_settings => "componentMonitoringSettings",
    :custom_components => "customComponents",
    :cwe_monitor_enabled => "cweMonitorEnabled",
    :grouping_type => "groupingType",
    :log_pattern_sets => "logPatternSets",
    :ops_center_enabled => "opsCenterEnabled",
    :ops_item_sns_topic_arn => "opsItemSnsTopicArn",
    :sns_notification_arn => "snsNotificationArn",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'application_insights/cfn_application_props.rb', line 130

def to_jsii
  result = {}
  result.merge!({
    "resourceGroupName" => @resource_group_name,
    "attachMissingPermission" => @attach_missing_permission,
    "autoConfigurationEnabled" => @auto_configuration_enabled,
    "componentMonitoringSettings" => @component_monitoring_settings,
    "customComponents" => @custom_components,
    "cweMonitorEnabled" => @cwe_monitor_enabled,
    "groupingType" => @grouping_type,
    "logPatternSets" => @log_pattern_sets,
    "opsCenterEnabled" => @ops_center_enabled,
    "opsItemSnsTopicArn" => @ops_item_sns_topic_arn,
    "snsNotificationArn" => @sns_notification_arn,
    "tags" => @tags,
  })
  result.compact
end