aws-sdk-codeguruprofiler 1.7.0 → 1.12.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -10,21 +10,117 @@
10
10
  module Aws::CodeGuruProfiler
11
11
  module Types
12
12
 
13
+ # The structure representing the AddNotificationChannelsRequest.
14
+ #
15
+ # @note When making an API call, you may pass AddNotificationChannelsRequest
16
+ # data as a hash:
17
+ #
18
+ # {
19
+ # channels: [ # required
20
+ # {
21
+ # event_publishers: ["AnomalyDetection"], # required, accepts AnomalyDetection
22
+ # id: "ChannelId",
23
+ # uri: "ChannelUri", # required
24
+ # },
25
+ # ],
26
+ # profiling_group_name: "ProfilingGroupName", # required
27
+ # }
28
+ #
29
+ # @!attribute [rw] channels
30
+ # One or 2 channels to report to when anomalies are detected.
31
+ # @return [Array<Types::Channel>]
32
+ #
33
+ # @!attribute [rw] profiling_group_name
34
+ # The name of the profiling group that we are setting up notifications
35
+ # for.
36
+ # @return [String]
37
+ #
38
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/AddNotificationChannelsRequest AWS API Documentation
39
+ #
40
+ class AddNotificationChannelsRequest < Struct.new(
41
+ :channels,
42
+ :profiling_group_name)
43
+ SENSITIVE = []
44
+ include Aws::Structure
45
+ end
46
+
47
+ # The structure representing the AddNotificationChannelsResponse.
48
+ #
49
+ # @!attribute [rw] notification_configuration
50
+ # The new notification configuration for this profiling group.
51
+ # @return [Types::NotificationConfiguration]
52
+ #
53
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/AddNotificationChannelsResponse AWS API Documentation
54
+ #
55
+ class AddNotificationChannelsResponse < Struct.new(
56
+ :notification_configuration)
57
+ SENSITIVE = []
58
+ include Aws::Structure
59
+ end
60
+
61
+ # The response of [ `ConfigureAgent` ][1] that specifies if an agent
62
+ # profiles or not and for how long to return profiling data.
63
+ #
64
+ #
65
+ #
66
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ConfigureAgent.html
67
+ #
68
+ # @!attribute [rw] agent_parameters
69
+ # Parameters used by the profiler. The valid parameters are:
70
+ #
71
+ # * `MaxStackDepth` - The maximum depth of the stacks in the code that
72
+ # is represented in the profile. For example, if CodeGuru Profiler
73
+ # finds a method `A`, which calls method `B`, which calls method
74
+ # `C`, which calls method `D`, then the depth is 4. If the
75
+ # `maxDepth` is set to 2, then the profiler evaluates `A` and `B`.
76
+ #
77
+ # * `MemoryUsageLimitPercent` - The percentage of memory that is used
78
+ # by the profiler.
79
+ #
80
+ # * `MinimumTimeForReportingInMilliseconds` - The minimum time in
81
+ # milliseconds between sending reports.
82
+ #
83
+ # * `ReportingIntervalInMilliseconds` - The reporting interval in
84
+ # milliseconds used to report profiles.
85
+ #
86
+ # * `SamplingIntervalInMilliseconds` - The sampling interval in
87
+ # milliseconds that is used to profile samples.
88
+ # @return [Hash<String,String>]
89
+ #
13
90
  # @!attribute [rw] period_in_seconds
91
+ # How long a profiling agent should send profiling data using [
92
+ # `ConfigureAgent` ][1]. For example, if this is set to 300, the
93
+ # profiling agent calls [ `ConfigureAgent` ][1] every 5 minutes to
94
+ # submit the profiled data collected during that period.
95
+ #
96
+ #
97
+ #
98
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ConfigureAgent.html
14
99
  # @return [Integer]
15
100
  #
16
101
  # @!attribute [rw] should_profile
102
+ # A `Boolean` that specifies whether the profiling agent collects
103
+ # profiling data or not. Set to `true` to enable profiling.
17
104
  # @return [Boolean]
18
105
  #
19
106
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/AgentConfiguration AWS API Documentation
20
107
  #
21
108
  class AgentConfiguration < Struct.new(
109
+ :agent_parameters,
22
110
  :period_in_seconds,
23
111
  :should_profile)
24
112
  SENSITIVE = []
25
113
  include Aws::Structure
26
114
  end
27
115
 
116
+ # Specifies whether profiling is enabled or disabled for a profiling
117
+ # group. It is used by [ `ConfigureAgent` ][1] to enable or disable
118
+ # profiling for a profiling group.
119
+ #
120
+ #
121
+ #
122
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ConfigureAgent.html
123
+ #
28
124
  # @note When making an API call, you may pass AgentOrchestrationConfig
29
125
  # data as a hash:
30
126
  #
@@ -33,6 +129,8 @@ module Aws::CodeGuruProfiler
33
129
  # }
34
130
  #
35
131
  # @!attribute [rw] profiling_enabled
132
+ # A `Boolean` that specifies whether the profiling agent collects
133
+ # profiling data or not. Set to `true` to enable profiling.
36
134
  # @return [Boolean]
37
135
  #
38
136
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/AgentOrchestrationConfig AWS API Documentation
@@ -43,15 +141,33 @@ module Aws::CodeGuruProfiler
43
141
  include Aws::Structure
44
142
  end
45
143
 
46
- # Information about the time range of the latest available aggregated
47
- # profile.
144
+ # Specifies the aggregation period and aggregation start time for an
145
+ # aggregated profile. An aggregated profile is used to collect posted
146
+ # agent profiles during an aggregation period. There are three possible
147
+ # aggregation periods (1 day, 1 hour, or 5 minutes).
48
148
  #
49
149
  # @!attribute [rw] period
50
- # The time period.
150
+ # The aggregation period. This indicates the period during which an
151
+ # aggregation profile collects posted agent profiles for a profiling
152
+ # group. Use one of three valid durations that are specified using the
153
+ # ISO 8601 format.
154
+ #
155
+ # * `P1D` — 1 day
156
+ #
157
+ # * `PT1H` — 1 hour
158
+ #
159
+ # * `PT5M` — 5 minutes
51
160
  # @return [String]
52
161
  #
53
162
  # @!attribute [rw] start
54
- # The start time.
163
+ # The time that aggregation of posted agent profiles for a profiling
164
+ # group starts. The aggregation profile contains profiles posted by
165
+ # the agent starting at this time for an aggregation period specified
166
+ # by the `period` property of the `AggregatedProfileTime` object.
167
+ #
168
+ # Specify `start` using the ISO 8601 format. For example,
169
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
170
+ # 1:15:02 PM UTC.
55
171
  # @return [Time]
56
172
  #
57
173
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/AggregatedProfileTime AWS API Documentation
@@ -63,6 +179,252 @@ module Aws::CodeGuruProfiler
63
179
  include Aws::Structure
64
180
  end
65
181
 
182
+ # Details about an anomaly in a specific metric of application profile.
183
+ # The anomaly is detected using analysis of the metric data over a
184
+ # period of time.
185
+ #
186
+ # @!attribute [rw] instances
187
+ # A list of the instances of the detected anomalies during the
188
+ # requested period.
189
+ # @return [Array<Types::AnomalyInstance>]
190
+ #
191
+ # @!attribute [rw] metric
192
+ # Details about the metric that the analysis used when it detected the
193
+ # anomaly. The metric includes the name of the frame that was analyzed
194
+ # with the type and thread states used to derive the metric value for
195
+ # that frame.
196
+ # @return [Types::Metric]
197
+ #
198
+ # @!attribute [rw] reason
199
+ # The reason for which metric was flagged as anomalous.
200
+ # @return [String]
201
+ #
202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/Anomaly AWS API Documentation
203
+ #
204
+ class Anomaly < Struct.new(
205
+ :instances,
206
+ :metric,
207
+ :reason)
208
+ SENSITIVE = []
209
+ include Aws::Structure
210
+ end
211
+
212
+ # The specific duration in which the metric is flagged as anomalous.
213
+ #
214
+ # @!attribute [rw] end_time
215
+ # The end time of the period during which the metric is flagged as
216
+ # anomalous. This is specified using the ISO 8601 format. For example,
217
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
218
+ # 1:15:02 PM UTC.
219
+ # @return [Time]
220
+ #
221
+ # @!attribute [rw] id
222
+ # The universally unique identifier (UUID) of an instance of an
223
+ # anomaly in a metric.
224
+ # @return [String]
225
+ #
226
+ # @!attribute [rw] start_time
227
+ # The start time of the period during which the metric is flagged as
228
+ # anomalous. This is specified using the ISO 8601 format. For example,
229
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
230
+ # 1:15:02 PM UTC.
231
+ # @return [Time]
232
+ #
233
+ # @!attribute [rw] user_feedback
234
+ # Feedback type on a specific instance of anomaly submitted by the
235
+ # user.
236
+ # @return [Types::UserFeedback]
237
+ #
238
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/AnomalyInstance AWS API Documentation
239
+ #
240
+ class AnomalyInstance < Struct.new(
241
+ :end_time,
242
+ :id,
243
+ :start_time,
244
+ :user_feedback)
245
+ SENSITIVE = []
246
+ include Aws::Structure
247
+ end
248
+
249
+ # The structure representing the BatchGetFrameMetricDataRequest.
250
+ #
251
+ # @note When making an API call, you may pass BatchGetFrameMetricDataRequest
252
+ # data as a hash:
253
+ #
254
+ # {
255
+ # end_time: Time.now,
256
+ # frame_metrics: [
257
+ # {
258
+ # frame_name: "String", # required
259
+ # thread_states: ["String"], # required
260
+ # type: "AggregatedRelativeTotalTime", # required, accepts AggregatedRelativeTotalTime
261
+ # },
262
+ # ],
263
+ # period: "Period",
264
+ # profiling_group_name: "ProfilingGroupName", # required
265
+ # start_time: Time.now,
266
+ # target_resolution: "P1D", # accepts P1D, PT1H, PT5M
267
+ # }
268
+ #
269
+ # @!attribute [rw] end_time
270
+ # The end time of the time period for the returned time series values.
271
+ # This is specified using the ISO 8601 format. For example,
272
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
273
+ # 1:15:02 PM UTC.
274
+ # @return [Time]
275
+ #
276
+ # @!attribute [rw] frame_metrics
277
+ # The details of the metrics that are used to request a time series of
278
+ # values. The metric includes the name of the frame, the aggregation
279
+ # type to calculate the metric value for the frame, and the thread
280
+ # states to use to get the count for the metric value of the frame.
281
+ # @return [Array<Types::FrameMetric>]
282
+ #
283
+ # @!attribute [rw] period
284
+ # The duration of the frame metrics used to return the time series
285
+ # values. Specify using the ISO 8601 format. The maximum period
286
+ # duration is one day (`PT24H` or `P1D`).
287
+ # @return [String]
288
+ #
289
+ # @!attribute [rw] profiling_group_name
290
+ # The name of the profiling group associated with the the frame
291
+ # metrics used to return the time series values.
292
+ # @return [String]
293
+ #
294
+ # @!attribute [rw] start_time
295
+ # The start time of the time period for the frame metrics used to
296
+ # return the time series values. This is specified using the ISO 8601
297
+ # format. For example, 2020-06-01T13:15:02.001Z represents 1
298
+ # millisecond past June 1, 2020 1:15:02 PM UTC.
299
+ # @return [Time]
300
+ #
301
+ # @!attribute [rw] target_resolution
302
+ # The requested resolution of time steps for the returned time series
303
+ # of values. If the requested target resolution is not available due
304
+ # to data not being retained we provide a best effort result by
305
+ # falling back to the most granular available resolution after the
306
+ # target resolution. There are 3 valid values.
307
+ #
308
+ # * `P1D` — 1 day
309
+ #
310
+ # * `PT1H` — 1 hour
311
+ #
312
+ # * `PT5M` — 5 minutes
313
+ # @return [String]
314
+ #
315
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/BatchGetFrameMetricDataRequest AWS API Documentation
316
+ #
317
+ class BatchGetFrameMetricDataRequest < Struct.new(
318
+ :end_time,
319
+ :frame_metrics,
320
+ :period,
321
+ :profiling_group_name,
322
+ :start_time,
323
+ :target_resolution)
324
+ SENSITIVE = []
325
+ include Aws::Structure
326
+ end
327
+
328
+ # The structure representing the BatchGetFrameMetricDataResponse.
329
+ #
330
+ # @!attribute [rw] end_time
331
+ # The end time of the time period for the returned time series values.
332
+ # This is specified using the ISO 8601 format. For example,
333
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
334
+ # 1:15:02 PM UTC.
335
+ # @return [Time]
336
+ #
337
+ # @!attribute [rw] end_times
338
+ # List of instances, or time steps, in the time series. For example,
339
+ # if the `period` is one day (`PT24H)`), and the `resolution` is five
340
+ # minutes (`PT5M`), then there are 288 `endTimes` in the list that are
341
+ # each five minutes appart.
342
+ # @return [Array<Types::TimestampStructure>]
343
+ #
344
+ # @!attribute [rw] frame_metric_data
345
+ # Details of the metrics to request a time series of values. The
346
+ # metric includes the name of the frame, the aggregation type to
347
+ # calculate the metric value for the frame, and the thread states to
348
+ # use to get the count for the metric value of the frame.
349
+ # @return [Array<Types::FrameMetricDatum>]
350
+ #
351
+ # @!attribute [rw] resolution
352
+ # Resolution or granularity of the profile data used to generate the
353
+ # time series. This is the value used to jump through time steps in a
354
+ # time series. There are 3 valid values.
355
+ #
356
+ # * `P1D` — 1 day
357
+ #
358
+ # * `PT1H` — 1 hour
359
+ #
360
+ # * `PT5M` — 5 minutes
361
+ # @return [String]
362
+ #
363
+ # @!attribute [rw] start_time
364
+ # The start time of the time period for the returned time series
365
+ # values. This is specified using the ISO 8601 format. For example,
366
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
367
+ # 1:15:02 PM UTC.
368
+ # @return [Time]
369
+ #
370
+ # @!attribute [rw] unprocessed_end_times
371
+ # List of instances which remained unprocessed. This will create a
372
+ # missing time step in the list of end times.
373
+ # @return [Hash<String,Array<Types::TimestampStructure>>]
374
+ #
375
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/BatchGetFrameMetricDataResponse AWS API Documentation
376
+ #
377
+ class BatchGetFrameMetricDataResponse < Struct.new(
378
+ :end_time,
379
+ :end_times,
380
+ :frame_metric_data,
381
+ :resolution,
382
+ :start_time,
383
+ :unprocessed_end_times)
384
+ SENSITIVE = []
385
+ include Aws::Structure
386
+ end
387
+
388
+ # Notification medium for users to get alerted for events that occur in
389
+ # application profile. We support SNS topic as a notification channel.
390
+ #
391
+ # @note When making an API call, you may pass Channel
392
+ # data as a hash:
393
+ #
394
+ # {
395
+ # event_publishers: ["AnomalyDetection"], # required, accepts AnomalyDetection
396
+ # id: "ChannelId",
397
+ # uri: "ChannelUri", # required
398
+ # }
399
+ #
400
+ # @!attribute [rw] event_publishers
401
+ # List of publishers for different type of events that may be detected
402
+ # in an application from the profile. Anomaly detection is the only
403
+ # event publisher in Profiler.
404
+ # @return [Array<String>]
405
+ #
406
+ # @!attribute [rw] id
407
+ # Unique identifier for each `Channel` in the notification
408
+ # configuration of a Profiling Group. A random UUID for channelId is
409
+ # used when adding a channel to the notification configuration if not
410
+ # specified in the request.
411
+ # @return [String]
412
+ #
413
+ # @!attribute [rw] uri
414
+ # Unique arn of the resource to be used for notifications. We support
415
+ # a valid SNS topic arn as a channel uri.
416
+ # @return [String]
417
+ #
418
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/Channel AWS API Documentation
419
+ #
420
+ class Channel < Struct.new(
421
+ :event_publishers,
422
+ :id,
423
+ :uri)
424
+ SENSITIVE = []
425
+ include Aws::Structure
426
+ end
427
+
66
428
  # The structure representing the configureAgentRequest.
67
429
  #
68
430
  # @note When making an API call, you may pass ConfigureAgentRequest
@@ -70,19 +432,60 @@ module Aws::CodeGuruProfiler
70
432
  #
71
433
  # {
72
434
  # fleet_instance_id: "FleetInstanceId",
435
+ # metadata: {
436
+ # "AgentId" => "String",
437
+ # },
73
438
  # profiling_group_name: "ProfilingGroupName", # required
74
439
  # }
75
440
  #
76
441
  # @!attribute [rw] fleet_instance_id
442
+ # A universally unique identifier (UUID) for a profiling instance. For
443
+ # example, if the profiling instance is an Amazon EC2 instance, it is
444
+ # the instance ID. If it is an AWS Fargate container, it is the
445
+ # container's task ID.
77
446
  # @return [String]
78
447
  #
448
+ # @!attribute [rw] metadata
449
+ # Metadata captured about the compute platform the agent is running
450
+ # on. It includes information about sampling and reporting. The valid
451
+ # fields are:
452
+ #
453
+ # * `COMPUTE_PLATFORM` - The compute platform on which the agent is
454
+ # running
455
+ #
456
+ # * `AGENT_ID` - The ID for an agent instance.
457
+ #
458
+ # * `AWS_REQUEST_ID` - The AWS request ID of a Lambda invocation.
459
+ #
460
+ # * `EXECUTION_ENVIRONMENT` - The execution environment a Lambda
461
+ # function is running on.
462
+ #
463
+ # * `LAMBDA_FUNCTION_ARN` - The Amazon Resource Name (ARN) that is
464
+ # used to invoke a Lambda function.
465
+ #
466
+ # * `LAMBDA_MEMORY_LIMIT_IN_MB` - The memory allocated to a Lambda
467
+ # function.
468
+ #
469
+ # * `LAMBDA_REMAINING_TIME_IN_MILLISECONDS` - The time in milliseconds
470
+ # before execution of a Lambda function times out.
471
+ #
472
+ # * `LAMBDA_TIME_GAP_BETWEEN_INVOKES_IN_MILLISECONDS` - The time in
473
+ # milliseconds between two invocations of a Lambda function.
474
+ #
475
+ # * `LAMBDA_PREVIOUS_EXECUTION_TIME_IN_MILLISECONDS` - The time in
476
+ # milliseconds for the previous Lambda invocation.
477
+ # @return [Hash<String,String>]
478
+ #
79
479
  # @!attribute [rw] profiling_group_name
480
+ # The name of the profiling group for which the configured agent is
481
+ # collecting profiling data.
80
482
  # @return [String]
81
483
  #
82
484
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ConfigureAgentRequest AWS API Documentation
83
485
  #
84
486
  class ConfigureAgentRequest < Struct.new(
85
487
  :fleet_instance_id,
488
+ :metadata,
86
489
  :profiling_group_name)
87
490
  SENSITIVE = []
88
491
  include Aws::Structure
@@ -91,6 +494,12 @@ module Aws::CodeGuruProfiler
91
494
  # The structure representing the configureAgentResponse.
92
495
  #
93
496
  # @!attribute [rw] configuration
497
+ # An [ `AgentConfiguration` ][1] object that specifies if an agent
498
+ # profiles or not and for how long to return profiling data.
499
+ #
500
+ #
501
+ #
502
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_AgentConfiguration.html
94
503
  # @return [Types::AgentConfiguration]
95
504
  #
96
505
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ConfigureAgentResponse AWS API Documentation
@@ -126,34 +535,51 @@ module Aws::CodeGuruProfiler
126
535
  # profiling_enabled: false, # required
127
536
  # },
128
537
  # client_token: "ClientToken", # required
538
+ # compute_platform: "AWSLambda", # accepts AWSLambda, Default
129
539
  # profiling_group_name: "ProfilingGroupName", # required
540
+ # tags: {
541
+ # "String" => "String",
542
+ # },
130
543
  # }
131
544
  #
132
545
  # @!attribute [rw] agent_orchestration_config
133
- # The agent orchestration configuration.
546
+ # Specifies whether profiling is enabled or disabled for the created
547
+ # profiling group.
134
548
  # @return [Types::AgentOrchestrationConfig]
135
549
  #
136
550
  # @!attribute [rw] client_token
137
- # Unique, case-sensitive identifier that you provide to ensure the
138
- # idempotency of the request.
139
- #
140
- # This parameter specifies a unique identifier for the new profiling
141
- # group that helps ensure idempotency.
551
+ # Amazon CodeGuru Profiler uses this universally unique identifier
552
+ # (UUID) to prevent the accidental creation of duplicate profiling
553
+ # groups if there are failures and retries.
142
554
  #
143
555
  # **A suitable default value is auto-generated.** You should normally
144
556
  # not need to pass this option.
145
557
  # @return [String]
146
558
  #
559
+ # @!attribute [rw] compute_platform
560
+ # The compute platform of the profiling group. Use `AWSLambda` if your
561
+ # application runs on AWS Lambda. Use `Default` if your application
562
+ # runs on a compute platform that is not AWS Lambda, such an Amazon
563
+ # EC2 instance, an on-premises server, or a different platform. If not
564
+ # specified, `Default` is used.
565
+ # @return [String]
566
+ #
147
567
  # @!attribute [rw] profiling_group_name
148
- # The name of the profiling group.
568
+ # The name of the profiling group to create.
149
569
  # @return [String]
150
570
  #
571
+ # @!attribute [rw] tags
572
+ # A list of tags to add to the created profiling group.
573
+ # @return [Hash<String,String>]
574
+ #
151
575
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/CreateProfilingGroupRequest AWS API Documentation
152
576
  #
153
577
  class CreateProfilingGroupRequest < Struct.new(
154
578
  :agent_orchestration_config,
155
579
  :client_token,
156
- :profiling_group_name)
580
+ :compute_platform,
581
+ :profiling_group_name,
582
+ :tags)
157
583
  SENSITIVE = []
158
584
  include Aws::Structure
159
585
  end
@@ -161,7 +587,12 @@ module Aws::CodeGuruProfiler
161
587
  # The structure representing the createProfilingGroupResponse.
162
588
  #
163
589
  # @!attribute [rw] profiling_group
164
- # Information about the new profiling group
590
+ # The returned [ `ProfilingGroupDescription` ][1] object that contains
591
+ # information about the created profiling group.
592
+ #
593
+ #
594
+ #
595
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ProfilingGroupDescription.html
165
596
  # @return [Types::ProfilingGroupDescription]
166
597
  #
167
598
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/CreateProfilingGroupResponse AWS API Documentation
@@ -182,7 +613,7 @@ module Aws::CodeGuruProfiler
182
613
  # }
183
614
  #
184
615
  # @!attribute [rw] profiling_group_name
185
- # The profiling group name to delete.
616
+ # The name of the profiling group to delete.
186
617
  # @return [String]
187
618
  #
188
619
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/DeleteProfilingGroupRequest AWS API Documentation
@@ -209,7 +640,7 @@ module Aws::CodeGuruProfiler
209
640
  # }
210
641
  #
211
642
  # @!attribute [rw] profiling_group_name
212
- # The profiling group name.
643
+ # The name of the profiling group to get information about.
213
644
  # @return [String]
214
645
  #
215
646
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/DescribeProfilingGroupRequest AWS API Documentation
@@ -223,7 +654,12 @@ module Aws::CodeGuruProfiler
223
654
  # The structure representing the describeProfilingGroupResponse.
224
655
  #
225
656
  # @!attribute [rw] profiling_group
226
- # Information about a profiling group.
657
+ # The returned [ `ProfilingGroupDescription` ][1] object that contains
658
+ # information about the requested profiling group.
659
+ #
660
+ #
661
+ #
662
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ProfilingGroupDescription.html
227
663
  # @return [Types::ProfilingGroupDescription]
228
664
  #
229
665
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/DescribeProfilingGroupResponse AWS API Documentation
@@ -234,7 +670,228 @@ module Aws::CodeGuruProfiler
234
670
  include Aws::Structure
235
671
  end
236
672
 
237
- # The structure representing the getPolicyRequest.
673
+ # Information about potential recommendations that might be created from
674
+ # the analysis of profiling data.
675
+ #
676
+ # @!attribute [rw] id
677
+ # The universally unique identifier (UUID) of the recommendation
678
+ # report.
679
+ # @return [String]
680
+ #
681
+ # @!attribute [rw] profile_end_time
682
+ # The end time of the period during which the metric is flagged as
683
+ # anomalous. This is specified using the ISO 8601 format. For example,
684
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
685
+ # 1:15:02 PM UTC.
686
+ # @return [Time]
687
+ #
688
+ # @!attribute [rw] profile_start_time
689
+ # The start time of the profile the analysis data is about. This is
690
+ # specified using the ISO 8601 format. For example,
691
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
692
+ # 1:15:02 PM UTC.
693
+ # @return [Time]
694
+ #
695
+ # @!attribute [rw] profiling_group_name
696
+ # The name of the profiling group that is associated with the analysis
697
+ # data.
698
+ # @return [String]
699
+ #
700
+ # @!attribute [rw] total_number_of_findings
701
+ # The total number of different recommendations that were found by the
702
+ # analysis.
703
+ # @return [Integer]
704
+ #
705
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/FindingsReportSummary AWS API Documentation
706
+ #
707
+ class FindingsReportSummary < Struct.new(
708
+ :id,
709
+ :profile_end_time,
710
+ :profile_start_time,
711
+ :profiling_group_name,
712
+ :total_number_of_findings)
713
+ SENSITIVE = []
714
+ include Aws::Structure
715
+ end
716
+
717
+ # The frame name, metric type, and thread states. These are used to
718
+ # derive the value of the metric for the frame.
719
+ #
720
+ # @note When making an API call, you may pass FrameMetric
721
+ # data as a hash:
722
+ #
723
+ # {
724
+ # frame_name: "String", # required
725
+ # thread_states: ["String"], # required
726
+ # type: "AggregatedRelativeTotalTime", # required, accepts AggregatedRelativeTotalTime
727
+ # }
728
+ #
729
+ # @!attribute [rw] frame_name
730
+ # Name of the method common across the multiple occurrences of a frame
731
+ # in an application profile.
732
+ # @return [String]
733
+ #
734
+ # @!attribute [rw] thread_states
735
+ # List of application runtime thread states used to get the counts for
736
+ # a frame a derive a metric value.
737
+ # @return [Array<String>]
738
+ #
739
+ # @!attribute [rw] type
740
+ # A type of aggregation that specifies how a metric for a frame is
741
+ # analyzed. The supported value `AggregatedRelativeTotalTime` is an
742
+ # aggregation of the metric value for one frame that is calculated
743
+ # across the occurrences of all frames in a profile.
744
+ # @return [String]
745
+ #
746
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/FrameMetric AWS API Documentation
747
+ #
748
+ class FrameMetric < Struct.new(
749
+ :frame_name,
750
+ :thread_states,
751
+ :type)
752
+ SENSITIVE = []
753
+ include Aws::Structure
754
+ end
755
+
756
+ # Information about a frame metric and its values.
757
+ #
758
+ # @!attribute [rw] frame_metric
759
+ # The frame name, metric type, and thread states. These are used to
760
+ # derive the value of the metric for the frame.
761
+ # @return [Types::FrameMetric]
762
+ #
763
+ # @!attribute [rw] values
764
+ # A list of values that are associated with a frame metric.
765
+ # @return [Array<Float>]
766
+ #
767
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/FrameMetricDatum AWS API Documentation
768
+ #
769
+ class FrameMetricDatum < Struct.new(
770
+ :frame_metric,
771
+ :values)
772
+ SENSITIVE = []
773
+ include Aws::Structure
774
+ end
775
+
776
+ # The structure representing the GetFindingsReportAccountSummaryRequest.
777
+ #
778
+ # @note When making an API call, you may pass GetFindingsReportAccountSummaryRequest
779
+ # data as a hash:
780
+ #
781
+ # {
782
+ # daily_reports_only: false,
783
+ # max_results: 1,
784
+ # next_token: "PaginationToken",
785
+ # }
786
+ #
787
+ # @!attribute [rw] daily_reports_only
788
+ # A `Boolean` value indicating whether to only return reports from
789
+ # daily profiles. If set to `True`, only analysis data from daily
790
+ # profiles is returned. If set to `False`, analysis data is returned
791
+ # from smaller time windows (for example, one hour).
792
+ # @return [Boolean]
793
+ #
794
+ # @!attribute [rw] max_results
795
+ # The maximum number of results returned by `
796
+ # GetFindingsReportAccountSummary` in paginated output. When this
797
+ # parameter is used, `GetFindingsReportAccountSummary` only returns
798
+ # `maxResults` results in a single page along with a `nextToken`
799
+ # response element. The remaining results of the initial request can
800
+ # be seen by sending another `GetFindingsReportAccountSummary` request
801
+ # with the returned `nextToken` value.
802
+ # @return [Integer]
803
+ #
804
+ # @!attribute [rw] next_token
805
+ # The `nextToken` value returned from a previous paginated
806
+ # `GetFindingsReportAccountSummary` request where `maxResults` was
807
+ # used and the results exceeded the value of that parameter.
808
+ # Pagination continues from the end of the previous results that
809
+ # returned the `nextToken` value.
810
+ #
811
+ # <note markdown="1"> This token should be treated as an opaque identifier that is only
812
+ # used to retrieve the next items in a list and not for other
813
+ # programmatic purposes.
814
+ #
815
+ # </note>
816
+ # @return [String]
817
+ #
818
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetFindingsReportAccountSummaryRequest AWS API Documentation
819
+ #
820
+ class GetFindingsReportAccountSummaryRequest < Struct.new(
821
+ :daily_reports_only,
822
+ :max_results,
823
+ :next_token)
824
+ SENSITIVE = []
825
+ include Aws::Structure
826
+ end
827
+
828
+ # The structure representing the
829
+ # GetFindingsReportAccountSummaryResponse.
830
+ #
831
+ # @!attribute [rw] next_token
832
+ # The `nextToken` value to include in a future
833
+ # `GetFindingsReportAccountSummary` request. When the results of a
834
+ # `GetFindingsReportAccountSummary` request exceed `maxResults`, this
835
+ # value can be used to retrieve the next page of results. This value
836
+ # is `null` when there are no more results to return.
837
+ # @return [String]
838
+ #
839
+ # @!attribute [rw] report_summaries
840
+ # The return list of [ `FindingsReportSummary` ][1] objects taht
841
+ # contain summaries of analysis results for all profiling groups in
842
+ # your AWS account.
843
+ #
844
+ #
845
+ #
846
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_FindingsReportSummary.html
847
+ # @return [Array<Types::FindingsReportSummary>]
848
+ #
849
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetFindingsReportAccountSummaryResponse AWS API Documentation
850
+ #
851
+ class GetFindingsReportAccountSummaryResponse < Struct.new(
852
+ :next_token,
853
+ :report_summaries)
854
+ SENSITIVE = []
855
+ include Aws::Structure
856
+ end
857
+
858
+ # The structure representing the GetNotificationConfigurationRequest.
859
+ #
860
+ # @note When making an API call, you may pass GetNotificationConfigurationRequest
861
+ # data as a hash:
862
+ #
863
+ # {
864
+ # profiling_group_name: "ProfilingGroupName", # required
865
+ # }
866
+ #
867
+ # @!attribute [rw] profiling_group_name
868
+ # The name of the profiling group we want to get the notification
869
+ # configuration for.
870
+ # @return [String]
871
+ #
872
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetNotificationConfigurationRequest AWS API Documentation
873
+ #
874
+ class GetNotificationConfigurationRequest < Struct.new(
875
+ :profiling_group_name)
876
+ SENSITIVE = []
877
+ include Aws::Structure
878
+ end
879
+
880
+ # The structure representing the GetNotificationConfigurationResponse.
881
+ #
882
+ # @!attribute [rw] notification_configuration
883
+ # The current notification configuration for this profiling group.
884
+ # @return [Types::NotificationConfiguration]
885
+ #
886
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetNotificationConfigurationResponse AWS API Documentation
887
+ #
888
+ class GetNotificationConfigurationResponse < Struct.new(
889
+ :notification_configuration)
890
+ SENSITIVE = []
891
+ include Aws::Structure
892
+ end
893
+
894
+ # The structure representing the `getPolicyRequest`.
238
895
  #
239
896
  # @note When making an API call, you may pass GetPolicyRequest
240
897
  # data as a hash:
@@ -255,14 +912,15 @@ module Aws::CodeGuruProfiler
255
912
  include Aws::Structure
256
913
  end
257
914
 
258
- # The structure representing the getPolicyResponse.
915
+ # The structure representing the `getPolicyResponse`.
259
916
  #
260
917
  # @!attribute [rw] policy
261
- # The resource-based policy attached to the `ProfilingGroup`.
918
+ # The JSON-formatted resource-based policy attached to the
919
+ # `ProfilingGroup`.
262
920
  # @return [String]
263
921
  #
264
922
  # @!attribute [rw] revision_id
265
- # A unique identifier for the current revision of the policy.
923
+ # A unique identifier for the current revision of the returned policy.
266
924
  # @return [String]
267
925
  #
268
926
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetPolicyResponse AWS API Documentation
@@ -289,25 +947,37 @@ module Aws::CodeGuruProfiler
289
947
  # }
290
948
  #
291
949
  # @!attribute [rw] accept
292
- # The format of the profile to return. You can choose
293
- # `application/json` or the default `application/x-amzn-ion`.
950
+ # The format of the returned profiling data. The format maps to the
951
+ # `Accept` and `Content-Type` headers of the HTTP request. You can
952
+ # specify one of the following: or the default .
953
+ #
954
+ # <ul> <li> <p> <code>application/json</code> — standard JSON format </p> </li> <li> <p> <code>application/x-amzn-ion</code> — the Amazon Ion data format. For more information, see <a href="http://amzn.github.io/ion-docs/">Amazon Ion</a>. </p> </li> </ul>
294
955
  # @return [String]
295
956
  #
296
957
  # @!attribute [rw] end_time
297
- # You must specify exactly two of the following parameters:
298
- # `startTime`, `period`, and `endTime`.
958
+ # The end time of the requested profile. Specify using the ISO 8601
959
+ # format. For example, 2020-06-01T13:15:02.001Z represents 1
960
+ # millisecond past June 1, 2020 1:15:02 PM UTC.
961
+ #
962
+ # If you specify `endTime`, then you must also specify `period` or
963
+ # `startTime`, but not both.
299
964
  # @return [Time]
300
965
  #
301
966
  # @!attribute [rw] max_depth
302
- # The maximum depth of the graph.
967
+ # The maximum depth of the stacks in the code that is represented in
968
+ # the aggregated profile. For example, if CodeGuru Profiler finds a
969
+ # method `A`, which calls method `B`, which calls method `C`, which
970
+ # calls method `D`, then the depth is 4. If the `maxDepth` is set to
971
+ # 2, then the aggregated profile contains representations of methods
972
+ # `A` and `B`.
303
973
  # @return [Integer]
304
974
  #
305
975
  # @!attribute [rw] period
306
- # The period of the profile to get. The time range must be in the past
307
- # and not longer than one week.
976
+ # Used with `startTime` or `endTime` to specify the time range for the
977
+ # returned aggregated profile. Specify using the ISO 8601 format. For
978
+ # example, `P1DT1H1M1S`.
308
979
  #
309
- # You must specify exactly two of the following parameters:
310
- # `startTime`, `period`, and `endTime`.
980
+ # <p> To get the latest aggregated profile, specify only <code>period</code>. </p>
311
981
  # @return [String]
312
982
  #
313
983
  # @!attribute [rw] profiling_group_name
@@ -315,10 +985,11 @@ module Aws::CodeGuruProfiler
315
985
  # @return [String]
316
986
  #
317
987
  # @!attribute [rw] start_time
318
- # The start time of the profile to get.
988
+ # The start time of the profile to get. Specify using the ISO 8601
989
+ # format. For example, 2020-06-01T13:15:02.001Z represents 1
990
+ # millisecond past June 1, 2020 1:15:02 PM UTC.
319
991
  #
320
- # You must specify exactly two of the following parameters:
321
- # `startTime`, `period`, and `endTime`.
992
+ # <p> If you specify <code>startTime</code>, then you must also specify <code>period</code> or <code>endTime</code>, but not both. </p>
322
993
  # @return [Time]
323
994
  #
324
995
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetProfileRequest AWS API Documentation
@@ -336,39 +1007,247 @@ module Aws::CodeGuruProfiler
336
1007
 
337
1008
  # The structure representing the getProfileResponse.
338
1009
  #
339
- # @!attribute [rw] content_encoding
340
- # The content encoding of the profile.
341
- # @return [String]
1010
+ # @!attribute [rw] content_encoding
1011
+ # The content encoding of the profile.
1012
+ # @return [String]
1013
+ #
1014
+ # @!attribute [rw] content_type
1015
+ # The content type of the profile in the payload. It is either
1016
+ # `application/json` or the default `application/x-amzn-ion`.
1017
+ # @return [String]
1018
+ #
1019
+ # @!attribute [rw] profile
1020
+ # Information about the profile.
1021
+ # @return [String]
1022
+ #
1023
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetProfileResponse AWS API Documentation
1024
+ #
1025
+ class GetProfileResponse < Struct.new(
1026
+ :content_encoding,
1027
+ :content_type,
1028
+ :profile)
1029
+ SENSITIVE = []
1030
+ include Aws::Structure
1031
+ end
1032
+
1033
+ # The structure representing the GetRecommendationsRequest.
1034
+ #
1035
+ # @note When making an API call, you may pass GetRecommendationsRequest
1036
+ # data as a hash:
1037
+ #
1038
+ # {
1039
+ # end_time: Time.now, # required
1040
+ # locale: "Locale",
1041
+ # profiling_group_name: "ProfilingGroupName", # required
1042
+ # start_time: Time.now, # required
1043
+ # }
1044
+ #
1045
+ # @!attribute [rw] end_time
1046
+ # The start time of the profile to get analysis data about. You must
1047
+ # specify `startTime` and `endTime`. This is specified using the ISO
1048
+ # 8601 format. For example, 2020-06-01T13:15:02.001Z represents 1
1049
+ # millisecond past June 1, 2020 1:15:02 PM UTC.
1050
+ # @return [Time]
1051
+ #
1052
+ # @!attribute [rw] locale
1053
+ # The language used to provide analysis. Specify using a string that
1054
+ # is one of the following `BCP 47` language codes.
1055
+ #
1056
+ # * `de-DE` - German, Germany
1057
+ #
1058
+ # * `en-GB` - English, United Kingdom
1059
+ #
1060
+ # * `en-US` - English, United States
1061
+ #
1062
+ # * `es-ES` - Spanish, Spain
1063
+ #
1064
+ # * `fr-FR` - French, France
1065
+ #
1066
+ # * `it-IT` - Italian, Italy
1067
+ #
1068
+ # * `ja-JP` - Japanese, Japan
1069
+ #
1070
+ # * `ko-KR` - Korean, Republic of Korea
1071
+ #
1072
+ # * `pt-BR` - Portugese, Brazil
1073
+ #
1074
+ # * `zh-CN` - Chinese, China
1075
+ #
1076
+ # * `zh-TW` - Chinese, Taiwan
1077
+ # @return [String]
1078
+ #
1079
+ # @!attribute [rw] profiling_group_name
1080
+ # The name of the profiling group to get analysis data about.
1081
+ # @return [String]
1082
+ #
1083
+ # @!attribute [rw] start_time
1084
+ # The end time of the profile to get analysis data about. You must
1085
+ # specify `startTime` and `endTime`. This is specified using the ISO
1086
+ # 8601 format. For example, 2020-06-01T13:15:02.001Z represents 1
1087
+ # millisecond past June 1, 2020 1:15:02 PM UTC.
1088
+ # @return [Time]
1089
+ #
1090
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetRecommendationsRequest AWS API Documentation
1091
+ #
1092
+ class GetRecommendationsRequest < Struct.new(
1093
+ :end_time,
1094
+ :locale,
1095
+ :profiling_group_name,
1096
+ :start_time)
1097
+ SENSITIVE = []
1098
+ include Aws::Structure
1099
+ end
1100
+
1101
+ # The structure representing the GetRecommendationsResponse.
1102
+ #
1103
+ # @!attribute [rw] anomalies
1104
+ # The list of anomalies that the analysis has found for this profile.
1105
+ # @return [Array<Types::Anomaly>]
1106
+ #
1107
+ # @!attribute [rw] profile_end_time
1108
+ # The end time of the profile the analysis data is about. This is
1109
+ # specified using the ISO 8601 format. For example,
1110
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
1111
+ # 1:15:02 PM UTC.
1112
+ # @return [Time]
1113
+ #
1114
+ # @!attribute [rw] profile_start_time
1115
+ # The start time of the profile the analysis data is about. This is
1116
+ # specified using the ISO 8601 format. For example,
1117
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
1118
+ # 1:15:02 PM UTC.
1119
+ # @return [Time]
1120
+ #
1121
+ # @!attribute [rw] profiling_group_name
1122
+ # The name of the profiling group the analysis data is about.
1123
+ # @return [String]
1124
+ #
1125
+ # @!attribute [rw] recommendations
1126
+ # The list of recommendations that the analysis found for this
1127
+ # profile.
1128
+ # @return [Array<Types::Recommendation>]
1129
+ #
1130
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetRecommendationsResponse AWS API Documentation
1131
+ #
1132
+ class GetRecommendationsResponse < Struct.new(
1133
+ :anomalies,
1134
+ :profile_end_time,
1135
+ :profile_start_time,
1136
+ :profiling_group_name,
1137
+ :recommendations)
1138
+ SENSITIVE = []
1139
+ include Aws::Structure
1140
+ end
1141
+
1142
+ # The server encountered an internal error and is unable to complete the
1143
+ # request.
1144
+ #
1145
+ # @!attribute [rw] message
1146
+ # @return [String]
1147
+ #
1148
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/InternalServerException AWS API Documentation
1149
+ #
1150
+ class InternalServerException < Struct.new(
1151
+ :message)
1152
+ SENSITIVE = []
1153
+ include Aws::Structure
1154
+ end
1155
+
1156
+ # The structure representing the ListFindingsReportsRequest.
1157
+ #
1158
+ # @note When making an API call, you may pass ListFindingsReportsRequest
1159
+ # data as a hash:
1160
+ #
1161
+ # {
1162
+ # daily_reports_only: false,
1163
+ # end_time: Time.now, # required
1164
+ # max_results: 1,
1165
+ # next_token: "PaginationToken",
1166
+ # profiling_group_name: "ProfilingGroupName", # required
1167
+ # start_time: Time.now, # required
1168
+ # }
1169
+ #
1170
+ # @!attribute [rw] daily_reports_only
1171
+ # A `Boolean` value indicating whether to only return reports from
1172
+ # daily profiles. If set to `True`, only analysis data from daily
1173
+ # profiles is returned. If set to `False`, analysis data is returned
1174
+ # from smaller time windows (for example, one hour).
1175
+ # @return [Boolean]
1176
+ #
1177
+ # @!attribute [rw] end_time
1178
+ # The end time of the profile to get analysis data about. You must
1179
+ # specify `startTime` and `endTime`. This is specified using the ISO
1180
+ # 8601 format. For example, 2020-06-01T13:15:02.001Z represents 1
1181
+ # millisecond past June 1, 2020 1:15:02 PM UTC.
1182
+ # @return [Time]
1183
+ #
1184
+ # @!attribute [rw] max_results
1185
+ # The maximum number of report results returned by
1186
+ # `ListFindingsReports` in paginated output. When this parameter is
1187
+ # used, `ListFindingsReports` only returns `maxResults` results in a
1188
+ # single page along with a `nextToken` response element. The remaining
1189
+ # results of the initial request can be seen by sending another
1190
+ # `ListFindingsReports` request with the returned `nextToken` value.
1191
+ # @return [Integer]
1192
+ #
1193
+ # @!attribute [rw] next_token
1194
+ # The `nextToken` value returned from a previous paginated
1195
+ # `ListFindingsReportsRequest` request where `maxResults` was used and
1196
+ # the results exceeded the value of that parameter. Pagination
1197
+ # continues from the end of the previous results that returned the
1198
+ # `nextToken` value.
1199
+ #
1200
+ # <note markdown="1"> This token should be treated as an opaque identifier that is only
1201
+ # used to retrieve the next items in a list and not for other
1202
+ # programmatic purposes.
342
1203
  #
343
- # @!attribute [rw] content_type
344
- # The content type of the profile in the payload. It is either
345
- # `application/json` or the default `application/x-amzn-ion`.
1204
+ # </note>
346
1205
  # @return [String]
347
1206
  #
348
- # @!attribute [rw] profile
349
- # Information about the profile.
1207
+ # @!attribute [rw] profiling_group_name
1208
+ # The name of the profiling group from which to search for analysis
1209
+ # data.
350
1210
  # @return [String]
351
1211
  #
352
- # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetProfileResponse AWS API Documentation
1212
+ # @!attribute [rw] start_time
1213
+ # The start time of the profile to get analysis data about. You must
1214
+ # specify `startTime` and `endTime`. This is specified using the ISO
1215
+ # 8601 format. For example, 2020-06-01T13:15:02.001Z represents 1
1216
+ # millisecond past June 1, 2020 1:15:02 PM UTC.
1217
+ # @return [Time]
353
1218
  #
354
- class GetProfileResponse < Struct.new(
355
- :content_encoding,
356
- :content_type,
357
- :profile)
1219
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ListFindingsReportsRequest AWS API Documentation
1220
+ #
1221
+ class ListFindingsReportsRequest < Struct.new(
1222
+ :daily_reports_only,
1223
+ :end_time,
1224
+ :max_results,
1225
+ :next_token,
1226
+ :profiling_group_name,
1227
+ :start_time)
358
1228
  SENSITIVE = []
359
1229
  include Aws::Structure
360
1230
  end
361
1231
 
362
- # The server encountered an internal error and is unable to complete the
363
- # request.
1232
+ # The structure representing the ListFindingsReportsResponse.
364
1233
  #
365
- # @!attribute [rw] message
1234
+ # @!attribute [rw] findings_report_summaries
1235
+ # The list of analysis results summaries.
1236
+ # @return [Array<Types::FindingsReportSummary>]
1237
+ #
1238
+ # @!attribute [rw] next_token
1239
+ # The `nextToken` value to include in a future `ListFindingsReports`
1240
+ # request. When the results of a `ListFindingsReports` request exceed
1241
+ # `maxResults`, this value can be used to retrieve the next page of
1242
+ # results. This value is `null` when there are no more results to
1243
+ # return.
366
1244
  # @return [String]
367
1245
  #
368
- # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/InternalServerException AWS API Documentation
1246
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ListFindingsReportsResponse AWS API Documentation
369
1247
  #
370
- class InternalServerException < Struct.new(
371
- :message)
1248
+ class ListFindingsReportsResponse < Struct.new(
1249
+ :findings_report_summaries,
1250
+ :next_token)
372
1251
  SENSITIVE = []
373
1252
  include Aws::Structure
374
1253
  end
@@ -421,7 +1300,15 @@ module Aws::CodeGuruProfiler
421
1300
  # @return [String]
422
1301
  #
423
1302
  # @!attribute [rw] period
424
- # The aggregation period.
1303
+ # The aggregation period. This specifies the period during which an
1304
+ # aggregation profile collects posted agent profiles for a profiling
1305
+ # group. There are 3 valid values.
1306
+ #
1307
+ # * `P1D` — 1 day
1308
+ #
1309
+ # * `PT1H` — 1 hour
1310
+ #
1311
+ # * `PT5M` — 5 minutes
425
1312
  # @return [String]
426
1313
  #
427
1314
  # @!attribute [rw] profiling_group_name
@@ -482,7 +1369,15 @@ module Aws::CodeGuruProfiler
482
1369
  # }
483
1370
  #
484
1371
  # @!attribute [rw] include_description
485
- # A Boolean value indicating whether to include a description.
1372
+ # A `Boolean` value indicating whether to include a description. If
1373
+ # `true`, then a list of [ `ProfilingGroupDescription` ][1] objects
1374
+ # that contain detailed information about profiling groups is
1375
+ # returned. If `false`, then a list of profiling group names is
1376
+ # returned.
1377
+ #
1378
+ #
1379
+ #
1380
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ProfilingGroupDescription.html
486
1381
  # @return [Boolean]
487
1382
  #
488
1383
  # @!attribute [rw] max_results
@@ -529,11 +1424,24 @@ module Aws::CodeGuruProfiler
529
1424
  # @return [String]
530
1425
  #
531
1426
  # @!attribute [rw] profiling_group_names
532
- # Information about profiling group names.
1427
+ # A returned list of profiling group names. A list of the names is
1428
+ # returned only if `includeDescription` is `false`, otherwise a list
1429
+ # of [ `ProfilingGroupDescription` ][1] objects is returned.
1430
+ #
1431
+ #
1432
+ #
1433
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ProfilingGroupDescription.html
533
1434
  # @return [Array<String>]
534
1435
  #
535
1436
  # @!attribute [rw] profiling_groups
536
- # Information about profiling groups.
1437
+ # A returned list [ `ProfilingGroupDescription` ][1] objects. A list
1438
+ # of [ `ProfilingGroupDescription` ][1] objects is returned only if
1439
+ # `includeDescription` is `true`, otherwise a list of profiling group
1440
+ # names is returned.
1441
+ #
1442
+ #
1443
+ #
1444
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ProfilingGroupDescription.html
537
1445
  # @return [Array<Types::ProfilingGroupDescription>]
538
1446
  #
539
1447
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ListProfilingGroupsResponse AWS API Documentation
@@ -546,6 +1454,165 @@ module Aws::CodeGuruProfiler
546
1454
  include Aws::Structure
547
1455
  end
548
1456
 
1457
+ # @note When making an API call, you may pass ListTagsForResourceRequest
1458
+ # data as a hash:
1459
+ #
1460
+ # {
1461
+ # resource_arn: "ProfilingGroupArn", # required
1462
+ # }
1463
+ #
1464
+ # @!attribute [rw] resource_arn
1465
+ # The Amazon Resource Name (ARN) of the resource that contains the
1466
+ # tags to return.
1467
+ # @return [String]
1468
+ #
1469
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ListTagsForResourceRequest AWS API Documentation
1470
+ #
1471
+ class ListTagsForResourceRequest < Struct.new(
1472
+ :resource_arn)
1473
+ SENSITIVE = []
1474
+ include Aws::Structure
1475
+ end
1476
+
1477
+ # @!attribute [rw] tags
1478
+ # The list of tags assigned to the specified resource. This is the
1479
+ # list of tags returned in the response.
1480
+ # @return [Hash<String,String>]
1481
+ #
1482
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ListTagsForResourceResponse AWS API Documentation
1483
+ #
1484
+ class ListTagsForResourceResponse < Struct.new(
1485
+ :tags)
1486
+ SENSITIVE = []
1487
+ include Aws::Structure
1488
+ end
1489
+
1490
+ # The part of a profile that contains a recommendation found during
1491
+ # analysis.
1492
+ #
1493
+ # @!attribute [rw] frame_address
1494
+ # The location in the profiling graph that contains a recommendation
1495
+ # found during analysis.
1496
+ # @return [String]
1497
+ #
1498
+ # @!attribute [rw] target_frames_index
1499
+ # The target frame that triggered a match.
1500
+ # @return [Integer]
1501
+ #
1502
+ # @!attribute [rw] threshold_breach_value
1503
+ # The value in the profile data that exceeded the recommendation
1504
+ # threshold.
1505
+ # @return [Float]
1506
+ #
1507
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/Match AWS API Documentation
1508
+ #
1509
+ class Match < Struct.new(
1510
+ :frame_address,
1511
+ :target_frames_index,
1512
+ :threshold_breach_value)
1513
+ SENSITIVE = []
1514
+ include Aws::Structure
1515
+ end
1516
+
1517
+ # Details about the metric that the analysis used when it detected the
1518
+ # anomaly. The metric what is analyzed to create recommendations. It
1519
+ # includes the name of the frame that was analyzed and the type and
1520
+ # thread states used to derive the metric value for that frame.
1521
+ #
1522
+ # @!attribute [rw] frame_name
1523
+ # The name of the method that appears as a frame in any stack in a
1524
+ # profile.
1525
+ # @return [String]
1526
+ #
1527
+ # @!attribute [rw] thread_states
1528
+ # The list of application runtime thread states that is used to
1529
+ # calculate the metric value for the frame.
1530
+ # @return [Array<String>]
1531
+ #
1532
+ # @!attribute [rw] type
1533
+ # A type that specifies how a metric for a frame is analyzed. The
1534
+ # supported value `AggregatedRelativeTotalTime` is an aggregation of
1535
+ # the metric value for one frame that is calculated across the
1536
+ # occurences of all frames in a profile.
1537
+ # @return [String]
1538
+ #
1539
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/Metric AWS API Documentation
1540
+ #
1541
+ class Metric < Struct.new(
1542
+ :frame_name,
1543
+ :thread_states,
1544
+ :type)
1545
+ SENSITIVE = []
1546
+ include Aws::Structure
1547
+ end
1548
+
1549
+ # The configuration for notifications stored for each profiling group.
1550
+ # This includes up to to two channels and a list of event publishers
1551
+ # associated with each channel.
1552
+ #
1553
+ # @!attribute [rw] channels
1554
+ # List of up to two channels to be used for sending notifications for
1555
+ # events detected from the application profile.
1556
+ # @return [Array<Types::Channel>]
1557
+ #
1558
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/NotificationConfiguration AWS API Documentation
1559
+ #
1560
+ class NotificationConfiguration < Struct.new(
1561
+ :channels)
1562
+ SENSITIVE = []
1563
+ include Aws::Structure
1564
+ end
1565
+
1566
+ # A set of rules used to make a recommendation during an analysis.
1567
+ #
1568
+ # @!attribute [rw] counters_to_aggregate
1569
+ # A list of the different counters used to determine if there is a
1570
+ # match.
1571
+ # @return [Array<String>]
1572
+ #
1573
+ # @!attribute [rw] description
1574
+ # The description of the recommendation. This explains a potential
1575
+ # inefficiency in a profiled application.
1576
+ # @return [String]
1577
+ #
1578
+ # @!attribute [rw] id
1579
+ # The universally unique identifier (UUID) of this pattern.
1580
+ # @return [String]
1581
+ #
1582
+ # @!attribute [rw] name
1583
+ # The name for this pattern.
1584
+ # @return [String]
1585
+ #
1586
+ # @!attribute [rw] resolution_steps
1587
+ # A string that contains the steps recommended to address the
1588
+ # potential inefficiency.
1589
+ # @return [String]
1590
+ #
1591
+ # @!attribute [rw] target_frames
1592
+ # A list of frame names that were searched during the analysis that
1593
+ # generated a recommendation.
1594
+ # @return [Array<Array<String>>]
1595
+ #
1596
+ # @!attribute [rw] threshold_percent
1597
+ # The percentage of time an application spends in one method that
1598
+ # triggers a recommendation. The percentage of time is the same as the
1599
+ # percentage of the total gathered sample counts during analysis.
1600
+ # @return [Float]
1601
+ #
1602
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/Pattern AWS API Documentation
1603
+ #
1604
+ class Pattern < Struct.new(
1605
+ :counters_to_aggregate,
1606
+ :description,
1607
+ :id,
1608
+ :name,
1609
+ :resolution_steps,
1610
+ :target_frames,
1611
+ :threshold_percent)
1612
+ SENSITIVE = []
1613
+ include Aws::Structure
1614
+ end
1615
+
549
1616
  # The structure representing the postAgentProfileRequest.
550
1617
  #
551
1618
  # @note When making an API call, you may pass PostAgentProfileRequest
@@ -559,17 +1626,29 @@ module Aws::CodeGuruProfiler
559
1626
  # }
560
1627
  #
561
1628
  # @!attribute [rw] agent_profile
1629
+ # The submitted profiling data.
562
1630
  # @return [String]
563
1631
  #
564
1632
  # @!attribute [rw] content_type
1633
+ # The format of the submitted profiling data. The format maps to the
1634
+ # `Accept` and `Content-Type` headers of the HTTP request. You can
1635
+ # specify one of the following: or the default .
1636
+ #
1637
+ # <ul> <li> <p> <code>application/json</code> — standard JSON format </p> </li> <li> <p> <code>application/x-amzn-ion</code> — the Amazon Ion data format. For more information, see <a href="http://amzn.github.io/ion-docs/">Amazon Ion</a>. </p> </li> </ul>
565
1638
  # @return [String]
566
1639
  #
567
1640
  # @!attribute [rw] profile_token
1641
+ # Amazon CodeGuru Profiler uses this universally unique identifier
1642
+ # (UUID) to prevent the accidental submission of duplicate profiling
1643
+ # data if there are failures and retries.
1644
+ #
568
1645
  # **A suitable default value is auto-generated.** You should normally
569
1646
  # not need to pass this option.
570
1647
  # @return [String]
571
1648
  #
572
1649
  # @!attribute [rw] profiling_group_name
1650
+ # The name of the profiling group with the aggregated profile that
1651
+ # receives the submitted profiling data.
573
1652
  # @return [String]
574
1653
  #
575
1654
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/PostAgentProfileRequest AWS API Documentation
@@ -589,10 +1668,12 @@ module Aws::CodeGuruProfiler
589
1668
  #
590
1669
  class PostAgentProfileResponse < Aws::EmptyStructure; end
591
1670
 
592
- # Information about the profile time.
1671
+ # Contains the start time of a profile.
593
1672
  #
594
1673
  # @!attribute [rw] start
595
- # The start time of the profile.
1674
+ # The start time of a profile. It is specified using the ISO 8601
1675
+ # format. For example, 2020-06-01T13:15:02.001Z represents 1
1676
+ # millisecond past June 1, 2020 1:15:02 PM UTC.
596
1677
  # @return [Time]
597
1678
  #
598
1679
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ProfileTime AWS API Documentation
@@ -603,18 +1684,35 @@ module Aws::CodeGuruProfiler
603
1684
  include Aws::Structure
604
1685
  end
605
1686
 
606
- # The description of a profiling group.
1687
+ # Contains information about a profiling group.
607
1688
  #
608
1689
  # @!attribute [rw] agent_orchestration_config
1690
+ # An [ `AgentOrchestrationConfig` ][1] object that indicates if the
1691
+ # profiling group is enabled for profiled or not.
1692
+ #
1693
+ #
1694
+ #
1695
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_AgentOrchestrationConfig.html
609
1696
  # @return [Types::AgentOrchestrationConfig]
610
1697
  #
611
1698
  # @!attribute [rw] arn
612
- # The Amazon Resource Name (ARN) identifying the profiling group.
1699
+ # The Amazon Resource Name (ARN) identifying the profiling group
1700
+ # resource.
1701
+ # @return [String]
1702
+ #
1703
+ # @!attribute [rw] compute_platform
1704
+ # The compute platform of the profiling group. If it is set to
1705
+ # `AWSLambda`, then the profiled application runs on AWS Lambda. If it
1706
+ # is set to `Default`, then the profiled application runs on a compute
1707
+ # platform that is not AWS Lambda, such an Amazon EC2 instance, an
1708
+ # on-premises server, or a different platform. The default is
1709
+ # `Default`.
613
1710
  # @return [String]
614
1711
  #
615
1712
  # @!attribute [rw] created_at
616
- # The time, in milliseconds since the epoch, when the profiling group
617
- # was created.
1713
+ # The time when the profiling group was created. Specify using the ISO
1714
+ # 8601 format. For example, 2020-06-01T13:15:02.001Z represents 1
1715
+ # millisecond past June 1, 2020 1:15:02 PM UTC.
618
1716
  # @return [Time]
619
1717
  #
620
1718
  # @!attribute [rw] name
@@ -622,12 +1720,24 @@ module Aws::CodeGuruProfiler
622
1720
  # @return [String]
623
1721
  #
624
1722
  # @!attribute [rw] profiling_status
625
- # The status of the profiling group.
1723
+ # A [ `ProfilingStatus` ][1] object that includes information about
1724
+ # the last time a profile agent pinged back, the last time a profile
1725
+ # was received, and the aggregation period and start time for the most
1726
+ # recent aggregated profile.
1727
+ #
1728
+ #
1729
+ #
1730
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ProfilingStatus.html
626
1731
  # @return [Types::ProfilingStatus]
627
1732
  #
1733
+ # @!attribute [rw] tags
1734
+ # A list of the tags that belong to this profiling group.
1735
+ # @return [Hash<String,String>]
1736
+ #
628
1737
  # @!attribute [rw] updated_at
629
- # The time, in milliseconds since the epoch, when the profiling group
630
- # was last updated.
1738
+ # The date and time when the profiling group was last updated. Specify
1739
+ # using the ISO 8601 format. For example, 2020-06-01T13:15:02.001Z
1740
+ # represents 1 millisecond past June 1, 2020 1:15:02 PM UTC.
631
1741
  # @return [Time]
632
1742
  #
633
1743
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ProfilingGroupDescription AWS API Documentation
@@ -635,28 +1745,41 @@ module Aws::CodeGuruProfiler
635
1745
  class ProfilingGroupDescription < Struct.new(
636
1746
  :agent_orchestration_config,
637
1747
  :arn,
1748
+ :compute_platform,
638
1749
  :created_at,
639
1750
  :name,
640
1751
  :profiling_status,
1752
+ :tags,
641
1753
  :updated_at)
642
1754
  SENSITIVE = []
643
1755
  include Aws::Structure
644
1756
  end
645
1757
 
646
- # Information about the profiling status.
1758
+ # Profiling status includes information about the last time a profile
1759
+ # agent pinged back, the last time a profile was received, and the
1760
+ # aggregation period and start time for the most recent aggregated
1761
+ # profile.
647
1762
  #
648
1763
  # @!attribute [rw] latest_agent_orchestrated_at
649
- # The time, in milliseconds since the epoch, when the latest agent was
650
- # orchestrated.
1764
+ # The date and time when the profiling agent most recently pinged
1765
+ # back. Specify using the ISO 8601 format. For example,
1766
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
1767
+ # 1:15:02 PM UTC.
651
1768
  # @return [Time]
652
1769
  #
653
1770
  # @!attribute [rw] latest_agent_profile_reported_at
654
- # The time, in milliseconds since the epoch, when the latest agent was
655
- # reported..
1771
+ # The date and time when the most recent profile was received. Specify
1772
+ # using the ISO 8601 format. For example, 2020-06-01T13:15:02.001Z
1773
+ # represents 1 millisecond past June 1, 2020 1:15:02 PM UTC.
656
1774
  # @return [Time]
657
1775
  #
658
1776
  # @!attribute [rw] latest_aggregated_profile
659
- # The latest aggregated profile
1777
+ # An [ `AggregatedProfileTime` ][1] object that contains the
1778
+ # aggregation period and start time for an aggregated profile.
1779
+ #
1780
+ #
1781
+ #
1782
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_AggregatedProfileTime.html
660
1783
  # @return [Types::AggregatedProfileTime]
661
1784
  #
662
1785
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/ProfilingStatus AWS API Documentation
@@ -669,7 +1792,7 @@ module Aws::CodeGuruProfiler
669
1792
  include Aws::Structure
670
1793
  end
671
1794
 
672
- # The structure representing the putPermissionRequest.
1795
+ # The structure representing the `putPermissionRequest`.
673
1796
  #
674
1797
  # @note When making an API call, you may pass PutPermissionRequest
675
1798
  # data as a hash:
@@ -682,23 +1805,28 @@ module Aws::CodeGuruProfiler
682
1805
  # }
683
1806
  #
684
1807
  # @!attribute [rw] action_group
685
- # The list of actions that the users and roles can perform on the
686
- # profiling group.
1808
+ # Specifies an action group that contains permissions to add to a
1809
+ # profiling group resource. One action group is supported,
1810
+ # `agentPermissions`, which grants permission to perform actions
1811
+ # required by the profiling agent, `ConfigureAgent` and
1812
+ # `PostAgentProfile` permissions.
687
1813
  # @return [String]
688
1814
  #
689
1815
  # @!attribute [rw] principals
690
- # The list of role and user ARNs or the accountId that needs access
691
- # (wildcards are not allowed).
1816
+ # A list ARNs for the roles and users you want to grant access to the
1817
+ # profiling group. Wildcards are not are supported in the ARNs.
692
1818
  # @return [Array<String>]
693
1819
  #
694
1820
  # @!attribute [rw] profiling_group_name
695
- # The name of the profiling group.
1821
+ # The name of the profiling group to grant access to.
696
1822
  # @return [String]
697
1823
  #
698
1824
  # @!attribute [rw] revision_id
699
- # A unique identifier for the current revision of the policy. This is
700
- # required, if a policy exists for the profiling group. This is not
701
- # required when creating the policy for the first time.
1825
+ # A universally unique identifier (UUID) for the revision of the
1826
+ # policy you are adding to the profiling group. Do not specify this
1827
+ # when you add permissions to a profiling group for the first time. If
1828
+ # a policy already exists on the profiling group, you must specify the
1829
+ # `revisionId`.
702
1830
  # @return [String]
703
1831
  #
704
1832
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/PutPermissionRequest AWS API Documentation
@@ -712,14 +1840,17 @@ module Aws::CodeGuruProfiler
712
1840
  include Aws::Structure
713
1841
  end
714
1842
 
715
- # The structure representing the putPermissionResponse.
1843
+ # The structure representing the `putPermissionResponse`.
716
1844
  #
717
1845
  # @!attribute [rw] policy
718
- # The resource-based policy.
1846
+ # The JSON-formatted resource-based policy on the profiling group that
1847
+ # includes the added permissions.
719
1848
  # @return [String]
720
1849
  #
721
1850
  # @!attribute [rw] revision_id
722
- # A unique identifier for the current revision of the policy.
1851
+ # A universally unique identifier (UUID) for the revision of the
1852
+ # resource-based policy that includes the added permissions. The
1853
+ # JSON-formatted policy is in the `policy` element of the response.
723
1854
  # @return [String]
724
1855
  #
725
1856
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/PutPermissionResponse AWS API Documentation
@@ -731,7 +1862,97 @@ module Aws::CodeGuruProfiler
731
1862
  include Aws::Structure
732
1863
  end
733
1864
 
734
- # The structure representing the removePermissionRequest.
1865
+ # A potential improvement that was found from analyzing the profiling
1866
+ # data.
1867
+ #
1868
+ # @!attribute [rw] all_matches_count
1869
+ # How many different places in the profile graph triggered a match.
1870
+ # @return [Integer]
1871
+ #
1872
+ # @!attribute [rw] all_matches_sum
1873
+ # How much of the total sample count is potentially affected.
1874
+ # @return [Float]
1875
+ #
1876
+ # @!attribute [rw] end_time
1877
+ # End time of the profile that was used by this analysis. This is
1878
+ # specified using the ISO 8601 format. For example,
1879
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
1880
+ # 1:15:02 PM UTC.
1881
+ # @return [Time]
1882
+ #
1883
+ # @!attribute [rw] pattern
1884
+ # The pattern that analysis recognized in the profile to make this
1885
+ # recommendation.
1886
+ # @return [Types::Pattern]
1887
+ #
1888
+ # @!attribute [rw] start_time
1889
+ # The start time of the profile that was used by this analysis. This
1890
+ # is specified using the ISO 8601 format. For example,
1891
+ # 2020-06-01T13:15:02.001Z represents 1 millisecond past June 1, 2020
1892
+ # 1:15:02 PM UTC.
1893
+ # @return [Time]
1894
+ #
1895
+ # @!attribute [rw] top_matches
1896
+ # List of the matches with most impact.
1897
+ # @return [Array<Types::Match>]
1898
+ #
1899
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/Recommendation AWS API Documentation
1900
+ #
1901
+ class Recommendation < Struct.new(
1902
+ :all_matches_count,
1903
+ :all_matches_sum,
1904
+ :end_time,
1905
+ :pattern,
1906
+ :start_time,
1907
+ :top_matches)
1908
+ SENSITIVE = []
1909
+ include Aws::Structure
1910
+ end
1911
+
1912
+ # The structure representing the RemoveNotificationChannelRequest.
1913
+ #
1914
+ # @note When making an API call, you may pass RemoveNotificationChannelRequest
1915
+ # data as a hash:
1916
+ #
1917
+ # {
1918
+ # channel_id: "ChannelId", # required
1919
+ # profiling_group_name: "ProfilingGroupName", # required
1920
+ # }
1921
+ #
1922
+ # @!attribute [rw] channel_id
1923
+ # The id of the channel that we want to stop receiving notifications.
1924
+ # @return [String]
1925
+ #
1926
+ # @!attribute [rw] profiling_group_name
1927
+ # The name of the profiling group we want to change notification
1928
+ # configuration for.
1929
+ # @return [String]
1930
+ #
1931
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/RemoveNotificationChannelRequest AWS API Documentation
1932
+ #
1933
+ class RemoveNotificationChannelRequest < Struct.new(
1934
+ :channel_id,
1935
+ :profiling_group_name)
1936
+ SENSITIVE = []
1937
+ include Aws::Structure
1938
+ end
1939
+
1940
+ # The structure representing the RemoveNotificationChannelResponse.
1941
+ #
1942
+ # @!attribute [rw] notification_configuration
1943
+ # The new notification configuration for this profiling group.
1944
+ # @return [Types::NotificationConfiguration]
1945
+ #
1946
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/RemoveNotificationChannelResponse AWS API Documentation
1947
+ #
1948
+ class RemoveNotificationChannelResponse < Struct.new(
1949
+ :notification_configuration)
1950
+ SENSITIVE = []
1951
+ include Aws::Structure
1952
+ end
1953
+
1954
+ # The structure representing the
1955
+ # <code>removePermissionRequest</code>.</p>
735
1956
  #
736
1957
  # @note When making an API call, you may pass RemovePermissionRequest
737
1958
  # data as a hash:
@@ -743,8 +1964,10 @@ module Aws::CodeGuruProfiler
743
1964
  # }
744
1965
  #
745
1966
  # @!attribute [rw] action_group
746
- # The list of actions that the users and roles can perform on the
747
- # profiling group.
1967
+ # Specifies an action group that contains the permissions to remove
1968
+ # from a profiling group's resource-based policy. One action group is
1969
+ # supported, `agentPermissions`, which grants `ConfigureAgent` and
1970
+ # `PostAgentProfile` permissions.
748
1971
  # @return [String]
749
1972
  #
750
1973
  # @!attribute [rw] profiling_group_name
@@ -752,7 +1975,8 @@ module Aws::CodeGuruProfiler
752
1975
  # @return [String]
753
1976
  #
754
1977
  # @!attribute [rw] revision_id
755
- # A unique identifier for the current revision of the policy.
1978
+ # A universally unique identifier (UUID) for the revision of the
1979
+ # resource-based policy from which you want to remove permissions.
756
1980
  # @return [String]
757
1981
  #
758
1982
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/RemovePermissionRequest AWS API Documentation
@@ -765,14 +1989,18 @@ module Aws::CodeGuruProfiler
765
1989
  include Aws::Structure
766
1990
  end
767
1991
 
768
- # The structure representing the removePermissionResponse.
1992
+ # The structure representing the `removePermissionResponse`.
769
1993
  #
770
1994
  # @!attribute [rw] policy
771
- # The resource-based policy.
1995
+ # The JSON-formatted resource-based policy on the profiling group
1996
+ # after the specified permissions were removed.
772
1997
  # @return [String]
773
1998
  #
774
1999
  # @!attribute [rw] revision_id
775
- # A unique identifier for the current revision of the policy.
2000
+ # A universally unique identifier (UUID) for the revision of the
2001
+ # resource-based policy after the specified permissions were removed.
2002
+ # The updated JSON-formatted policy is in the `policy` element of the
2003
+ # response.
776
2004
  # @return [String]
777
2005
  #
778
2006
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/RemovePermissionResponse AWS API Documentation
@@ -816,6 +2044,90 @@ module Aws::CodeGuruProfiler
816
2044
  include Aws::Structure
817
2045
  end
818
2046
 
2047
+ # The structure representing the SubmitFeedbackRequest.
2048
+ #
2049
+ # @note When making an API call, you may pass SubmitFeedbackRequest
2050
+ # data as a hash:
2051
+ #
2052
+ # {
2053
+ # anomaly_instance_id: "AnomalyInstanceId", # required
2054
+ # comment: "String",
2055
+ # profiling_group_name: "ProfilingGroupName", # required
2056
+ # type: "Negative", # required, accepts Negative, Positive
2057
+ # }
2058
+ #
2059
+ # @!attribute [rw] anomaly_instance_id
2060
+ # The universally unique identifier (UUID) of the [ `AnomalyInstance`
2061
+ # ][1] object that is included in the analysis data.
2062
+ #
2063
+ #
2064
+ #
2065
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_AnomalyInstance.html
2066
+ # @return [String]
2067
+ #
2068
+ # @!attribute [rw] comment
2069
+ # Optional feedback about this anomaly.
2070
+ # @return [String]
2071
+ #
2072
+ # @!attribute [rw] profiling_group_name
2073
+ # The name of the profiling group that is associated with the analysis
2074
+ # data.
2075
+ # @return [String]
2076
+ #
2077
+ # @!attribute [rw] type
2078
+ # The feedback tpye. Thee are two valid values, `Positive` and
2079
+ # `Negative`.
2080
+ # @return [String]
2081
+ #
2082
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/SubmitFeedbackRequest AWS API Documentation
2083
+ #
2084
+ class SubmitFeedbackRequest < Struct.new(
2085
+ :anomaly_instance_id,
2086
+ :comment,
2087
+ :profiling_group_name,
2088
+ :type)
2089
+ SENSITIVE = []
2090
+ include Aws::Structure
2091
+ end
2092
+
2093
+ # The structure representing the SubmitFeedbackResponse.
2094
+ #
2095
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/SubmitFeedbackResponse AWS API Documentation
2096
+ #
2097
+ class SubmitFeedbackResponse < Aws::EmptyStructure; end
2098
+
2099
+ # @note When making an API call, you may pass TagResourceRequest
2100
+ # data as a hash:
2101
+ #
2102
+ # {
2103
+ # resource_arn: "ProfilingGroupArn", # required
2104
+ # tags: { # required
2105
+ # "String" => "String",
2106
+ # },
2107
+ # }
2108
+ #
2109
+ # @!attribute [rw] resource_arn
2110
+ # The Amazon Resource Name (ARN) of the resource that the tags are
2111
+ # added to.
2112
+ # @return [String]
2113
+ #
2114
+ # @!attribute [rw] tags
2115
+ # The list of tags that are added to the specified resource.
2116
+ # @return [Hash<String,String>]
2117
+ #
2118
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/TagResourceRequest AWS API Documentation
2119
+ #
2120
+ class TagResourceRequest < Struct.new(
2121
+ :resource_arn,
2122
+ :tags)
2123
+ SENSITIVE = []
2124
+ include Aws::Structure
2125
+ end
2126
+
2127
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/TagResourceResponse AWS API Documentation
2128
+ #
2129
+ class TagResourceResponse < Aws::EmptyStructure; end
2130
+
819
2131
  # The request was denied due to request throttling.
820
2132
  #
821
2133
  # @!attribute [rw] message
@@ -829,6 +2141,55 @@ module Aws::CodeGuruProfiler
829
2141
  include Aws::Structure
830
2142
  end
831
2143
 
2144
+ # A data type that contains a `Timestamp` object. This is specified
2145
+ # using the ISO 8601 format. For example, 2020-06-01T13:15:02.001Z
2146
+ # represents 1 millisecond past June 1, 2020 1:15:02 PM UTC.
2147
+ #
2148
+ # @!attribute [rw] value
2149
+ # A `Timestamp`. This is specified using the ISO 8601 format. For
2150
+ # example, 2020-06-01T13:15:02.001Z represents 1 millisecond past June
2151
+ # 1, 2020 1:15:02 PM UTC.
2152
+ # @return [Time]
2153
+ #
2154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/TimestampStructure AWS API Documentation
2155
+ #
2156
+ class TimestampStructure < Struct.new(
2157
+ :value)
2158
+ SENSITIVE = []
2159
+ include Aws::Structure
2160
+ end
2161
+
2162
+ # @note When making an API call, you may pass UntagResourceRequest
2163
+ # data as a hash:
2164
+ #
2165
+ # {
2166
+ # resource_arn: "ProfilingGroupArn", # required
2167
+ # tag_keys: ["String"], # required
2168
+ # }
2169
+ #
2170
+ # @!attribute [rw] resource_arn
2171
+ # The Amazon Resource Name (ARN) of the resource that contains the
2172
+ # tags to remove.
2173
+ # @return [String]
2174
+ #
2175
+ # @!attribute [rw] tag_keys
2176
+ # A list of tag keys. Existing tags of resources with keys in this
2177
+ # list are removed from the specified resource.
2178
+ # @return [Array<String>]
2179
+ #
2180
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/UntagResourceRequest AWS API Documentation
2181
+ #
2182
+ class UntagResourceRequest < Struct.new(
2183
+ :resource_arn,
2184
+ :tag_keys)
2185
+ SENSITIVE = []
2186
+ include Aws::Structure
2187
+ end
2188
+
2189
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/UntagResourceResponse AWS API Documentation
2190
+ #
2191
+ class UntagResourceResponse < Aws::EmptyStructure; end
2192
+
832
2193
  # The structure representing the updateProfilingGroupRequest.
833
2194
  #
834
2195
  # @note When making an API call, you may pass UpdateProfilingGroupRequest
@@ -842,6 +2203,8 @@ module Aws::CodeGuruProfiler
842
2203
  # }
843
2204
  #
844
2205
  # @!attribute [rw] agent_orchestration_config
2206
+ # Specifies whether profiling is enabled or disabled for a profiling
2207
+ # group.
845
2208
  # @return [Types::AgentOrchestrationConfig]
846
2209
  #
847
2210
  # @!attribute [rw] profiling_group_name
@@ -860,7 +2223,12 @@ module Aws::CodeGuruProfiler
860
2223
  # The structure representing the updateProfilingGroupResponse.
861
2224
  #
862
2225
  # @!attribute [rw] profiling_group
863
- # Updated information about the profiling group.
2226
+ # A [ `ProfilingGroupDescription` ][1] that contains information about
2227
+ # the returned updated profiling group.
2228
+ #
2229
+ #
2230
+ #
2231
+ # [1]: https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ProfilingGroupDescription.html
864
2232
  # @return [Types::ProfilingGroupDescription]
865
2233
  #
866
2234
  # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/UpdateProfilingGroupResponse AWS API Documentation
@@ -871,6 +2239,23 @@ module Aws::CodeGuruProfiler
871
2239
  include Aws::Structure
872
2240
  end
873
2241
 
2242
+ # Feedback that can be submitted for each instance of an anomaly by the
2243
+ # user. Feedback is be used for improvements in generating
2244
+ # recommendations for the application.
2245
+ #
2246
+ # @!attribute [rw] type
2247
+ # Optional `Positive` or `Negative` feedback submitted by the user
2248
+ # about whether the recommendation is useful or not.
2249
+ # @return [String]
2250
+ #
2251
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/UserFeedback AWS API Documentation
2252
+ #
2253
+ class UserFeedback < Struct.new(
2254
+ :type)
2255
+ SENSITIVE = []
2256
+ include Aws::Structure
2257
+ end
2258
+
874
2259
  # The parameter is not valid.
875
2260
  #
876
2261
  # @!attribute [rw] message