aws-sdk-cloudwatchrum 1.0.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.
@@ -0,0 +1,1083 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::CloudWatchRUM
11
+ module Types
12
+
13
+ # You don't have sufficient permissions to perform this action.
14
+ #
15
+ # @!attribute [rw] message
16
+ # @return [String]
17
+ #
18
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/AccessDeniedException AWS API Documentation
19
+ #
20
+ class AccessDeniedException < Struct.new(
21
+ :message)
22
+ SENSITIVE = []
23
+ include Aws::Structure
24
+ end
25
+
26
+ # A RUM app monitor collects telemetry data from your application and
27
+ # sends that data to RUM. The data includes performance and reliability
28
+ # information such as page load time, client-side errors, and user
29
+ # behavior.
30
+ #
31
+ # @!attribute [rw] app_monitor_configuration
32
+ # A structure that contains much of the configuration data for the app
33
+ # monitor.
34
+ # @return [Types::AppMonitorConfiguration]
35
+ #
36
+ # @!attribute [rw] created
37
+ # The date and time that this app monitor was created.
38
+ # @return [String]
39
+ #
40
+ # @!attribute [rw] data_storage
41
+ # A structure that contains information about whether this app monitor
42
+ # stores a copy of the telemetry data that RUM collects using
43
+ # CloudWatch Logs.
44
+ # @return [Types::DataStorage]
45
+ #
46
+ # @!attribute [rw] domain
47
+ # The top-level internet domain name for which your application has
48
+ # administrative authority.
49
+ # @return [String]
50
+ #
51
+ # @!attribute [rw] id
52
+ # The unique ID of this app monitor.
53
+ # @return [String]
54
+ #
55
+ # @!attribute [rw] last_modified
56
+ # The date and time of the most recent changes to this app monitor's
57
+ # configuration.
58
+ # @return [String]
59
+ #
60
+ # @!attribute [rw] name
61
+ # The name of the app monitor.
62
+ # @return [String]
63
+ #
64
+ # @!attribute [rw] state
65
+ # The current state of the app monitor.
66
+ # @return [String]
67
+ #
68
+ # @!attribute [rw] tags
69
+ # The list of tag keys and values associated with this app monitor.
70
+ # @return [Hash<String,String>]
71
+ #
72
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/AppMonitor AWS API Documentation
73
+ #
74
+ class AppMonitor < Struct.new(
75
+ :app_monitor_configuration,
76
+ :created,
77
+ :data_storage,
78
+ :domain,
79
+ :id,
80
+ :last_modified,
81
+ :name,
82
+ :state,
83
+ :tags)
84
+ SENSITIVE = []
85
+ include Aws::Structure
86
+ end
87
+
88
+ # This structure contains much of the configuration data for the app
89
+ # monitor.
90
+ #
91
+ # @note When making an API call, you may pass AppMonitorConfiguration
92
+ # data as a hash:
93
+ #
94
+ # {
95
+ # allow_cookies: false,
96
+ # enable_x_ray: false,
97
+ # excluded_pages: ["Url"],
98
+ # favorite_pages: ["String"],
99
+ # guest_role_arn: "Arn",
100
+ # identity_pool_id: "IdentityPoolId",
101
+ # included_pages: ["Url"],
102
+ # session_sample_rate: 1.0,
103
+ # telemetries: ["errors"], # accepts errors, performance, http
104
+ # }
105
+ #
106
+ # @!attribute [rw] allow_cookies
107
+ # If you set this to `true`, the RUM web client sets two cookies, a
108
+ # session cookie and a user cookie. The cookies allow the RUM web
109
+ # client to collect data relating to the number of users an
110
+ # application has and the behavior of the application across a
111
+ # sequence of events. Cookies are stored in the top-level domain of
112
+ # the current page.
113
+ # @return [Boolean]
114
+ #
115
+ # @!attribute [rw] enable_x_ray
116
+ # If you set this to `true`, RUM enables X-Ray tracing for the user
117
+ # sessions that RUM samples. RUM adds an X-Ray trace header to allowed
118
+ # HTTP requests. It also records an X-Ray segment for allowed HTTP
119
+ # requests. You can see traces and segments from these user sessions
120
+ # in the X-Ray console and the CloudWatch ServiceLens console. For
121
+ # more information, see [What is X-Ray?][1]
122
+ #
123
+ #
124
+ #
125
+ # [1]: https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html
126
+ # @return [Boolean]
127
+ #
128
+ # @!attribute [rw] excluded_pages
129
+ # A list of URLs in your website or application to exclude from RUM
130
+ # data collection.
131
+ #
132
+ # You can't include both `ExcludedPages` and `IncludedPages` in the
133
+ # same operation.
134
+ # @return [Array<String>]
135
+ #
136
+ # @!attribute [rw] favorite_pages
137
+ # A list of pages in the CloudWatch RUM console that are to be
138
+ # displayed with a "favorite" icon.
139
+ # @return [Array<String>]
140
+ #
141
+ # @!attribute [rw] guest_role_arn
142
+ # The ARN of the guest IAM role that is attached to the Amazon Cognito
143
+ # identity pool that is used to authorize the sending of data to RUM.
144
+ # @return [String]
145
+ #
146
+ # @!attribute [rw] identity_pool_id
147
+ # The ID of the Amazon Cognito identity pool that is used to authorize
148
+ # the sending of data to RUM.
149
+ # @return [String]
150
+ #
151
+ # @!attribute [rw] included_pages
152
+ # If this app monitor is to collect data from only certain pages in
153
+ # your application, this structure lists those pages.
154
+ #
155
+ # <p>You can't include both <code>ExcludedPages</code> and <code>IncludedPages</code> in the same operation.</p>
156
+ # @return [Array<String>]
157
+ #
158
+ # @!attribute [rw] session_sample_rate
159
+ # Specifies the percentage of user sessions to use for RUM data
160
+ # collection. Choosing a higher percentage gives you more data but
161
+ # also incurs more costs.
162
+ #
163
+ # The number you specify is the percentage of user sessions that will
164
+ # be used.
165
+ #
166
+ # If you omit this parameter, the default of 10 is used.
167
+ # @return [Float]
168
+ #
169
+ # @!attribute [rw] telemetries
170
+ # An array that lists the types of telemetry data that this app
171
+ # monitor is to collect.
172
+ #
173
+ # * `errors` indicates that RUM collects data about unhandled
174
+ # JavaScript errors raised by your application.
175
+ #
176
+ # * `performance` indicates that RUM collects performance data about
177
+ # how your application and its resources are loaded and rendered.
178
+ # This includes Core Web Vitals.
179
+ #
180
+ # * `http` indicates that RUM collects data about HTTP errors thrown
181
+ # by your application.
182
+ # @return [Array<String>]
183
+ #
184
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/AppMonitorConfiguration AWS API Documentation
185
+ #
186
+ class AppMonitorConfiguration < Struct.new(
187
+ :allow_cookies,
188
+ :enable_x_ray,
189
+ :excluded_pages,
190
+ :favorite_pages,
191
+ :guest_role_arn,
192
+ :identity_pool_id,
193
+ :included_pages,
194
+ :session_sample_rate,
195
+ :telemetries)
196
+ SENSITIVE = []
197
+ include Aws::Structure
198
+ end
199
+
200
+ # A structure that contains information about the RUM app monitor.
201
+ #
202
+ # @note When making an API call, you may pass AppMonitorDetails
203
+ # data as a hash:
204
+ #
205
+ # {
206
+ # id: "String",
207
+ # name: "String",
208
+ # version: "String",
209
+ # }
210
+ #
211
+ # @!attribute [rw] id
212
+ # The unique ID of the app monitor.
213
+ # @return [String]
214
+ #
215
+ # @!attribute [rw] name
216
+ # The name of the app monitor.
217
+ # @return [String]
218
+ #
219
+ # @!attribute [rw] version
220
+ # The version of the app monitor.
221
+ # @return [String]
222
+ #
223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/AppMonitorDetails AWS API Documentation
224
+ #
225
+ class AppMonitorDetails < Struct.new(
226
+ :id,
227
+ :name,
228
+ :version)
229
+ SENSITIVE = []
230
+ include Aws::Structure
231
+ end
232
+
233
+ # A structure that includes some data about app monitors and their
234
+ # settings.
235
+ #
236
+ # @!attribute [rw] created
237
+ # The date and time that the app monitor was created.
238
+ # @return [String]
239
+ #
240
+ # @!attribute [rw] id
241
+ # The unique ID of this app monitor.
242
+ # @return [String]
243
+ #
244
+ # @!attribute [rw] last_modified
245
+ # The date and time of the most recent changes to this app monitor's
246
+ # configuration.
247
+ # @return [String]
248
+ #
249
+ # @!attribute [rw] name
250
+ # The name of this app monitor.
251
+ # @return [String]
252
+ #
253
+ # @!attribute [rw] state
254
+ # The current state of this app monitor.
255
+ # @return [String]
256
+ #
257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/AppMonitorSummary AWS API Documentation
258
+ #
259
+ class AppMonitorSummary < Struct.new(
260
+ :created,
261
+ :id,
262
+ :last_modified,
263
+ :name,
264
+ :state)
265
+ SENSITIVE = []
266
+ include Aws::Structure
267
+ end
268
+
269
+ # This operation attempted to create a resource that already exists.
270
+ #
271
+ # @!attribute [rw] message
272
+ # @return [String]
273
+ #
274
+ # @!attribute [rw] resource_name
275
+ # The name of the resource that is associated with the error.
276
+ # @return [String]
277
+ #
278
+ # @!attribute [rw] resource_type
279
+ # The type of the resource that is associated with the error.
280
+ # @return [String]
281
+ #
282
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/ConflictException AWS API Documentation
283
+ #
284
+ class ConflictException < Struct.new(
285
+ :message,
286
+ :resource_name,
287
+ :resource_type)
288
+ SENSITIVE = []
289
+ include Aws::Structure
290
+ end
291
+
292
+ # @note When making an API call, you may pass CreateAppMonitorRequest
293
+ # data as a hash:
294
+ #
295
+ # {
296
+ # app_monitor_configuration: {
297
+ # allow_cookies: false,
298
+ # enable_x_ray: false,
299
+ # excluded_pages: ["Url"],
300
+ # favorite_pages: ["String"],
301
+ # guest_role_arn: "Arn",
302
+ # identity_pool_id: "IdentityPoolId",
303
+ # included_pages: ["Url"],
304
+ # session_sample_rate: 1.0,
305
+ # telemetries: ["errors"], # accepts errors, performance, http
306
+ # },
307
+ # cw_log_enabled: false,
308
+ # domain: "AppMonitorDomain", # required
309
+ # name: "AppMonitorName", # required
310
+ # tags: {
311
+ # "TagKey" => "TagValue",
312
+ # },
313
+ # }
314
+ #
315
+ # @!attribute [rw] app_monitor_configuration
316
+ # A structure that contains much of the configuration data for the app
317
+ # monitor. If you are using Amazon Cognito for authorization, you must
318
+ # include this structure in your request, and it must include the ID
319
+ # of the Amazon Cognito identity pool to use for authorization. If you
320
+ # don't include `AppMonitorConfiguration`, you must set up your own
321
+ # authorization method. For more information, see [Authorize your
322
+ # application to send data to Amazon Web Services][1].
323
+ #
324
+ # If you omit this argument, the sample rate used for RUM is set to
325
+ # 10% of the user sessions.
326
+ #
327
+ #
328
+ #
329
+ # [1]: https://docs.aws.amazon.com/monitoring/CloudWatch-RUM-get-started-authorization.html
330
+ # @return [Types::AppMonitorConfiguration]
331
+ #
332
+ # @!attribute [rw] cw_log_enabled
333
+ # Data collected by RUM is kept by RUM for 30 days and then deleted.
334
+ # This parameter specifies whether RUM sends a copy of this telemetry
335
+ # data to Amazon CloudWatch Logs in your account. This enables you to
336
+ # keep the telemetry data for more than 30 days, but it does incur
337
+ # Amazon CloudWatch Logs charges.
338
+ #
339
+ # If you omit this parameter, the default is `false`.
340
+ # @return [Boolean]
341
+ #
342
+ # @!attribute [rw] domain
343
+ # The top-level internet domain name for which your application has
344
+ # administrative authority.
345
+ # @return [String]
346
+ #
347
+ # @!attribute [rw] name
348
+ # A name for the app monitor.
349
+ # @return [String]
350
+ #
351
+ # @!attribute [rw] tags
352
+ # Assigns one or more tags (key-value pairs) to the app monitor.
353
+ #
354
+ # Tags can help you organize and categorize your resources. You can
355
+ # also use them to scope user permissions by granting a user
356
+ # permission to access or change only resources with certain tag
357
+ # values.
358
+ #
359
+ # Tags don't have any semantic meaning to Amazon Web Services and are
360
+ # interpreted strictly as strings of characters.
361
+ #
362
+ # <p>You can associate as many as 50 tags with an app monitor.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html">Tagging Amazon Web Services resources</a>.</p>
363
+ # @return [Hash<String,String>]
364
+ #
365
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/CreateAppMonitorRequest AWS API Documentation
366
+ #
367
+ class CreateAppMonitorRequest < Struct.new(
368
+ :app_monitor_configuration,
369
+ :cw_log_enabled,
370
+ :domain,
371
+ :name,
372
+ :tags)
373
+ SENSITIVE = []
374
+ include Aws::Structure
375
+ end
376
+
377
+ # @!attribute [rw] id
378
+ # The unique ID of the new app monitor.
379
+ # @return [String]
380
+ #
381
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/CreateAppMonitorResponse AWS API Documentation
382
+ #
383
+ class CreateAppMonitorResponse < Struct.new(
384
+ :id)
385
+ SENSITIVE = []
386
+ include Aws::Structure
387
+ end
388
+
389
+ # A structure that contains the information about whether the app
390
+ # monitor stores copies of the data that RUM collects in CloudWatch
391
+ # Logs. If it does, this structure also contains the name of the log
392
+ # group.
393
+ #
394
+ # @!attribute [rw] cw_log_enabled
395
+ # Indicated whether the app monitor stores copies of the data that RUM
396
+ # collects in CloudWatch Logs.
397
+ # @return [Boolean]
398
+ #
399
+ # @!attribute [rw] cw_log_group
400
+ # The name of the log group where the copies are stored.
401
+ # @return [String]
402
+ #
403
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/CwLog AWS API Documentation
404
+ #
405
+ class CwLog < Struct.new(
406
+ :cw_log_enabled,
407
+ :cw_log_group)
408
+ SENSITIVE = []
409
+ include Aws::Structure
410
+ end
411
+
412
+ # A structure that contains information about whether this app monitor
413
+ # stores a copy of the telemetry data that RUM collects using CloudWatch
414
+ # Logs.
415
+ #
416
+ # @!attribute [rw] cw_log
417
+ # A structure that contains the information about whether the app
418
+ # monitor stores copies of the data that RUM collects in CloudWatch
419
+ # Logs. If it does, this structure also contains the name of the log
420
+ # group.
421
+ # @return [Types::CwLog]
422
+ #
423
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/DataStorage AWS API Documentation
424
+ #
425
+ class DataStorage < Struct.new(
426
+ :cw_log)
427
+ SENSITIVE = []
428
+ include Aws::Structure
429
+ end
430
+
431
+ # @note When making an API call, you may pass DeleteAppMonitorRequest
432
+ # data as a hash:
433
+ #
434
+ # {
435
+ # name: "AppMonitorName", # required
436
+ # }
437
+ #
438
+ # @!attribute [rw] name
439
+ # The name of the app monitor to delete.
440
+ # @return [String]
441
+ #
442
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/DeleteAppMonitorRequest AWS API Documentation
443
+ #
444
+ class DeleteAppMonitorRequest < Struct.new(
445
+ :name)
446
+ SENSITIVE = []
447
+ include Aws::Structure
448
+ end
449
+
450
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/DeleteAppMonitorResponse AWS API Documentation
451
+ #
452
+ class DeleteAppMonitorResponse < Aws::EmptyStructure; end
453
+
454
+ # @note When making an API call, you may pass GetAppMonitorDataRequest
455
+ # data as a hash:
456
+ #
457
+ # {
458
+ # filters: [
459
+ # {
460
+ # name: "QueryFilterKey",
461
+ # values: ["QueryFilterValue"],
462
+ # },
463
+ # ],
464
+ # max_results: 1,
465
+ # name: "AppMonitorName", # required
466
+ # next_token: "Token",
467
+ # time_range: { # required
468
+ # after: 1, # required
469
+ # before: 1,
470
+ # },
471
+ # }
472
+ #
473
+ # @!attribute [rw] filters
474
+ # An array of structures that you can use to filter the results to
475
+ # those that match one or more sets of key-value pairs that you
476
+ # specify.
477
+ # @return [Array<Types::QueryFilter>]
478
+ #
479
+ # @!attribute [rw] max_results
480
+ # The maximum number of results to return in one operation.
481
+ # @return [Integer]
482
+ #
483
+ # @!attribute [rw] name
484
+ # The name of the app monitor that collected the data that you want to
485
+ # retrieve.
486
+ # @return [String]
487
+ #
488
+ # @!attribute [rw] next_token
489
+ # Use the token returned by the previous operation to request the next
490
+ # page of results.
491
+ # @return [String]
492
+ #
493
+ # @!attribute [rw] time_range
494
+ # A structure that defines the time range that you want to retrieve
495
+ # results from.
496
+ # @return [Types::TimeRange]
497
+ #
498
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/GetAppMonitorDataRequest AWS API Documentation
499
+ #
500
+ class GetAppMonitorDataRequest < Struct.new(
501
+ :filters,
502
+ :max_results,
503
+ :name,
504
+ :next_token,
505
+ :time_range)
506
+ SENSITIVE = []
507
+ include Aws::Structure
508
+ end
509
+
510
+ # @!attribute [rw] events
511
+ # The events that RUM collected that match your request.
512
+ # @return [Array<String>]
513
+ #
514
+ # @!attribute [rw] next_token
515
+ # A token that you can use in a subsequent operation to retrieve the
516
+ # next set of results.
517
+ # @return [String]
518
+ #
519
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/GetAppMonitorDataResponse AWS API Documentation
520
+ #
521
+ class GetAppMonitorDataResponse < Struct.new(
522
+ :events,
523
+ :next_token)
524
+ SENSITIVE = []
525
+ include Aws::Structure
526
+ end
527
+
528
+ # @note When making an API call, you may pass GetAppMonitorRequest
529
+ # data as a hash:
530
+ #
531
+ # {
532
+ # name: "AppMonitorName", # required
533
+ # }
534
+ #
535
+ # @!attribute [rw] name
536
+ # The app monitor to retrieve information for.
537
+ # @return [String]
538
+ #
539
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/GetAppMonitorRequest AWS API Documentation
540
+ #
541
+ class GetAppMonitorRequest < Struct.new(
542
+ :name)
543
+ SENSITIVE = []
544
+ include Aws::Structure
545
+ end
546
+
547
+ # @!attribute [rw] app_monitor
548
+ # A structure containing all the configuration information for the app
549
+ # monitor.
550
+ # @return [Types::AppMonitor]
551
+ #
552
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/GetAppMonitorResponse AWS API Documentation
553
+ #
554
+ class GetAppMonitorResponse < Struct.new(
555
+ :app_monitor)
556
+ SENSITIVE = []
557
+ include Aws::Structure
558
+ end
559
+
560
+ # Internal service exception.
561
+ #
562
+ # @!attribute [rw] message
563
+ # @return [String]
564
+ #
565
+ # @!attribute [rw] retry_after_seconds
566
+ # The value of a parameter in the request caused an error.
567
+ # @return [Integer]
568
+ #
569
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/InternalServerException AWS API Documentation
570
+ #
571
+ class InternalServerException < Struct.new(
572
+ :message,
573
+ :retry_after_seconds)
574
+ SENSITIVE = []
575
+ include Aws::Structure
576
+ end
577
+
578
+ # @note When making an API call, you may pass ListAppMonitorsRequest
579
+ # data as a hash:
580
+ #
581
+ # {
582
+ # max_results: 1,
583
+ # next_token: "String",
584
+ # }
585
+ #
586
+ # @!attribute [rw] max_results
587
+ # The maximum number of results to return in one operation.
588
+ # @return [Integer]
589
+ #
590
+ # @!attribute [rw] next_token
591
+ # Use the token returned by the previous operation to request the next
592
+ # page of results.
593
+ # @return [String]
594
+ #
595
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/ListAppMonitorsRequest AWS API Documentation
596
+ #
597
+ class ListAppMonitorsRequest < Struct.new(
598
+ :max_results,
599
+ :next_token)
600
+ SENSITIVE = []
601
+ include Aws::Structure
602
+ end
603
+
604
+ # @!attribute [rw] app_monitor_summaries
605
+ # An array of structures that contain information about the returned
606
+ # app monitors.
607
+ # @return [Array<Types::AppMonitorSummary>]
608
+ #
609
+ # @!attribute [rw] next_token
610
+ # A token that you can use in a subsequent operation to retrieve the
611
+ # next set of results.
612
+ # @return [String]
613
+ #
614
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/ListAppMonitorsResponse AWS API Documentation
615
+ #
616
+ class ListAppMonitorsResponse < Struct.new(
617
+ :app_monitor_summaries,
618
+ :next_token)
619
+ SENSITIVE = []
620
+ include Aws::Structure
621
+ end
622
+
623
+ # @note When making an API call, you may pass ListTagsForResourceRequest
624
+ # data as a hash:
625
+ #
626
+ # {
627
+ # resource_arn: "Arn", # required
628
+ # }
629
+ #
630
+ # @!attribute [rw] resource_arn
631
+ # The ARN of the resource that you want to see the tags of.
632
+ # @return [String]
633
+ #
634
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/ListTagsForResourceRequest AWS API Documentation
635
+ #
636
+ class ListTagsForResourceRequest < Struct.new(
637
+ :resource_arn)
638
+ SENSITIVE = []
639
+ include Aws::Structure
640
+ end
641
+
642
+ # @!attribute [rw] resource_arn
643
+ # The ARN of the resource that you are viewing.
644
+ # @return [String]
645
+ #
646
+ # @!attribute [rw] tags
647
+ # The list of tag keys and values associated with the resource you
648
+ # specified.
649
+ # @return [Hash<String,String>]
650
+ #
651
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/ListTagsForResourceResponse AWS API Documentation
652
+ #
653
+ class ListTagsForResourceResponse < Struct.new(
654
+ :resource_arn,
655
+ :tags)
656
+ SENSITIVE = []
657
+ include Aws::Structure
658
+ end
659
+
660
+ # @note When making an API call, you may pass PutRumEventsRequest
661
+ # data as a hash:
662
+ #
663
+ # {
664
+ # app_monitor_details: { # required
665
+ # id: "String",
666
+ # name: "String",
667
+ # version: "String",
668
+ # },
669
+ # batch_id: "String", # required
670
+ # id: "AppMonitorId", # required
671
+ # rum_events: [ # required
672
+ # {
673
+ # details: "JsonValue", # required
674
+ # id: "String", # required
675
+ # metadata: "JsonValue",
676
+ # timestamp: Time.now, # required
677
+ # type: "String", # required
678
+ # },
679
+ # ],
680
+ # user_details: { # required
681
+ # session_id: "String",
682
+ # user_id: "String",
683
+ # },
684
+ # }
685
+ #
686
+ # @!attribute [rw] app_monitor_details
687
+ # A structure that contains information about the app monitor that
688
+ # collected this telemetry information.
689
+ # @return [Types::AppMonitorDetails]
690
+ #
691
+ # @!attribute [rw] batch_id
692
+ # A unique identifier for this batch of RUM event data.
693
+ # @return [String]
694
+ #
695
+ # @!attribute [rw] id
696
+ # The ID of the app monitor that is sending this data.
697
+ # @return [String]
698
+ #
699
+ # @!attribute [rw] rum_events
700
+ # An array of structures that contain the telemetry event data.
701
+ # @return [Array<Types::RumEvent>]
702
+ #
703
+ # @!attribute [rw] user_details
704
+ # A structure that contains information about the user session that
705
+ # this batch of events was collected from.
706
+ # @return [Types::UserDetails]
707
+ #
708
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/PutRumEventsRequest AWS API Documentation
709
+ #
710
+ class PutRumEventsRequest < Struct.new(
711
+ :app_monitor_details,
712
+ :batch_id,
713
+ :id,
714
+ :rum_events,
715
+ :user_details)
716
+ SENSITIVE = []
717
+ include Aws::Structure
718
+ end
719
+
720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/PutRumEventsResponse AWS API Documentation
721
+ #
722
+ class PutRumEventsResponse < Aws::EmptyStructure; end
723
+
724
+ # A structure that defines a key and values that you can use to filter
725
+ # the results. The only performance events that are returned are those
726
+ # that have values matching the ones that you specify in one of your
727
+ # `QueryFilter` structures.
728
+ #
729
+ # For example, you could specify `Browser` as the `Name` and specify
730
+ # `Chrome,Firefox` as the `Values` to return events generated only from
731
+ # those browsers.
732
+ #
733
+ # Specifying `Invert` as the `Name` works as a "not equal to" filter.
734
+ # For example, specify `Invert` as the `Name` and specify `Chrome` as
735
+ # the value to return all events except events from user sessions with
736
+ # the Chrome browser.
737
+ #
738
+ # @note When making an API call, you may pass QueryFilter
739
+ # data as a hash:
740
+ #
741
+ # {
742
+ # name: "QueryFilterKey",
743
+ # values: ["QueryFilterValue"],
744
+ # }
745
+ #
746
+ # @!attribute [rw] name
747
+ # The name of a key to search for. The filter returns only the events
748
+ # that match the `Name` and `Values` that you specify.
749
+ #
750
+ # Valid values for `Name` are `Browser` \| `Device` \| `Country` \|
751
+ # `Page` \| `OS` \| `EventType` \| `Invert`
752
+ # @return [String]
753
+ #
754
+ # @!attribute [rw] values
755
+ # The values of the `Name` that are to be be included in the returned
756
+ # results.
757
+ # @return [Array<String>]
758
+ #
759
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/QueryFilter AWS API Documentation
760
+ #
761
+ class QueryFilter < Struct.new(
762
+ :name,
763
+ :values)
764
+ SENSITIVE = []
765
+ include Aws::Structure
766
+ end
767
+
768
+ # Resource not found.
769
+ #
770
+ # @!attribute [rw] message
771
+ # @return [String]
772
+ #
773
+ # @!attribute [rw] resource_name
774
+ # The name of the resource that is associated with the error.
775
+ # @return [String]
776
+ #
777
+ # @!attribute [rw] resource_type
778
+ # The type of the resource that is associated with the error.
779
+ # @return [String]
780
+ #
781
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/ResourceNotFoundException AWS API Documentation
782
+ #
783
+ class ResourceNotFoundException < Struct.new(
784
+ :message,
785
+ :resource_name,
786
+ :resource_type)
787
+ SENSITIVE = []
788
+ include Aws::Structure
789
+ end
790
+
791
+ # A structure that contains the information for one performance event
792
+ # that RUM collects from a user session with your application.
793
+ #
794
+ # @note When making an API call, you may pass RumEvent
795
+ # data as a hash:
796
+ #
797
+ # {
798
+ # details: "JsonValue", # required
799
+ # id: "String", # required
800
+ # metadata: "JsonValue",
801
+ # timestamp: Time.now, # required
802
+ # type: "String", # required
803
+ # }
804
+ #
805
+ # @!attribute [rw] details
806
+ # A string containing details about the event.
807
+ # @return [String]
808
+ #
809
+ # @!attribute [rw] id
810
+ # A unique ID for this event.
811
+ # @return [String]
812
+ #
813
+ # @!attribute [rw] metadata
814
+ # Metadata about this event, which contains a JSON serialization of
815
+ # the identity of the user for this session. The user information
816
+ # comes from information such as the HTTP user-agent request header
817
+ # and document interface.
818
+ # @return [String]
819
+ #
820
+ # @!attribute [rw] timestamp
821
+ # The exact time that this event occurred.
822
+ # @return [Time]
823
+ #
824
+ # @!attribute [rw] type
825
+ # The JSON schema that denotes the type of event this is, such as a
826
+ # page load or a new session.
827
+ # @return [String]
828
+ #
829
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/RumEvent AWS API Documentation
830
+ #
831
+ class RumEvent < Struct.new(
832
+ :details,
833
+ :id,
834
+ :metadata,
835
+ :timestamp,
836
+ :type)
837
+ SENSITIVE = []
838
+ include Aws::Structure
839
+ end
840
+
841
+ # This request exceeds a service quota.
842
+ #
843
+ # @!attribute [rw] message
844
+ # @return [String]
845
+ #
846
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/ServiceQuotaExceededException AWS API Documentation
847
+ #
848
+ class ServiceQuotaExceededException < Struct.new(
849
+ :message)
850
+ SENSITIVE = []
851
+ include Aws::Structure
852
+ end
853
+
854
+ # @note When making an API call, you may pass TagResourceRequest
855
+ # data as a hash:
856
+ #
857
+ # {
858
+ # resource_arn: "Arn", # required
859
+ # tags: { # required
860
+ # "TagKey" => "TagValue",
861
+ # },
862
+ # }
863
+ #
864
+ # @!attribute [rw] resource_arn
865
+ # The ARN of the CloudWatch RUM resource that you're adding tags to.
866
+ # @return [String]
867
+ #
868
+ # @!attribute [rw] tags
869
+ # The list of key-value pairs to associate with the resource.
870
+ # @return [Hash<String,String>]
871
+ #
872
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/TagResourceRequest AWS API Documentation
873
+ #
874
+ class TagResourceRequest < Struct.new(
875
+ :resource_arn,
876
+ :tags)
877
+ SENSITIVE = []
878
+ include Aws::Structure
879
+ end
880
+
881
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/TagResourceResponse AWS API Documentation
882
+ #
883
+ class TagResourceResponse < Aws::EmptyStructure; end
884
+
885
+ # The request was throttled because of quota limits.
886
+ #
887
+ # @!attribute [rw] message
888
+ # @return [String]
889
+ #
890
+ # @!attribute [rw] quota_code
891
+ # The ID of the service quota that was exceeded.
892
+ # @return [String]
893
+ #
894
+ # @!attribute [rw] retry_after_seconds
895
+ # The value of a parameter in the request caused an error.
896
+ # @return [Integer]
897
+ #
898
+ # @!attribute [rw] service_code
899
+ # The ID of the service that is associated with the error.
900
+ # @return [String]
901
+ #
902
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/ThrottlingException AWS API Documentation
903
+ #
904
+ class ThrottlingException < Struct.new(
905
+ :message,
906
+ :quota_code,
907
+ :retry_after_seconds,
908
+ :service_code)
909
+ SENSITIVE = []
910
+ include Aws::Structure
911
+ end
912
+
913
+ # A structure that defines the time range that you want to retrieve
914
+ # results from.
915
+ #
916
+ # @note When making an API call, you may pass TimeRange
917
+ # data as a hash:
918
+ #
919
+ # {
920
+ # after: 1, # required
921
+ # before: 1,
922
+ # }
923
+ #
924
+ # @!attribute [rw] after
925
+ # The beginning of the time range to retrieve performance events from.
926
+ # @return [Integer]
927
+ #
928
+ # @!attribute [rw] before
929
+ # The end of the time range to retrieve performance events from. If
930
+ # you omit this, the time range extends to the time that this
931
+ # operation is performed.
932
+ # @return [Integer]
933
+ #
934
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/TimeRange AWS API Documentation
935
+ #
936
+ class TimeRange < Struct.new(
937
+ :after,
938
+ :before)
939
+ SENSITIVE = []
940
+ include Aws::Structure
941
+ end
942
+
943
+ # @note When making an API call, you may pass UntagResourceRequest
944
+ # data as a hash:
945
+ #
946
+ # {
947
+ # resource_arn: "Arn", # required
948
+ # tag_keys: ["TagKey"], # required
949
+ # }
950
+ #
951
+ # @!attribute [rw] resource_arn
952
+ # The ARN of the CloudWatch RUM resource that you're removing tags
953
+ # from.
954
+ # @return [String]
955
+ #
956
+ # @!attribute [rw] tag_keys
957
+ # The list of tag keys to remove from the resource.
958
+ # @return [Array<String>]
959
+ #
960
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/UntagResourceRequest AWS API Documentation
961
+ #
962
+ class UntagResourceRequest < Struct.new(
963
+ :resource_arn,
964
+ :tag_keys)
965
+ SENSITIVE = []
966
+ include Aws::Structure
967
+ end
968
+
969
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/UntagResourceResponse AWS API Documentation
970
+ #
971
+ class UntagResourceResponse < Aws::EmptyStructure; end
972
+
973
+ # @note When making an API call, you may pass UpdateAppMonitorRequest
974
+ # data as a hash:
975
+ #
976
+ # {
977
+ # app_monitor_configuration: {
978
+ # allow_cookies: false,
979
+ # enable_x_ray: false,
980
+ # excluded_pages: ["Url"],
981
+ # favorite_pages: ["String"],
982
+ # guest_role_arn: "Arn",
983
+ # identity_pool_id: "IdentityPoolId",
984
+ # included_pages: ["Url"],
985
+ # session_sample_rate: 1.0,
986
+ # telemetries: ["errors"], # accepts errors, performance, http
987
+ # },
988
+ # cw_log_enabled: false,
989
+ # domain: "AppMonitorDomain",
990
+ # name: "AppMonitorName", # required
991
+ # }
992
+ #
993
+ # @!attribute [rw] app_monitor_configuration
994
+ # A structure that contains much of the configuration data for the app
995
+ # monitor. If you are using Amazon Cognito for authorization, you must
996
+ # include this structure in your request, and it must include the ID
997
+ # of the Amazon Cognito identity pool to use for authorization. If you
998
+ # don't include `AppMonitorConfiguration`, you must set up your own
999
+ # authorization method. For more information, see [Authorize your
1000
+ # application to send data to Amazon Web Services][1].
1001
+ #
1002
+ #
1003
+ #
1004
+ # [1]: https://docs.aws.amazon.com/monitoring/CloudWatch-RUM-get-started-authorization.html
1005
+ # @return [Types::AppMonitorConfiguration]
1006
+ #
1007
+ # @!attribute [rw] cw_log_enabled
1008
+ # Data collected by RUM is kept by RUM for 30 days and then deleted.
1009
+ # This parameter specifies whether RUM sends a copy of this telemetry
1010
+ # data to Amazon CloudWatch Logs in your account. This enables you to
1011
+ # keep the telemetry data for more than 30 days, but it does incur
1012
+ # Amazon CloudWatch Logs charges.
1013
+ # @return [Boolean]
1014
+ #
1015
+ # @!attribute [rw] domain
1016
+ # The top-level internet domain name for which your application has
1017
+ # administrative authority.
1018
+ # @return [String]
1019
+ #
1020
+ # @!attribute [rw] name
1021
+ # The name of the app monitor to update.
1022
+ # @return [String]
1023
+ #
1024
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/UpdateAppMonitorRequest AWS API Documentation
1025
+ #
1026
+ class UpdateAppMonitorRequest < Struct.new(
1027
+ :app_monitor_configuration,
1028
+ :cw_log_enabled,
1029
+ :domain,
1030
+ :name)
1031
+ SENSITIVE = []
1032
+ include Aws::Structure
1033
+ end
1034
+
1035
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/UpdateAppMonitorResponse AWS API Documentation
1036
+ #
1037
+ class UpdateAppMonitorResponse < Aws::EmptyStructure; end
1038
+
1039
+ # A structure that contains information about the user session that this
1040
+ # batch of events was collected from.
1041
+ #
1042
+ # @note When making an API call, you may pass UserDetails
1043
+ # data as a hash:
1044
+ #
1045
+ # {
1046
+ # session_id: "String",
1047
+ # user_id: "String",
1048
+ # }
1049
+ #
1050
+ # @!attribute [rw] session_id
1051
+ # The session ID that the performance events are from.
1052
+ # @return [String]
1053
+ #
1054
+ # @!attribute [rw] user_id
1055
+ # The ID of the user for this user session. This ID is generated by
1056
+ # RUM and does not include any personally identifiable information
1057
+ # about the user.
1058
+ # @return [String]
1059
+ #
1060
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/UserDetails AWS API Documentation
1061
+ #
1062
+ class UserDetails < Struct.new(
1063
+ :session_id,
1064
+ :user_id)
1065
+ SENSITIVE = []
1066
+ include Aws::Structure
1067
+ end
1068
+
1069
+ # One of the arguments for the request is not valid.
1070
+ #
1071
+ # @!attribute [rw] message
1072
+ # @return [String]
1073
+ #
1074
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/ValidationException AWS API Documentation
1075
+ #
1076
+ class ValidationException < Struct.new(
1077
+ :message)
1078
+ SENSITIVE = []
1079
+ include Aws::Structure
1080
+ end
1081
+
1082
+ end
1083
+ end