Class: AWSCDK::CodeGuruProfiler::CfnProfilingGroupProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
code_guru_profiler/cfn_profiling_group_props.rb

Overview

Properties for defining a CfnProfilingGroup.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(profiling_group_name:, agent_permissions: nil, anomaly_detection_notification_configuration: nil, compute_platform: nil, tags: nil) ⇒ CfnProfilingGroupProps

Returns a new instance of CfnProfilingGroupProps.

Parameters:



14
15
16
17
18
19
20
21
22
23
24
25
# File 'code_guru_profiler/cfn_profiling_group_props.rb', line 14

def initialize(profiling_group_name:, agent_permissions: nil, anomaly_detection_notification_configuration: nil, compute_platform: nil, tags: nil)
  @profiling_group_name = profiling_group_name
  Jsii::Type.check_type(@profiling_group_name, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19sYW1iZGEuSUZ1bmN0aW9uUmVmIn1dfX0=")), "profilingGroupName")
  @agent_permissions = agent_permissions
  Jsii::Type.check_type(@agent_permissions, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "agentPermissions") unless @agent_permissions.nil?
  @anomaly_detection_notification_configuration = anomaly_detection_notification_configuration
  Jsii::Type.check_type(@anomaly_detection_notification_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29kZWd1cnVwcm9maWxlci5DZm5Qcm9maWxpbmdHcm91cC5DaGFubmVsUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "anomalyDetectionNotificationConfiguration") unless @anomaly_detection_notification_configuration.nil?
  @compute_platform = compute_platform
  Jsii::Type.check_type(@compute_platform, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "computePlatform") unless @compute_platform.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

#agent_permissionsObject? (readonly)

The agent permissions attached to this profiling group.

This action group grants ConfigureAgent and PostAgentProfile permissions to perform actions required by the profiling agent. The Json consists of key Principals .

Principals : A list of string ARNs for the roles and users you want to grant access to the profiling group. Wildcards are not supported in the ARNs. You are allowed to provide up to 50 ARNs. An empty list is not permitted. This is a required key.

For more information, see Resource-based policies in CodeGuru Profiler in the Amazon CodeGuru Profiler user guide , ConfigureAgent , and PostAgentProfile .



42
43
44
# File 'code_guru_profiler/cfn_profiling_group_props.rb', line 42

def agent_permissions
  @agent_permissions
end

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

Adds anomaly notifications for a profiling group.



47
48
49
# File 'code_guru_profiler/cfn_profiling_group_props.rb', line 47

def anomaly_detection_notification_configuration
  @anomaly_detection_notification_configuration
end

#compute_platformString? (readonly)

The compute platform of the profiling group.

Use AWSLambda if your application runs on AWS Lambda. Use Default if your application runs on a compute platform that is not AWS Lambda , such an Amazon EC2 instance, an on-premises server, or a different platform. If not specified, Default is used. This property is immutable.



54
55
56
# File 'code_guru_profiler/cfn_profiling_group_props.rb', line 54

def compute_platform
  @compute_platform
end

#profiling_group_nameString, AWSCDK::Interfaces::AWSLambda::IFunctionRef (readonly)

The name of the profiling group.



31
32
33
# File 'code_guru_profiler/cfn_profiling_group_props.rb', line 31

def profiling_group_name
  @profiling_group_name
end

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

A list of tags to add to the created profiling group.



59
60
61
# File 'code_guru_profiler/cfn_profiling_group_props.rb', line 59

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



61
62
63
64
65
66
67
68
69
# File 'code_guru_profiler/cfn_profiling_group_props.rb', line 61

def self.jsii_properties
  {
    :profiling_group_name => "profilingGroupName",
    :agent_permissions => "agentPermissions",
    :anomaly_detection_notification_configuration => "anomalyDetectionNotificationConfiguration",
    :compute_platform => "computePlatform",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



71
72
73
74
75
76
77
78
79
80
81
# File 'code_guru_profiler/cfn_profiling_group_props.rb', line 71

def to_jsii
  result = {}
  result.merge!({
    "profilingGroupName" => @profiling_group_name,
    "agentPermissions" => @agent_permissions,
    "anomalyDetectionNotificationConfiguration" => @anomaly_detection_notification_configuration,
    "computePlatform" => @compute_platform,
    "tags" => @tags,
  })
  result.compact
end