aws-sdk-codeguruprofiler 1.0.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,6 +11,7 @@ module Aws::CodeGuruProfiler
11
11
 
12
12
  include Seahorse::Model
13
13
 
14
+ ActionGroup = Shapes::StringShape.new(name: 'ActionGroup')
14
15
  AgentConfiguration = Shapes::StructureShape.new(name: 'AgentConfiguration')
15
16
  AgentOrchestrationConfig = Shapes::StructureShape.new(name: 'AgentOrchestrationConfig')
16
17
  AgentProfile = Shapes::BlobShape.new(name: 'AgentProfile')
@@ -29,6 +30,8 @@ module Aws::CodeGuruProfiler
29
30
  DescribeProfilingGroupRequest = Shapes::StructureShape.new(name: 'DescribeProfilingGroupRequest')
30
31
  DescribeProfilingGroupResponse = Shapes::StructureShape.new(name: 'DescribeProfilingGroupResponse')
31
32
  FleetInstanceId = Shapes::StringShape.new(name: 'FleetInstanceId')
33
+ GetPolicyRequest = Shapes::StructureShape.new(name: 'GetPolicyRequest')
34
+ GetPolicyResponse = Shapes::StructureShape.new(name: 'GetPolicyResponse')
32
35
  GetProfileRequest = Shapes::StructureShape.new(name: 'GetProfileRequest')
33
36
  GetProfileResponse = Shapes::StructureShape.new(name: 'GetProfileResponse')
34
37
  Integer = Shapes::IntegerShape.new(name: 'Integer')
@@ -44,6 +47,8 @@ module Aws::CodeGuruProfiler
44
47
  Period = Shapes::StringShape.new(name: 'Period')
45
48
  PostAgentProfileRequest = Shapes::StructureShape.new(name: 'PostAgentProfileRequest')
46
49
  PostAgentProfileResponse = Shapes::StructureShape.new(name: 'PostAgentProfileResponse')
50
+ Principal = Shapes::StringShape.new(name: 'Principal')
51
+ Principals = Shapes::ListShape.new(name: 'Principals')
47
52
  ProfileTime = Shapes::StructureShape.new(name: 'ProfileTime')
48
53
  ProfileTimes = Shapes::ListShape.new(name: 'ProfileTimes')
49
54
  ProfilingGroupArn = Shapes::StringShape.new(name: 'ProfilingGroupArn')
@@ -52,7 +57,12 @@ module Aws::CodeGuruProfiler
52
57
  ProfilingGroupName = Shapes::StringShape.new(name: 'ProfilingGroupName')
53
58
  ProfilingGroupNames = Shapes::ListShape.new(name: 'ProfilingGroupNames')
54
59
  ProfilingStatus = Shapes::StructureShape.new(name: 'ProfilingStatus')
60
+ PutPermissionRequest = Shapes::StructureShape.new(name: 'PutPermissionRequest')
61
+ PutPermissionResponse = Shapes::StructureShape.new(name: 'PutPermissionResponse')
62
+ RemovePermissionRequest = Shapes::StructureShape.new(name: 'RemovePermissionRequest')
63
+ RemovePermissionResponse = Shapes::StructureShape.new(name: 'RemovePermissionResponse')
55
64
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
65
+ RevisionId = Shapes::StringShape.new(name: 'RevisionId')
56
66
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
57
67
  String = Shapes::StringShape.new(name: 'String')
58
68
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
@@ -107,6 +117,13 @@ module Aws::CodeGuruProfiler
107
117
  DescribeProfilingGroupResponse[:payload] = :profiling_group
108
118
  DescribeProfilingGroupResponse[:payload_member] = DescribeProfilingGroupResponse.member(:profiling_group)
109
119
 
120
+ GetPolicyRequest.add_member(:profiling_group_name, Shapes::ShapeRef.new(shape: ProfilingGroupName, required: true, location: "uri", location_name: "profilingGroupName"))
121
+ GetPolicyRequest.struct_class = Types::GetPolicyRequest
122
+
123
+ GetPolicyResponse.add_member(:policy, Shapes::ShapeRef.new(shape: String, required: true, location_name: "policy"))
124
+ GetPolicyResponse.add_member(:revision_id, Shapes::ShapeRef.new(shape: RevisionId, required: true, location_name: "revisionId"))
125
+ GetPolicyResponse.struct_class = Types::GetPolicyResponse
126
+
110
127
  GetProfileRequest.add_member(:accept, Shapes::ShapeRef.new(shape: String, location: "header", location_name: "Accept"))
111
128
  GetProfileRequest.add_member(:end_time, Shapes::ShapeRef.new(shape: Timestamp, location: "querystring", location_name: "endTime"))
112
129
  GetProfileRequest.add_member(:max_depth, Shapes::ShapeRef.new(shape: MaxDepth, location: "querystring", location_name: "maxDepth"))
@@ -158,6 +175,8 @@ module Aws::CodeGuruProfiler
158
175
 
159
176
  PostAgentProfileResponse.struct_class = Types::PostAgentProfileResponse
160
177
 
178
+ Principals.member = Shapes::ShapeRef.new(shape: Principal)
179
+
161
180
  ProfileTime.add_member(:start, Shapes::ShapeRef.new(shape: Timestamp, location_name: "start"))
162
181
  ProfileTime.struct_class = Types::ProfileTime
163
182
 
@@ -180,6 +199,25 @@ module Aws::CodeGuruProfiler
180
199
  ProfilingStatus.add_member(:latest_aggregated_profile, Shapes::ShapeRef.new(shape: AggregatedProfileTime, location_name: "latestAggregatedProfile"))
181
200
  ProfilingStatus.struct_class = Types::ProfilingStatus
182
201
 
202
+ PutPermissionRequest.add_member(:action_group, Shapes::ShapeRef.new(shape: ActionGroup, required: true, location: "uri", location_name: "actionGroup"))
203
+ PutPermissionRequest.add_member(:principals, Shapes::ShapeRef.new(shape: Principals, required: true, location_name: "principals"))
204
+ PutPermissionRequest.add_member(:profiling_group_name, Shapes::ShapeRef.new(shape: ProfilingGroupName, required: true, location: "uri", location_name: "profilingGroupName"))
205
+ PutPermissionRequest.add_member(:revision_id, Shapes::ShapeRef.new(shape: RevisionId, location_name: "revisionId"))
206
+ PutPermissionRequest.struct_class = Types::PutPermissionRequest
207
+
208
+ PutPermissionResponse.add_member(:policy, Shapes::ShapeRef.new(shape: String, required: true, location_name: "policy"))
209
+ PutPermissionResponse.add_member(:revision_id, Shapes::ShapeRef.new(shape: RevisionId, required: true, location_name: "revisionId"))
210
+ PutPermissionResponse.struct_class = Types::PutPermissionResponse
211
+
212
+ RemovePermissionRequest.add_member(:action_group, Shapes::ShapeRef.new(shape: ActionGroup, required: true, location: "uri", location_name: "actionGroup"))
213
+ RemovePermissionRequest.add_member(:profiling_group_name, Shapes::ShapeRef.new(shape: ProfilingGroupName, required: true, location: "uri", location_name: "profilingGroupName"))
214
+ RemovePermissionRequest.add_member(:revision_id, Shapes::ShapeRef.new(shape: RevisionId, required: true, location: "querystring", location_name: "revisionId"))
215
+ RemovePermissionRequest.struct_class = Types::RemovePermissionRequest
216
+
217
+ RemovePermissionResponse.add_member(:policy, Shapes::ShapeRef.new(shape: String, required: true, location_name: "policy"))
218
+ RemovePermissionResponse.add_member(:revision_id, Shapes::ShapeRef.new(shape: RevisionId, required: true, location_name: "revisionId"))
219
+ RemovePermissionResponse.struct_class = Types::RemovePermissionResponse
220
+
183
221
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
184
222
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
185
223
 
@@ -268,6 +306,17 @@ module Aws::CodeGuruProfiler
268
306
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
269
307
  end)
270
308
 
309
+ api.add_operation(:get_policy, Seahorse::Model::Operation.new.tap do |o|
310
+ o.name = "GetPolicy"
311
+ o.http_method = "GET"
312
+ o.http_request_uri = "/profilingGroups/{profilingGroupName}/policy"
313
+ o.input = Shapes::ShapeRef.new(shape: GetPolicyRequest)
314
+ o.output = Shapes::ShapeRef.new(shape: GetPolicyResponse)
315
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
316
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
317
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
318
+ end)
319
+
271
320
  api.add_operation(:get_profile, Seahorse::Model::Operation.new.tap do |o|
272
321
  o.name = "GetProfile"
273
322
  o.http_method = "GET"
@@ -326,6 +375,32 @@ module Aws::CodeGuruProfiler
326
375
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
327
376
  end)
328
377
 
378
+ api.add_operation(:put_permission, Seahorse::Model::Operation.new.tap do |o|
379
+ o.name = "PutPermission"
380
+ o.http_method = "PUT"
381
+ o.http_request_uri = "/profilingGroups/{profilingGroupName}/policy/{actionGroup}"
382
+ o.input = Shapes::ShapeRef.new(shape: PutPermissionRequest)
383
+ o.output = Shapes::ShapeRef.new(shape: PutPermissionResponse)
384
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
385
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
386
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
387
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
388
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
389
+ end)
390
+
391
+ api.add_operation(:remove_permission, Seahorse::Model::Operation.new.tap do |o|
392
+ o.name = "RemovePermission"
393
+ o.http_method = "DELETE"
394
+ o.http_request_uri = "/profilingGroups/{profilingGroupName}/policy/{actionGroup}"
395
+ o.input = Shapes::ShapeRef.new(shape: RemovePermissionRequest)
396
+ o.output = Shapes::ShapeRef.new(shape: RemovePermissionResponse)
397
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
398
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
399
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
400
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
401
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
402
+ end)
403
+
329
404
  api.add_operation(:update_profiling_group, Seahorse::Model::Operation.new.tap do |o|
330
405
  o.name = "UpdateProfilingGroup"
331
406
  o.http_method = "PUT"
@@ -6,6 +6,34 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::CodeGuruProfiler
9
+
10
+ # When CodeGuruProfiler returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::CodeGuruProfiler::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all CodeGuruProfiler errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::CodeGuruProfiler::Errors::ServiceError
18
+ # # rescues all CodeGuruProfiler API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {ConflictException}
29
+ # * {InternalServerException}
30
+ # * {ResourceNotFoundException}
31
+ # * {ServiceQuotaExceededException}
32
+ # * {ThrottlingException}
33
+ # * {ValidationException}
34
+ #
35
+ # Additionally, error classes are dynamically generated for service errors based on the error code
36
+ # if they are not defined above.
9
37
  module Errors
10
38
 
11
39
  extend Aws::Errors::DynamicErrors
@@ -23,7 +51,6 @@ module Aws::CodeGuruProfiler
23
51
  def message
24
52
  @message || @data[:message]
25
53
  end
26
-
27
54
  end
28
55
 
29
56
  class InternalServerException < ServiceError
@@ -39,7 +66,6 @@ module Aws::CodeGuruProfiler
39
66
  def message
40
67
  @message || @data[:message]
41
68
  end
42
-
43
69
  end
44
70
 
45
71
  class ResourceNotFoundException < ServiceError
@@ -55,7 +81,6 @@ module Aws::CodeGuruProfiler
55
81
  def message
56
82
  @message || @data[:message]
57
83
  end
58
-
59
84
  end
60
85
 
61
86
  class ServiceQuotaExceededException < ServiceError
@@ -71,7 +96,6 @@ module Aws::CodeGuruProfiler
71
96
  def message
72
97
  @message || @data[:message]
73
98
  end
74
-
75
99
  end
76
100
 
77
101
  class ThrottlingException < ServiceError
@@ -87,7 +111,6 @@ module Aws::CodeGuruProfiler
87
111
  def message
88
112
  @message || @data[:message]
89
113
  end
90
-
91
114
  end
92
115
 
93
116
  class ValidationException < ServiceError
@@ -103,7 +126,6 @@ module Aws::CodeGuruProfiler
103
126
  def message
104
127
  @message || @data[:message]
105
128
  end
106
-
107
129
  end
108
130
 
109
131
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::CodeGuruProfiler
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -8,15 +8,10 @@
8
8
  module Aws::CodeGuruProfiler
9
9
  module Types
10
10
 
11
- # The configuration for the agent to use.
12
- #
13
11
  # @!attribute [rw] period_in_seconds
14
- # Specifies the period to follow the configuration (to profile or not)
15
- # and call back to get a new configuration.
16
12
  # @return [Integer]
17
13
  #
18
14
  # @!attribute [rw] should_profile
19
- # Specifies if the profiling should be enabled by the agent.
20
15
  # @return [Boolean]
21
16
  #
22
17
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/AgentConfiguration AWS API Documentation
@@ -27,10 +22,6 @@ module Aws::CodeGuruProfiler
27
22
  include Aws::Structure
28
23
  end
29
24
 
30
- # Configuration to orchestrate agents to create and report agent
31
- # profiles of the profiling group. Agents are orchestrated if they
32
- # follow the agent orchestration protocol.
33
- #
34
25
  # @note When making an API call, you may pass AgentOrchestrationConfig
35
26
  # data as a hash:
36
27
  #
@@ -39,7 +30,6 @@ module Aws::CodeGuruProfiler
39
30
  # }
40
31
  #
41
32
  # @!attribute [rw] profiling_enabled
42
- # If the agents should be enabled to create and report profiles.
43
33
  # @return [Boolean]
44
34
  #
45
35
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/AgentOrchestrationConfig AWS API Documentation
@@ -49,14 +39,15 @@ module Aws::CodeGuruProfiler
49
39
  include Aws::Structure
50
40
  end
51
41
 
52
- # The time range of an aggregated profile.
42
+ # Information about the time range of the latest available aggregated
43
+ # profile.
53
44
  #
54
45
  # @!attribute [rw] period
55
- # The aggregation period of the aggregated profile.
46
+ # The time period.
56
47
  # @return [String]
57
48
  #
58
49
  # @!attribute [rw] start
59
- # The start time of the aggregated profile.
50
+ # The start time.
60
51
  # @return [Time]
61
52
  #
62
53
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/AggregatedProfileTime AWS API Documentation
@@ -67,7 +58,7 @@ module Aws::CodeGuruProfiler
67
58
  include Aws::Structure
68
59
  end
69
60
 
70
- # Request for ConfigureAgent operation.
61
+ # The structure representing the configureAgentRequest.
71
62
  #
72
63
  # @note When making an API call, you may pass ConfigureAgentRequest
73
64
  # data as a hash:
@@ -78,13 +69,9 @@ module Aws::CodeGuruProfiler
78
69
  # }
79
70
  #
80
71
  # @!attribute [rw] fleet_instance_id
81
- # Identifier of the instance of compute fleet being profiled by the
82
- # agent. For instance, host name in EC2, task id for ECS, function
83
- # name for AWS Lambda
84
72
  # @return [String]
85
73
  #
86
74
  # @!attribute [rw] profiling_group_name
87
- # The name of the profiling group.
88
75
  # @return [String]
89
76
  #
90
77
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ConfigureAgentRequest AWS API Documentation
@@ -95,10 +82,9 @@ module Aws::CodeGuruProfiler
95
82
  include Aws::Structure
96
83
  end
97
84
 
98
- # Response for ConfigureAgent operation.
85
+ # The structure representing the configureAgentResponse.
99
86
  #
100
87
  # @!attribute [rw] configuration
101
- # The configuration for the agent to use.
102
88
  # @return [Types::AgentConfiguration]
103
89
  #
104
90
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ConfigureAgentResponse AWS API Documentation
@@ -108,7 +94,9 @@ module Aws::CodeGuruProfiler
108
94
  include Aws::Structure
109
95
  end
110
96
 
111
- # Request can can cause an inconsistent state for the resource.
97
+ # The requested operation would cause a conflict with the current state
98
+ # of a service resource associated with the request. Resolve the
99
+ # conflict before retrying this request.
112
100
  #
113
101
  # @!attribute [rw] message
114
102
  # @return [String]
@@ -120,7 +108,7 @@ module Aws::CodeGuruProfiler
120
108
  include Aws::Structure
121
109
  end
122
110
 
123
- # Request for CreateProfilingGroup operation.
111
+ # The structure representing the createProfiliingGroupRequest.
124
112
  #
125
113
  # @note When making an API call, you may pass CreateProfilingGroupRequest
126
114
  # data as a hash:
@@ -134,13 +122,15 @@ module Aws::CodeGuruProfiler
134
122
  # }
135
123
  #
136
124
  # @!attribute [rw] agent_orchestration_config
137
- # Configuration to orchestrate agents to create and report agent
138
- # profiles of the profiling group. Agents are orchestrated if they
139
- # follow the agent orchestration protocol.
125
+ # The agent orchestration configuration.
140
126
  # @return [Types::AgentOrchestrationConfig]
141
127
  #
142
128
  # @!attribute [rw] client_token
143
- # Client token for the request.
129
+ # Unique, case-sensitive identifier that you provide to ensure the
130
+ # idempotency of the request.
131
+ #
132
+ # This parameter specifies a unique identifier for the new profiling
133
+ # group that helps ensure idempotency.
144
134
  #
145
135
  # **A suitable default value is auto-generated.** You should normally
146
136
  # not need to pass this option.
@@ -159,10 +149,10 @@ module Aws::CodeGuruProfiler
159
149
  include Aws::Structure
160
150
  end
161
151
 
162
- # Response for CreateProfilingGroup operation.
152
+ # The structure representing the createProfilingGroupResponse.
163
153
  #
164
154
  # @!attribute [rw] profiling_group
165
- # The description of a profiling group.
155
+ # Information about the new profiling group
166
156
  # @return [Types::ProfilingGroupDescription]
167
157
  #
168
158
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/CreateProfilingGroupResponse AWS API Documentation
@@ -172,7 +162,7 @@ module Aws::CodeGuruProfiler
172
162
  include Aws::Structure
173
163
  end
174
164
 
175
- # Request for DeleteProfilingGroup operation.
165
+ # The structure representing the deleteProfilingGroupRequest.
176
166
  #
177
167
  # @note When making an API call, you may pass DeleteProfilingGroupRequest
178
168
  # data as a hash:
@@ -182,7 +172,7 @@ module Aws::CodeGuruProfiler
182
172
  # }
183
173
  #
184
174
  # @!attribute [rw] profiling_group_name
185
- # The name of the profiling group.
175
+ # The profiling group name to delete.
186
176
  # @return [String]
187
177
  #
188
178
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/DeleteProfilingGroupRequest AWS API Documentation
@@ -192,13 +182,13 @@ module Aws::CodeGuruProfiler
192
182
  include Aws::Structure
193
183
  end
194
184
 
195
- # Response for DeleteProfilingGroup operation.
185
+ # The structure representing the deleteProfilingGroupResponse.
196
186
  #
197
187
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/DeleteProfilingGroupResponse AWS API Documentation
198
188
  #
199
189
  class DeleteProfilingGroupResponse < Aws::EmptyStructure; end
200
190
 
201
- # Request for DescribeProfilingGroup operation.
191
+ # The structure representing the describeProfilingGroupRequest.
202
192
  #
203
193
  # @note When making an API call, you may pass DescribeProfilingGroupRequest
204
194
  # data as a hash:
@@ -208,7 +198,7 @@ module Aws::CodeGuruProfiler
208
198
  # }
209
199
  #
210
200
  # @!attribute [rw] profiling_group_name
211
- # The name of the profiling group.
201
+ # The profiling group name.
212
202
  # @return [String]
213
203
  #
214
204
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/DescribeProfilingGroupRequest AWS API Documentation
@@ -218,10 +208,10 @@ module Aws::CodeGuruProfiler
218
208
  include Aws::Structure
219
209
  end
220
210
 
221
- # Response for DescribeProfilingGroup operation.
211
+ # The structure representing the describeProfilingGroupResponse.
222
212
  #
223
213
  # @!attribute [rw] profiling_group
224
- # The description of a profiling group.
214
+ # Information about a profiling group.
225
215
  # @return [Types::ProfilingGroupDescription]
226
216
  #
227
217
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/DescribeProfilingGroupResponse AWS API Documentation
@@ -231,7 +221,45 @@ module Aws::CodeGuruProfiler
231
221
  include Aws::Structure
232
222
  end
233
223
 
234
- # Request for GetProfile operation.
224
+ # The structure representing the getPolicyRequest.
225
+ #
226
+ # @note When making an API call, you may pass GetPolicyRequest
227
+ # data as a hash:
228
+ #
229
+ # {
230
+ # profiling_group_name: "ProfilingGroupName", # required
231
+ # }
232
+ #
233
+ # @!attribute [rw] profiling_group_name
234
+ # The name of the profiling group.
235
+ # @return [String]
236
+ #
237
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetPolicyRequest AWS API Documentation
238
+ #
239
+ class GetPolicyRequest < Struct.new(
240
+ :profiling_group_name)
241
+ include Aws::Structure
242
+ end
243
+
244
+ # The structure representing the getPolicyResponse.
245
+ #
246
+ # @!attribute [rw] policy
247
+ # The resource-based policy attached to the `ProfilingGroup`.
248
+ # @return [String]
249
+ #
250
+ # @!attribute [rw] revision_id
251
+ # A unique identifier for the current revision of the policy.
252
+ # @return [String]
253
+ #
254
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetPolicyResponse AWS API Documentation
255
+ #
256
+ class GetPolicyResponse < Struct.new(
257
+ :policy,
258
+ :revision_id)
259
+ include Aws::Structure
260
+ end
261
+
262
+ # The structure representing the getProfileRequest.
235
263
  #
236
264
  # @note When making an API call, you may pass GetProfileRequest
237
265
  # data as a hash:
@@ -246,32 +274,36 @@ module Aws::CodeGuruProfiler
246
274
  # }
247
275
  #
248
276
  # @!attribute [rw] accept
249
- # The format of the profile to return. Supports application/json or
250
- # application/x-amzn-ion. Defaults to application/x-amzn-ion.
277
+ # The format of the profile to return. You can choose
278
+ # `application/json` or the default `application/x-amzn-ion`.
251
279
  # @return [String]
252
280
  #
253
281
  # @!attribute [rw] end_time
254
- # The end time of the profile to get. Either period or endTime must be
255
- # specified. Must be greater than start and the overall time range to
256
- # be in the past and not larger than a week.
282
+ # You must specify exactly two of the following parameters:
283
+ # `startTime`, `period`, and `endTime`.
257
284
  # @return [Time]
258
285
  #
259
286
  # @!attribute [rw] max_depth
260
- # Limit the max depth of the profile.
287
+ # The maximum depth of the graph.
261
288
  # @return [Integer]
262
289
  #
263
290
  # @!attribute [rw] period
264
- # The period of the profile to get. Exactly two of `startTime`,
265
- # `period` and `endTime` must be specified. Must be positive and the
266
- # overall time range to be in the past and not larger than a week.
291
+ # The period of the profile to get. The time range must be in the past
292
+ # and not longer than one week.
293
+ #
294
+ # You must specify exactly two of the following parameters:
295
+ # `startTime`, `period`, and `endTime`.
267
296
  # @return [String]
268
297
  #
269
298
  # @!attribute [rw] profiling_group_name
270
- # The name of the profiling group.
299
+ # The name of the profiling group to get.
271
300
  # @return [String]
272
301
  #
273
302
  # @!attribute [rw] start_time
274
303
  # The start time of the profile to get.
304
+ #
305
+ # You must specify exactly two of the following parameters:
306
+ # `startTime`, `period`, and `endTime`.
275
307
  # @return [Time]
276
308
  #
277
309
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetProfileRequest AWS API Documentation
@@ -286,21 +318,19 @@ module Aws::CodeGuruProfiler
286
318
  include Aws::Structure
287
319
  end
288
320
 
289
- # Response for GetProfile operation.
321
+ # The structure representing the getProfileResponse.
290
322
  #
291
323
  # @!attribute [rw] content_encoding
292
- # The content encoding of the profile in the payload.
324
+ # The content encoding of the profile.
293
325
  # @return [String]
294
326
  #
295
327
  # @!attribute [rw] content_type
296
- # The content type of the profile in the payload. Will be
297
- # application/json or application/x-amzn-ion based on Accept header in
298
- # the request.
328
+ # The content type of the profile in the payload. It is either
329
+ # `application/json` or the default `application/x-amzn-ion`.
299
330
  # @return [String]
300
331
  #
301
332
  # @!attribute [rw] profile
302
- # The profile representing the aggregation of agent profiles of the
303
- # profiling group for a time range.
333
+ # Information about the profile.
304
334
  # @return [String]
305
335
  #
306
336
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetProfileResponse AWS API Documentation
@@ -312,7 +342,8 @@ module Aws::CodeGuruProfiler
312
342
  include Aws::Structure
313
343
  end
314
344
 
315
- # Unexpected error during processing of request.
345
+ # The server encountered an internal error and is unable to complete the
346
+ # request.
316
347
  #
317
348
  # @!attribute [rw] message
318
349
  # @return [String]
@@ -324,7 +355,7 @@ module Aws::CodeGuruProfiler
324
355
  include Aws::Structure
325
356
  end
326
357
 
327
- # Request for ListProfileTimes operation.
358
+ # The structure representing the listProfileTimesRequest.
328
359
  #
329
360
  # @note When making an API call, you may pass ListProfileTimesRequest
330
361
  # data as a hash:
@@ -340,24 +371,39 @@ module Aws::CodeGuruProfiler
340
371
  # }
341
372
  #
342
373
  # @!attribute [rw] end_time
343
- # The end time of the time range to list profiles until.
374
+ # The end time of the time range from which to list the profiles.
344
375
  # @return [Time]
345
376
  #
346
377
  # @!attribute [rw] max_results
347
- # Upper bound on the number of results to list in a single call.
378
+ # The maximum number of profile time results returned by
379
+ # `ListProfileTimes` in paginated output. When this parameter is used,
380
+ # `ListProfileTimes` only returns `maxResults` results in a single
381
+ # page with a `nextToken` response element. The remaining results of
382
+ # the initial request can be seen by sending another
383
+ # `ListProfileTimes` request with the returned `nextToken` value.
348
384
  # @return [Integer]
349
385
  #
350
386
  # @!attribute [rw] next_token
351
- # Token for paginating results.
387
+ # The `nextToken` value returned from a previous paginated
388
+ # `ListProfileTimes` request where `maxResults` was used and the
389
+ # results exceeded the value of that parameter. Pagination continues
390
+ # from the end of the previous results that returned the `nextToken`
391
+ # value.
392
+ #
393
+ # <note markdown="1"> This token should be treated as an opaque identifier that is only
394
+ # used to retrieve the next items in a list and not for other
395
+ # programmatic purposes.
396
+ #
397
+ # </note>
352
398
  # @return [String]
353
399
  #
354
400
  # @!attribute [rw] order_by
355
401
  # The order (ascending or descending by start time of the profile) to
356
- # list the profiles by. Defaults to TIMESTAMP\_DESCENDING.
402
+ # use when listing profiles. Defaults to `TIMESTAMP_DESCENDING`.
357
403
  # @return [String]
358
404
  #
359
405
  # @!attribute [rw] period
360
- # The aggregation period to list the profiles for.
406
+ # The aggregation period.
361
407
  # @return [String]
362
408
  #
363
409
  # @!attribute [rw] profiling_group_name
@@ -365,7 +411,7 @@ module Aws::CodeGuruProfiler
365
411
  # @return [String]
366
412
  #
367
413
  # @!attribute [rw] start_time
368
- # The start time of the time range to list the profiles from.
414
+ # The start time of the time range from which to list the profiles.
369
415
  # @return [Time]
370
416
  #
371
417
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ListProfileTimesRequest AWS API Documentation
@@ -381,15 +427,19 @@ module Aws::CodeGuruProfiler
381
427
  include Aws::Structure
382
428
  end
383
429
 
384
- # Response for ListProfileTimes operation.
430
+ # The structure representing the listProfileTimesResponse.
385
431
  #
386
432
  # @!attribute [rw] next_token
387
- # Token for paginating results.
433
+ # The `nextToken` value to include in a future `ListProfileTimes`
434
+ # request. When the results of a `ListProfileTimes` request exceed
435
+ # `maxResults`, this value can be used to retrieve the next page of
436
+ # results. This value is `null` when there are no more results to
437
+ # return.
388
438
  # @return [String]
389
439
  #
390
440
  # @!attribute [rw] profile_times
391
- # List of start times of the available profiles for the aggregation
392
- # period in the specified time range.
441
+ # The list of start times of the available profiles for the
442
+ # aggregation period in the specified time range.
393
443
  # @return [Array<Types::ProfileTime>]
394
444
  #
395
445
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ListProfileTimesResponse AWS API Documentation
@@ -400,7 +450,7 @@ module Aws::CodeGuruProfiler
400
450
  include Aws::Structure
401
451
  end
402
452
 
403
- # Request for ListProfilingGroups operation.
453
+ # The structure representing the listProfilingGroupsRequest.
404
454
  #
405
455
  # @note When making an API call, you may pass ListProfilingGroupsRequest
406
456
  # data as a hash:
@@ -412,16 +462,30 @@ module Aws::CodeGuruProfiler
412
462
  # }
413
463
  #
414
464
  # @!attribute [rw] include_description
415
- # If set to true, returns the full description of the profiling groups
416
- # instead of the names. Defaults to false.
465
+ # A Boolean value indicating whether to include a description.
417
466
  # @return [Boolean]
418
467
  #
419
468
  # @!attribute [rw] max_results
420
- # Upper bound on the number of results to list in a single call.
469
+ # The maximum number of profiling groups results returned by
470
+ # `ListProfilingGroups` in paginated output. When this parameter is
471
+ # used, `ListProfilingGroups` only returns `maxResults` results in a
472
+ # single page along with a `nextToken` response element. The remaining
473
+ # results of the initial request can be seen by sending another
474
+ # `ListProfilingGroups` request with the returned `nextToken` value.
421
475
  # @return [Integer]
422
476
  #
423
477
  # @!attribute [rw] next_token
424
- # Token for paginating results.
478
+ # The `nextToken` value returned from a previous paginated
479
+ # `ListProfilingGroups` request where `maxResults` was used and the
480
+ # results exceeded the value of that parameter. Pagination continues
481
+ # from the end of the previous results that returned the `nextToken`
482
+ # value.
483
+ #
484
+ # <note markdown="1"> This token should be treated as an opaque identifier that is only
485
+ # used to retrieve the next items in a list and not for other
486
+ # programmatic purposes.
487
+ #
488
+ # </note>
425
489
  # @return [String]
426
490
  #
427
491
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ListProfilingGroupsRequest AWS API Documentation
@@ -433,18 +497,22 @@ module Aws::CodeGuruProfiler
433
497
  include Aws::Structure
434
498
  end
435
499
 
436
- # Response for ListProfilingGroups operation.
500
+ # The structure representing the listProfilingGroupsResponse.
437
501
  #
438
502
  # @!attribute [rw] next_token
439
- # Token for paginating results.
503
+ # The `nextToken` value to include in a future `ListProfilingGroups`
504
+ # request. When the results of a `ListProfilingGroups` request exceed
505
+ # `maxResults`, this value can be used to retrieve the next page of
506
+ # results. This value is `null` when there are no more results to
507
+ # return.
440
508
  # @return [String]
441
509
  #
442
510
  # @!attribute [rw] profiling_group_names
443
- # List of profiling group names.
511
+ # Information about profiling group names.
444
512
  # @return [Array<String>]
445
513
  #
446
514
  # @!attribute [rw] profiling_groups
447
- # List of profiling group descriptions.
515
+ # Information about profiling groups.
448
516
  # @return [Array<Types::ProfilingGroupDescription>]
449
517
  #
450
518
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ListProfilingGroupsResponse AWS API Documentation
@@ -456,7 +524,7 @@ module Aws::CodeGuruProfiler
456
524
  include Aws::Structure
457
525
  end
458
526
 
459
- # Request for PostAgentProfile operation.
527
+ # The structure representing the postAgentProfileRequest.
460
528
  #
461
529
  # @note When making an API call, you may pass PostAgentProfileRequest
462
530
  # data as a hash:
@@ -469,26 +537,17 @@ module Aws::CodeGuruProfiler
469
537
  # }
470
538
  #
471
539
  # @!attribute [rw] agent_profile
472
- # The profile collected by an agent for a time range.
473
540
  # @return [String]
474
541
  #
475
542
  # @!attribute [rw] content_type
476
- # The content type of the agent profile in the payload. Recommended to
477
- # send the profile gzipped with content-type application/octet-stream.
478
- # Other accepted values are application/x-amzn-ion and
479
- # application/json for unzipped Ion and JSON respectively.
480
543
  # @return [String]
481
544
  #
482
545
  # @!attribute [rw] profile_token
483
- # Client generated token to deduplicate the agent profile during
484
- # aggregation.
485
- #
486
546
  # **A suitable default value is auto-generated.** You should normally
487
547
  # not need to pass this option.
488
548
  # @return [String]
489
549
  #
490
550
  # @!attribute [rw] profiling_group_name
491
- # The name of the profiling group.
492
551
  # @return [String]
493
552
  #
494
553
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/PostAgentProfileRequest AWS API Documentation
@@ -501,14 +560,13 @@ module Aws::CodeGuruProfiler
501
560
  include Aws::Structure
502
561
  end
503
562
 
504
- # Response for PostAgentProfile operation.
563
+ # The structure representing the postAgentProfileResponse.
505
564
  #
506
565
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/PostAgentProfileResponse AWS API Documentation
507
566
  #
508
567
  class PostAgentProfileResponse < Aws::EmptyStructure; end
509
568
 
510
- # Periods of time used for aggregation of profiles, represented using
511
- # ISO 8601 format.
569
+ # Information about the profile time.
512
570
  #
513
571
  # @!attribute [rw] start
514
572
  # The start time of the profile.
@@ -524,17 +582,15 @@ module Aws::CodeGuruProfiler
524
582
  # The description of a profiling group.
525
583
  #
526
584
  # @!attribute [rw] agent_orchestration_config
527
- # Configuration to orchestrate agents to create and report agent
528
- # profiles of the profiling group. Agents are orchestrated if they
529
- # follow the agent orchestration protocol.
530
585
  # @return [Types::AgentOrchestrationConfig]
531
586
  #
532
587
  # @!attribute [rw] arn
533
- # The ARN of the profiling group.
588
+ # The Amazon Resource Name (ARN) identifying the profiling group.
534
589
  # @return [String]
535
590
  #
536
591
  # @!attribute [rw] created_at
537
- # The timestamp of when the profiling group was created.
592
+ # The time, in milliseconds since the epoch, when the profiling group
593
+ # was created.
538
594
  # @return [Time]
539
595
  #
540
596
  # @!attribute [rw] name
@@ -542,11 +598,12 @@ module Aws::CodeGuruProfiler
542
598
  # @return [String]
543
599
  #
544
600
  # @!attribute [rw] profiling_status
545
- # The status of profiling of a profiling group.
601
+ # The status of the profiling group.
546
602
  # @return [Types::ProfilingStatus]
547
603
  #
548
604
  # @!attribute [rw] updated_at
549
- # The timestamp of when the profiling group was last updated.
605
+ # The time, in milliseconds since the epoch, when the profiling group
606
+ # was last updated.
550
607
  # @return [Time]
551
608
  #
552
609
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ProfilingGroupDescription AWS API Documentation
@@ -561,20 +618,20 @@ module Aws::CodeGuruProfiler
561
618
  include Aws::Structure
562
619
  end
563
620
 
564
- # The status of profiling of a profiling group.
621
+ # Information about the profiling status.
565
622
  #
566
623
  # @!attribute [rw] latest_agent_orchestrated_at
567
- # Timestamp of when the last interaction of the agent with
568
- # configureAgent API for orchestration.
624
+ # The time, in milliseconds since the epoch, when the latest agent was
625
+ # orchestrated.
569
626
  # @return [Time]
570
627
  #
571
628
  # @!attribute [rw] latest_agent_profile_reported_at
572
- # Timestamp of when the latest agent profile was successfully
573
- # reported.
629
+ # The time, in milliseconds since the epoch, when the latest agent was
630
+ # reported..
574
631
  # @return [Time]
575
632
  #
576
633
  # @!attribute [rw] latest_aggregated_profile
577
- # The time range of latest aggregated profile available.
634
+ # The latest aggregated profile
578
635
  # @return [Types::AggregatedProfileTime]
579
636
  #
580
637
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ProfilingStatus AWS API Documentation
@@ -586,7 +643,118 @@ module Aws::CodeGuruProfiler
586
643
  include Aws::Structure
587
644
  end
588
645
 
589
- # Request references a resource which does not exist.
646
+ # The structure representing the putPermissionRequest.
647
+ #
648
+ # @note When making an API call, you may pass PutPermissionRequest
649
+ # data as a hash:
650
+ #
651
+ # {
652
+ # action_group: "agentPermissions", # required, accepts agentPermissions
653
+ # principals: ["Principal"], # required
654
+ # profiling_group_name: "ProfilingGroupName", # required
655
+ # revision_id: "RevisionId",
656
+ # }
657
+ #
658
+ # @!attribute [rw] action_group
659
+ # The list of actions that the users and roles can perform on the
660
+ # profiling group.
661
+ # @return [String]
662
+ #
663
+ # @!attribute [rw] principals
664
+ # The list of role and user ARNs or the accountId that needs access
665
+ # (wildcards are not allowed).
666
+ # @return [Array<String>]
667
+ #
668
+ # @!attribute [rw] profiling_group_name
669
+ # The name of the profiling group.
670
+ # @return [String]
671
+ #
672
+ # @!attribute [rw] revision_id
673
+ # A unique identifier for the current revision of the policy. This is
674
+ # required, if a policy exists for the profiling group. This is not
675
+ # required when creating the policy for the first time.
676
+ # @return [String]
677
+ #
678
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/PutPermissionRequest AWS API Documentation
679
+ #
680
+ class PutPermissionRequest < Struct.new(
681
+ :action_group,
682
+ :principals,
683
+ :profiling_group_name,
684
+ :revision_id)
685
+ include Aws::Structure
686
+ end
687
+
688
+ # The structure representing the putPermissionResponse.
689
+ #
690
+ # @!attribute [rw] policy
691
+ # The resource-based policy.
692
+ # @return [String]
693
+ #
694
+ # @!attribute [rw] revision_id
695
+ # A unique identifier for the current revision of the policy.
696
+ # @return [String]
697
+ #
698
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/PutPermissionResponse AWS API Documentation
699
+ #
700
+ class PutPermissionResponse < Struct.new(
701
+ :policy,
702
+ :revision_id)
703
+ include Aws::Structure
704
+ end
705
+
706
+ # The structure representing the removePermissionRequest.
707
+ #
708
+ # @note When making an API call, you may pass RemovePermissionRequest
709
+ # data as a hash:
710
+ #
711
+ # {
712
+ # action_group: "agentPermissions", # required, accepts agentPermissions
713
+ # profiling_group_name: "ProfilingGroupName", # required
714
+ # revision_id: "RevisionId", # required
715
+ # }
716
+ #
717
+ # @!attribute [rw] action_group
718
+ # The list of actions that the users and roles can perform on the
719
+ # profiling group.
720
+ # @return [String]
721
+ #
722
+ # @!attribute [rw] profiling_group_name
723
+ # The name of the profiling group.
724
+ # @return [String]
725
+ #
726
+ # @!attribute [rw] revision_id
727
+ # A unique identifier for the current revision of the policy.
728
+ # @return [String]
729
+ #
730
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/RemovePermissionRequest AWS API Documentation
731
+ #
732
+ class RemovePermissionRequest < Struct.new(
733
+ :action_group,
734
+ :profiling_group_name,
735
+ :revision_id)
736
+ include Aws::Structure
737
+ end
738
+
739
+ # The structure representing the removePermissionResponse.
740
+ #
741
+ # @!attribute [rw] policy
742
+ # The resource-based policy.
743
+ # @return [String]
744
+ #
745
+ # @!attribute [rw] revision_id
746
+ # A unique identifier for the current revision of the policy.
747
+ # @return [String]
748
+ #
749
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/RemovePermissionResponse AWS API Documentation
750
+ #
751
+ class RemovePermissionResponse < Struct.new(
752
+ :policy,
753
+ :revision_id)
754
+ include Aws::Structure
755
+ end
756
+
757
+ # The resource specified in the request does not exist.
590
758
  #
591
759
  # @!attribute [rw] message
592
760
  # @return [String]
@@ -598,7 +766,13 @@ module Aws::CodeGuruProfiler
598
766
  include Aws::Structure
599
767
  end
600
768
 
601
- # Request would cause a service quota to be exceeded.
769
+ # You have exceeded your service quota. To perform the requested action,
770
+ # remove some of the relevant resources, or use [Service Quotas][1] to
771
+ # request a service quota increase.
772
+ #
773
+ #
774
+ #
775
+ # [1]: https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html
602
776
  #
603
777
  # @!attribute [rw] message
604
778
  # @return [String]
@@ -610,7 +784,7 @@ module Aws::CodeGuruProfiler
610
784
  include Aws::Structure
611
785
  end
612
786
 
613
- # Request was denied due to request throttling.
787
+ # The request was denied due to request throttling.
614
788
  #
615
789
  # @!attribute [rw] message
616
790
  # @return [String]
@@ -622,7 +796,7 @@ module Aws::CodeGuruProfiler
622
796
  include Aws::Structure
623
797
  end
624
798
 
625
- # Request for UpdateProfilingGroup operation.
799
+ # The structure representing the updateProfilingGroupRequest.
626
800
  #
627
801
  # @note When making an API call, you may pass UpdateProfilingGroupRequest
628
802
  # data as a hash:
@@ -635,11 +809,10 @@ module Aws::CodeGuruProfiler
635
809
  # }
636
810
  #
637
811
  # @!attribute [rw] agent_orchestration_config
638
- # Remote configuration to configure the agents of the profiling group.
639
812
  # @return [Types::AgentOrchestrationConfig]
640
813
  #
641
814
  # @!attribute [rw] profiling_group_name
642
- # The name of the profiling group.
815
+ # The name of the profiling group to update.
643
816
  # @return [String]
644
817
  #
645
818
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/UpdateProfilingGroupRequest AWS API Documentation
@@ -650,10 +823,10 @@ module Aws::CodeGuruProfiler
650
823
  include Aws::Structure
651
824
  end
652
825
 
653
- # Response for UpdateProfilingGroup operation.
826
+ # The structure representing the updateProfilingGroupResponse.
654
827
  #
655
828
  # @!attribute [rw] profiling_group
656
- # The description of a profiling group.
829
+ # Updated information about the profiling group.
657
830
  # @return [Types::ProfilingGroupDescription]
658
831
  #
659
832
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/UpdateProfilingGroupResponse AWS API Documentation
@@ -663,7 +836,7 @@ module Aws::CodeGuruProfiler
663
836
  include Aws::Structure
664
837
  end
665
838
 
666
- # The input fails to satisfy the constraints of the API.
839
+ # The parameter is not valid.
667
840
  #
668
841
  # @!attribute [rw] message
669
842
  # @return [String]