aws-sdk-cloudwatchlogs 1.73.0 → 1.74.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -59,6 +59,223 @@ module Aws::CloudWatchLogs
59
59
  include Aws::Structure
60
60
  end
61
61
 
62
+ # This structure represents one anomaly that has been found by a logs
63
+ # anomaly detector.
64
+ #
65
+ # For more information about patterns and anomalies, see
66
+ # [CreateLogAnomalyDetector][1].
67
+ #
68
+ #
69
+ #
70
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogAnomalyDetector.html
71
+ #
72
+ # @!attribute [rw] anomaly_id
73
+ # The unique ID that CloudWatch Logs assigned to this anomaly.
74
+ # @return [String]
75
+ #
76
+ # @!attribute [rw] pattern_id
77
+ # The ID of the pattern used to help identify this anomaly.
78
+ # @return [String]
79
+ #
80
+ # @!attribute [rw] anomaly_detector_arn
81
+ # The ARN of the anomaly detector that identified this anomaly.
82
+ # @return [String]
83
+ #
84
+ # @!attribute [rw] pattern_string
85
+ # The pattern used to help identify this anomaly, in string format.
86
+ # @return [String]
87
+ #
88
+ # @!attribute [rw] pattern_regex
89
+ # The pattern used to help identify this anomaly, in regular
90
+ # expression format.
91
+ # @return [String]
92
+ #
93
+ # @!attribute [rw] priority
94
+ # The priority level of this anomaly, as determined by CloudWatch
95
+ # Logs. Priority is computed based on log severity labels such as
96
+ # `FATAL` and `ERROR` and the amount of deviation from the baseline.
97
+ # Possible values are `HIGH`, `MEDIUM`, and `LOW`.
98
+ # @return [String]
99
+ #
100
+ # @!attribute [rw] first_seen
101
+ # The date and time when the anomaly detector first saw this anomaly.
102
+ # It is specified as epoch time, which is the number of seconds since
103
+ # `January 1, 1970, 00:00:00 UTC`.
104
+ # @return [Integer]
105
+ #
106
+ # @!attribute [rw] last_seen
107
+ # The date and time when the anomaly detector most recently saw this
108
+ # anomaly. It is specified as epoch time, which is the number of
109
+ # seconds since `January 1, 1970, 00:00:00 UTC`.
110
+ # @return [Integer]
111
+ #
112
+ # @!attribute [rw] description
113
+ # A human-readable description of the anomaly. This description is
114
+ # generated by CloudWatch Logs.
115
+ # @return [String]
116
+ #
117
+ # @!attribute [rw] active
118
+ # Specifies whether this anomaly is still ongoing.
119
+ # @return [Boolean]
120
+ #
121
+ # @!attribute [rw] state
122
+ # Indicates the current state of this anomaly. If it is still being
123
+ # treated as an anomaly, the value is `Active`. If you have suppressed
124
+ # this anomaly by using the [UpdateAnomaly][1] operation, the value is
125
+ # `Suppressed`. If this behavior is now considered to be normal, the
126
+ # value is `Baseline`.
127
+ #
128
+ #
129
+ #
130
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UpdateAnomaly.html
131
+ # @return [String]
132
+ #
133
+ # @!attribute [rw] histogram
134
+ # A map showing times when the anomaly detector ran, and the number of
135
+ # occurrences of this anomaly that were detected at each of those
136
+ # runs. The times are specified in epoch time, which is the number of
137
+ # seconds since `January 1, 1970, 00:00:00 UTC`.
138
+ # @return [Hash<String,Integer>]
139
+ #
140
+ # @!attribute [rw] log_samples
141
+ # An array of sample log event messages that are considered to be part
142
+ # of this anomaly.
143
+ # @return [Array<String>]
144
+ #
145
+ # @!attribute [rw] pattern_tokens
146
+ # An array of structures where each structure contains information
147
+ # about one token that makes up the pattern.
148
+ # @return [Array<Types::PatternToken>]
149
+ #
150
+ # @!attribute [rw] log_group_arn_list
151
+ # An array of ARNS of the log groups that contained log events
152
+ # considered to be part of this anomaly.
153
+ # @return [Array<String>]
154
+ #
155
+ # @!attribute [rw] suppressed
156
+ # Indicates whether this anomaly is currently suppressed. To suppress
157
+ # an anomaly, use [UpdateAnomaly][1].
158
+ #
159
+ #
160
+ #
161
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UpdateAnomaly.html
162
+ # @return [Boolean]
163
+ #
164
+ # @!attribute [rw] suppressed_date
165
+ # If the anomaly is suppressed, this indicates when it was suppressed.
166
+ # @return [Integer]
167
+ #
168
+ # @!attribute [rw] suppressed_until
169
+ # If the anomaly is suppressed, this indicates when the suppression
170
+ # will end. If this value is `0`, the anomaly was suppressed with no
171
+ # expiration, with the `INFINITE` value.
172
+ # @return [Integer]
173
+ #
174
+ # @!attribute [rw] is_pattern_level_suppression
175
+ # If this anomaly is suppressed, this field is `true` if the
176
+ # suppression is because the pattern is suppressed. If `false`, then
177
+ # only this particular anomaly is suppressed.
178
+ # @return [Boolean]
179
+ #
180
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/Anomaly AWS API Documentation
181
+ #
182
+ class Anomaly < Struct.new(
183
+ :anomaly_id,
184
+ :pattern_id,
185
+ :anomaly_detector_arn,
186
+ :pattern_string,
187
+ :pattern_regex,
188
+ :priority,
189
+ :first_seen,
190
+ :last_seen,
191
+ :description,
192
+ :active,
193
+ :state,
194
+ :histogram,
195
+ :log_samples,
196
+ :pattern_tokens,
197
+ :log_group_arn_list,
198
+ :suppressed,
199
+ :suppressed_date,
200
+ :suppressed_until,
201
+ :is_pattern_level_suppression)
202
+ SENSITIVE = []
203
+ include Aws::Structure
204
+ end
205
+
206
+ # Contains information about one anomaly detector in the account.
207
+ #
208
+ # @!attribute [rw] anomaly_detector_arn
209
+ # The ARN of the anomaly detector.
210
+ # @return [String]
211
+ #
212
+ # @!attribute [rw] detector_name
213
+ # The name of the anomaly detector.
214
+ # @return [String]
215
+ #
216
+ # @!attribute [rw] log_group_arn_list
217
+ # A list of the ARNs of the log groups that this anomaly detector
218
+ # watches.
219
+ # @return [Array<String>]
220
+ #
221
+ # @!attribute [rw] evaluation_frequency
222
+ # Specifies how often the anomaly detector runs and look for
223
+ # anomalies.
224
+ # @return [String]
225
+ #
226
+ # @!attribute [rw] filter_pattern
227
+ # A symbolic description of how CloudWatch Logs should interpret the
228
+ # data in each log event. For example, a log event can contain
229
+ # timestamps, IP addresses, strings, and so on. You use the filter
230
+ # pattern to specify what to look for in the log event message.
231
+ # @return [String]
232
+ #
233
+ # @!attribute [rw] anomaly_detector_status
234
+ # Specifies the current status of the anomaly detector. To pause an
235
+ # anomaly detector, use the `enabled` parameter in the
236
+ # [UpdateLogAnomalyDetector][1] operation.
237
+ #
238
+ #
239
+ #
240
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UpdateLogAnomalyDetector.html
241
+ # @return [String]
242
+ #
243
+ # @!attribute [rw] kms_key_id
244
+ # The ID of the KMS key assigned to this anomaly detector, if any.
245
+ # @return [String]
246
+ #
247
+ # @!attribute [rw] creation_time_stamp
248
+ # The date and time when this anomaly detector was created.
249
+ # @return [Integer]
250
+ #
251
+ # @!attribute [rw] last_modified_time_stamp
252
+ # The date and time when this anomaly detector was most recently
253
+ # modified.
254
+ # @return [Integer]
255
+ #
256
+ # @!attribute [rw] anomaly_visibility_time
257
+ # The number of days used as the life cycle of anomalies. After this
258
+ # time, anomalies are automatically baselined and the anomaly detector
259
+ # model will treat new occurrences of similar event as normal.
260
+ # @return [Integer]
261
+ #
262
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/AnomalyDetector AWS API Documentation
263
+ #
264
+ class AnomalyDetector < Struct.new(
265
+ :anomaly_detector_arn,
266
+ :detector_name,
267
+ :log_group_arn_list,
268
+ :evaluation_frequency,
269
+ :filter_pattern,
270
+ :anomaly_detector_status,
271
+ :kms_key_id,
272
+ :creation_time_stamp,
273
+ :last_modified_time_stamp,
274
+ :anomaly_visibility_time)
275
+ SENSITIVE = []
276
+ include Aws::Structure
277
+ end
278
+
62
279
  # @!attribute [rw] log_group_name
63
280
  # The name of the log group.
64
281
  #
@@ -240,8 +457,98 @@ module Aws::CloudWatchLogs
240
457
  include Aws::Structure
241
458
  end
242
459
 
460
+ # @!attribute [rw] log_group_arn_list
461
+ # An array containing the ARNs of the log groups that this anomaly
462
+ # detector will watch. You must specify at least one ARN.
463
+ # @return [Array<String>]
464
+ #
465
+ # @!attribute [rw] detector_name
466
+ # A name for this anomaly detector.
467
+ # @return [String]
468
+ #
469
+ # @!attribute [rw] evaluation_frequency
470
+ # Specifies how often the anomaly detector is to run and look for
471
+ # anomalies. Set this value according to the frequency that the log
472
+ # group receives new logs. For example, if the log group receives new
473
+ # log events every 10 minutes, then 15 minutes might be a good setting
474
+ # for `evaluationFrequency` .
475
+ # @return [String]
476
+ #
477
+ # @!attribute [rw] filter_pattern
478
+ # You can use this parameter to limit the anomaly detection model to
479
+ # examine only log events that match the pattern you specify here. For
480
+ # more information, see [Filter and Pattern Syntax][1].
481
+ #
482
+ #
483
+ #
484
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html
485
+ # @return [String]
486
+ #
487
+ # @!attribute [rw] kms_key_id
488
+ # Optionally assigns a KMS key to secure this anomaly detector and its
489
+ # findings. If a key is assigned, the anomalies found and the model
490
+ # used by this detector are encrypted at rest with the key. If a key
491
+ # is assigned to an anomaly detector, a user must have permissions for
492
+ # both this key and for the anomaly detector to retrieve information
493
+ # about the anomalies that it finds.
494
+ #
495
+ # For more information about using a KMS key and to see the required
496
+ # IAM policy, see [Use a KMS key with an anomaly detector][1].
497
+ #
498
+ #
499
+ #
500
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/LogsAnomalyDetection-KMS.html
501
+ # @return [String]
502
+ #
503
+ # @!attribute [rw] anomaly_visibility_time
504
+ # The number of days to have visibility on an anomaly. After this time
505
+ # period has elapsed for an anomaly, it will be automatically
506
+ # baselined and the anomaly detector will treat new occurrences of a
507
+ # similar anomaly as normal. Therefore, if you do not correct the
508
+ # cause of an anomaly during the time period specified in
509
+ # `anomalyVisibilityTime`, it will be considered normal going forward
510
+ # and will not be detected as an anomaly.
511
+ # @return [Integer]
512
+ #
513
+ # @!attribute [rw] tags
514
+ # An optional list of key-value pairs to associate with the resource.
515
+ #
516
+ # For more information about tagging, see [Tagging Amazon Web Services
517
+ # resources][1]
518
+ #
519
+ #
520
+ #
521
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
522
+ # @return [Hash<String,String>]
523
+ #
524
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CreateLogAnomalyDetectorRequest AWS API Documentation
525
+ #
526
+ class CreateLogAnomalyDetectorRequest < Struct.new(
527
+ :log_group_arn_list,
528
+ :detector_name,
529
+ :evaluation_frequency,
530
+ :filter_pattern,
531
+ :kms_key_id,
532
+ :anomaly_visibility_time,
533
+ :tags)
534
+ SENSITIVE = []
535
+ include Aws::Structure
536
+ end
537
+
538
+ # @!attribute [rw] anomaly_detector_arn
539
+ # The ARN of the log anomaly detector that you just created.
540
+ # @return [String]
541
+ #
542
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CreateLogAnomalyDetectorResponse AWS API Documentation
543
+ #
544
+ class CreateLogAnomalyDetectorResponse < Struct.new(
545
+ :anomaly_detector_arn)
546
+ SENSITIVE = []
547
+ include Aws::Structure
548
+ end
549
+
243
550
  # @!attribute [rw] log_group_name
244
- # The name of the log group.
551
+ # A name for the log group.
245
552
  # @return [String]
246
553
  #
247
554
  # @!attribute [rw] kms_key_id
@@ -271,12 +578,32 @@ module Aws::CloudWatchLogs
271
578
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
272
579
  # @return [Hash<String,String>]
273
580
  #
581
+ # @!attribute [rw] log_group_class
582
+ # Use this parameter to specify the log group class for this log
583
+ # group. There are two classes:
584
+ #
585
+ # * The `Standard` log class supports all CloudWatch Logs features.
586
+ #
587
+ # * The `Infrequent Access` log class supports a subset of CloudWatch
588
+ # Logs features and incurs lower costs.
589
+ #
590
+ # If you omit this parameter, the default of `STANDARD` is used.
591
+ #
592
+ # For details about the features supported by each class, see [Log
593
+ # classes][1]
594
+ #
595
+ #
596
+ #
597
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html
598
+ # @return [String]
599
+ #
274
600
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CreateLogGroupRequest AWS API Documentation
275
601
  #
276
602
  class CreateLogGroupRequest < Struct.new(
277
603
  :log_group_name,
278
604
  :kms_key_id,
279
- :tags)
605
+ :tags,
606
+ :log_group_class)
280
607
  SENSITIVE = []
281
608
  include Aws::Structure
282
609
  end
@@ -418,6 +745,24 @@ module Aws::CloudWatchLogs
418
745
  include Aws::Structure
419
746
  end
420
747
 
748
+ # @!attribute [rw] anomaly_detector_arn
749
+ # The ARN of the anomaly detector to delete. You can find the ARNs of
750
+ # log anomaly detectors in your account by using the
751
+ # [ListLogAnomalyDetectors][1] operation.
752
+ #
753
+ #
754
+ #
755
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListLogAnomalyDetectors.html
756
+ # @return [String]
757
+ #
758
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteLogAnomalyDetectorRequest AWS API Documentation
759
+ #
760
+ class DeleteLogAnomalyDetectorRequest < Struct.new(
761
+ :anomaly_detector_arn)
762
+ SENSITIVE = []
763
+ include Aws::Structure
764
+ end
765
+
421
766
  # @!attribute [rw] log_group_name
422
767
  # The name of the log group.
423
768
  # @return [String]
@@ -594,9 +939,9 @@ module Aws::CloudWatchLogs
594
939
 
595
940
  # This structure contains information about one *delivery destination*
596
941
  # in your account. A delivery destination is an Amazon Web Services
597
- # resource that represents an shared id="AWS"/&gt; service that logs
598
- # can be sent to. CloudWatch Logs, Amazon S3, are supported as Kinesis
599
- # Data Firehose delivery destinations.
942
+ # resource that represents an Amazon Web Services service that logs can
943
+ # be sent to. CloudWatch Logs, Amazon S3, are supported as Kinesis Data
944
+ # Firehose delivery destinations.
600
945
  #
601
946
  # To configure logs delivery between a supported Amazon Web Services
602
947
  # service and a destination, you must do the following:
@@ -721,7 +1066,7 @@ module Aws::CloudWatchLogs
721
1066
  #
722
1067
  #
723
1068
  #
724
- # [1]: https://docs.aws.amazon.com/ AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-vended-logs-permissions
1069
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html
725
1070
  # [2]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliverySource.html
726
1071
  # [3]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html
727
1072
  # [4]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestinationolicy.html
@@ -1072,6 +1417,23 @@ module Aws::CloudWatchLogs
1072
1417
  # the monitoring account.
1073
1418
  # @return [Boolean]
1074
1419
  #
1420
+ # @!attribute [rw] log_group_class
1421
+ # Specifies the log group class for this log group. There are two
1422
+ # classes:
1423
+ #
1424
+ # * The `Standard` log class supports all CloudWatch Logs features.
1425
+ #
1426
+ # * The `Infrequent Access` log class supports a subset of CloudWatch
1427
+ # Logs features and incurs lower costs.
1428
+ #
1429
+ # For details about the features supported by each class, see [Log
1430
+ # classes][1]
1431
+ #
1432
+ #
1433
+ #
1434
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html
1435
+ # @return [String]
1436
+ #
1075
1437
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeLogGroupsRequest AWS API Documentation
1076
1438
  #
1077
1439
  class DescribeLogGroupsRequest < Struct.new(
@@ -1080,7 +1442,8 @@ module Aws::CloudWatchLogs
1080
1442
  :log_group_name_pattern,
1081
1443
  :next_token,
1082
1444
  :limit,
1083
- :include_linked_accounts)
1445
+ :include_linked_accounts,
1446
+ :log_group_class)
1084
1447
  SENSITIVE = []
1085
1448
  include Aws::Structure
1086
1449
  end
@@ -1929,6 +2292,93 @@ module Aws::CloudWatchLogs
1929
2292
  include Aws::Structure
1930
2293
  end
1931
2294
 
2295
+ # @!attribute [rw] anomaly_detector_arn
2296
+ # The ARN of the anomaly detector to retrieve information about. You
2297
+ # can find the ARNs of log anomaly detectors in your account by using
2298
+ # the [ListLogAnomalyDetectors][1] operation.
2299
+ #
2300
+ #
2301
+ #
2302
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListLogAnomalyDetectors.html
2303
+ # @return [String]
2304
+ #
2305
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetLogAnomalyDetectorRequest AWS API Documentation
2306
+ #
2307
+ class GetLogAnomalyDetectorRequest < Struct.new(
2308
+ :anomaly_detector_arn)
2309
+ SENSITIVE = []
2310
+ include Aws::Structure
2311
+ end
2312
+
2313
+ # @!attribute [rw] detector_name
2314
+ # The name of the log anomaly detector
2315
+ # @return [String]
2316
+ #
2317
+ # @!attribute [rw] log_group_arn_list
2318
+ # An array of structures, where each structure contains the ARN of a
2319
+ # log group associated with this anomaly detector.
2320
+ # @return [Array<String>]
2321
+ #
2322
+ # @!attribute [rw] evaluation_frequency
2323
+ # Specifies how often the anomaly detector runs and look for
2324
+ # anomalies. Set this value according to the frequency that the log
2325
+ # group receives new logs. For example, if the log group receives new
2326
+ # log events every 10 minutes, then setting `evaluationFrequency` to
2327
+ # `FIFTEEN_MIN` might be appropriate.
2328
+ # @return [String]
2329
+ #
2330
+ # @!attribute [rw] filter_pattern
2331
+ # A symbolic description of how CloudWatch Logs should interpret the
2332
+ # data in each log event. For example, a log event can contain
2333
+ # timestamps, IP addresses, strings, and so on. You use the filter
2334
+ # pattern to specify what to look for in the log event message.
2335
+ # @return [String]
2336
+ #
2337
+ # @!attribute [rw] anomaly_detector_status
2338
+ # Specifies whether the anomaly detector is currently active. To
2339
+ # change its status, use the `enabled` parameter in the
2340
+ # [UpdateLogAnomalyDetector][1] operation.
2341
+ #
2342
+ #
2343
+ #
2344
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UpdateLogAnomalyDetector.html
2345
+ # @return [String]
2346
+ #
2347
+ # @!attribute [rw] kms_key_id
2348
+ # The ID of the KMS key assigned to this anomaly detector, if any.
2349
+ # @return [String]
2350
+ #
2351
+ # @!attribute [rw] creation_time_stamp
2352
+ # The date and time when this anomaly detector was created.
2353
+ # @return [Integer]
2354
+ #
2355
+ # @!attribute [rw] last_modified_time_stamp
2356
+ # The date and time when this anomaly detector was most recently
2357
+ # modified.
2358
+ # @return [Integer]
2359
+ #
2360
+ # @!attribute [rw] anomaly_visibility_time
2361
+ # The number of days used as the life cycle of anomalies. After this
2362
+ # time, anomalies are automatically baselined and the anomaly detector
2363
+ # model will treat new occurrences of similar event as normal.
2364
+ # @return [Integer]
2365
+ #
2366
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetLogAnomalyDetectorResponse AWS API Documentation
2367
+ #
2368
+ class GetLogAnomalyDetectorResponse < Struct.new(
2369
+ :detector_name,
2370
+ :log_group_arn_list,
2371
+ :evaluation_frequency,
2372
+ :filter_pattern,
2373
+ :anomaly_detector_status,
2374
+ :kms_key_id,
2375
+ :creation_time_stamp,
2376
+ :last_modified_time_stamp,
2377
+ :anomaly_visibility_time)
2378
+ SENSITIVE = []
2379
+ include Aws::Structure
2380
+ end
2381
+
1932
2382
  # @!attribute [rw] log_group_name
1933
2383
  # The name of the log group.
1934
2384
  #
@@ -2247,6 +2697,101 @@ module Aws::CloudWatchLogs
2247
2697
  #
2248
2698
  class LimitExceededException < Aws::EmptyStructure; end
2249
2699
 
2700
+ # @!attribute [rw] anomaly_detector_arn
2701
+ # Use this to optionally limit the results to only the anomalies found
2702
+ # by a certain anomaly detector.
2703
+ # @return [String]
2704
+ #
2705
+ # @!attribute [rw] suppression_state
2706
+ # You can specify this parameter if you want to the operation to
2707
+ # return only anomalies that are currently either suppressed or
2708
+ # unsuppressed.
2709
+ # @return [String]
2710
+ #
2711
+ # @!attribute [rw] limit
2712
+ # The maximum number of items to return. If you don't specify a
2713
+ # value, the default maximum value of 50 items is used.
2714
+ # @return [Integer]
2715
+ #
2716
+ # @!attribute [rw] next_token
2717
+ # The token for the next set of items to return. The token expires
2718
+ # after 24 hours.
2719
+ # @return [String]
2720
+ #
2721
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListAnomaliesRequest AWS API Documentation
2722
+ #
2723
+ class ListAnomaliesRequest < Struct.new(
2724
+ :anomaly_detector_arn,
2725
+ :suppression_state,
2726
+ :limit,
2727
+ :next_token)
2728
+ SENSITIVE = []
2729
+ include Aws::Structure
2730
+ end
2731
+
2732
+ # @!attribute [rw] anomalies
2733
+ # An array of structures, where each structure contains information
2734
+ # about one anomaly that a log anomaly detector has found.
2735
+ # @return [Array<Types::Anomaly>]
2736
+ #
2737
+ # @!attribute [rw] next_token
2738
+ # The token for the next set of items to return. The token expires
2739
+ # after 24 hours.
2740
+ # @return [String]
2741
+ #
2742
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListAnomaliesResponse AWS API Documentation
2743
+ #
2744
+ class ListAnomaliesResponse < Struct.new(
2745
+ :anomalies,
2746
+ :next_token)
2747
+ SENSITIVE = []
2748
+ include Aws::Structure
2749
+ end
2750
+
2751
+ # @!attribute [rw] filter_log_group_arn
2752
+ # Use this to optionally filter the results to only include anomaly
2753
+ # detectors that are associated with the specified log group.
2754
+ # @return [String]
2755
+ #
2756
+ # @!attribute [rw] limit
2757
+ # The maximum number of items to return. If you don't specify a
2758
+ # value, the default maximum value of 50 items is used.
2759
+ # @return [Integer]
2760
+ #
2761
+ # @!attribute [rw] next_token
2762
+ # The token for the next set of items to return. The token expires
2763
+ # after 24 hours.
2764
+ # @return [String]
2765
+ #
2766
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListLogAnomalyDetectorsRequest AWS API Documentation
2767
+ #
2768
+ class ListLogAnomalyDetectorsRequest < Struct.new(
2769
+ :filter_log_group_arn,
2770
+ :limit,
2771
+ :next_token)
2772
+ SENSITIVE = []
2773
+ include Aws::Structure
2774
+ end
2775
+
2776
+ # @!attribute [rw] anomaly_detectors
2777
+ # An array of structures, where each structure in the array contains
2778
+ # information about one anomaly detector.
2779
+ # @return [Array<Types::AnomalyDetector>]
2780
+ #
2781
+ # @!attribute [rw] next_token
2782
+ # The token for the next set of items to return. The token expires
2783
+ # after 24 hours.
2784
+ # @return [String]
2785
+ #
2786
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListLogAnomalyDetectorsResponse AWS API Documentation
2787
+ #
2788
+ class ListLogAnomalyDetectorsResponse < Struct.new(
2789
+ :anomaly_detectors,
2790
+ :next_token)
2791
+ SENSITIVE = []
2792
+ include Aws::Structure
2793
+ end
2794
+
2250
2795
  # @!attribute [rw] resource_arn
2251
2796
  # The ARN of the resource that you want to view tags for.
2252
2797
  #
@@ -2365,6 +2910,23 @@ module Aws::CloudWatchLogs
2365
2910
  # account-level settings.
2366
2911
  # @return [Array<String>]
2367
2912
  #
2913
+ # @!attribute [rw] log_group_class
2914
+ # This specifies the log group class for this log group. There are two
2915
+ # classes:
2916
+ #
2917
+ # * The `Standard` log class supports all CloudWatch Logs features.
2918
+ #
2919
+ # * The `Infrequent Access` log class supports a subset of CloudWatch
2920
+ # Logs features and incurs lower costs.
2921
+ #
2922
+ # For details about the features supported by each class, see [Log
2923
+ # classes][1]
2924
+ #
2925
+ #
2926
+ #
2927
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html
2928
+ # @return [String]
2929
+ #
2368
2930
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/LogGroup AWS API Documentation
2369
2931
  #
2370
2932
  class LogGroup < Struct.new(
@@ -2376,7 +2938,8 @@ module Aws::CloudWatchLogs
2376
2938
  :stored_bytes,
2377
2939
  :kms_key_id,
2378
2940
  :data_protection_status,
2379
- :inherited_properties)
2941
+ :inherited_properties,
2942
+ :log_group_class)
2380
2943
  SENSITIVE = []
2381
2944
  include Aws::Structure
2382
2945
  end
@@ -2663,6 +3226,48 @@ module Aws::CloudWatchLogs
2663
3226
  include Aws::Structure
2664
3227
  end
2665
3228
 
3229
+ # A tructures that contains information about one pattern token related
3230
+ # to an anomaly.
3231
+ #
3232
+ # For more information about patterns and tokens, see
3233
+ # [CreateLogAnomalyDetector][1].
3234
+ #
3235
+ #
3236
+ #
3237
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogAnomalyDetector.html
3238
+ #
3239
+ # @!attribute [rw] dynamic_token_position
3240
+ # For a dynamic token, this indicates where in the pattern that this
3241
+ # token appears, related to other dynamic tokens. The dynamic token
3242
+ # that appears first has a value of `1`, the one that appears second
3243
+ # is `2`, and so on.
3244
+ # @return [Integer]
3245
+ #
3246
+ # @!attribute [rw] is_dynamic
3247
+ # Specifies whether this is a dynamic token.
3248
+ # @return [Boolean]
3249
+ #
3250
+ # @!attribute [rw] token_string
3251
+ # The string represented by this token. If this is a dynamic token,
3252
+ # the value will be `<*>`
3253
+ # @return [String]
3254
+ #
3255
+ # @!attribute [rw] enumerations
3256
+ # Contains the values found for a dynamic token, and the number of
3257
+ # times each value was found.
3258
+ # @return [Hash<String,Integer>]
3259
+ #
3260
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PatternToken AWS API Documentation
3261
+ #
3262
+ class PatternToken < Struct.new(
3263
+ :dynamic_token_position,
3264
+ :is_dynamic,
3265
+ :token_string,
3266
+ :enumerations)
3267
+ SENSITIVE = []
3268
+ include Aws::Structure
3269
+ end
3270
+
2666
3271
  # A structure that contains information about one delivery destination
2667
3272
  # policy.
2668
3273
  #
@@ -3810,6 +4415,28 @@ module Aws::CloudWatchLogs
3810
4415
  include Aws::Structure
3811
4416
  end
3812
4417
 
4418
+ # If you are suppressing an anomaly temporariliy, this structure defines
4419
+ # how long the suppression period is to be.
4420
+ #
4421
+ # @!attribute [rw] value
4422
+ # Specifies the number of seconds, minutes or hours to suppress this
4423
+ # anomaly. There is no maximum.
4424
+ # @return [Integer]
4425
+ #
4426
+ # @!attribute [rw] suppression_unit
4427
+ # Specifies whether the value of `value` is in seconds, minutes, or
4428
+ # hours.
4429
+ # @return [String]
4430
+ #
4431
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/SuppressionPeriod AWS API Documentation
4432
+ #
4433
+ class SuppressionPeriod < Struct.new(
4434
+ :value,
4435
+ :suppression_unit)
4436
+ SENSITIVE = []
4437
+ include Aws::Structure
4438
+ end
4439
+
3813
4440
  # @!attribute [rw] log_group_name
3814
4441
  # The name of the log group.
3815
4442
  # @return [String]
@@ -3968,6 +4595,98 @@ module Aws::CloudWatchLogs
3968
4595
  include Aws::Structure
3969
4596
  end
3970
4597
 
4598
+ # @!attribute [rw] anomaly_id
4599
+ # If you are suppressing or unsuppressing an anomaly, specify its
4600
+ # unique ID here. You can find anomaly IDs by using the
4601
+ # [ListAnomalies][1] operation.
4602
+ #
4603
+ #
4604
+ #
4605
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListAnomalies.html
4606
+ # @return [String]
4607
+ #
4608
+ # @!attribute [rw] pattern_id
4609
+ # If you are suppressing or unsuppressing an pattern, specify its
4610
+ # unique ID here. You can find pattern IDs by using the
4611
+ # [ListAnomalies][1] operation.
4612
+ #
4613
+ #
4614
+ #
4615
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListAnomalies.html
4616
+ # @return [String]
4617
+ #
4618
+ # @!attribute [rw] anomaly_detector_arn
4619
+ # The ARN of the anomaly detector that this operation is to act on.
4620
+ # @return [String]
4621
+ #
4622
+ # @!attribute [rw] suppression_type
4623
+ # Use this to specify whether the suppression to be temporary or
4624
+ # infinite. If you specify `LIMITED`, you must also specify a
4625
+ # `suppressionPeriod`. If you specify `INFINITE`, any value for
4626
+ # `suppressionPeriod` is ignored.
4627
+ # @return [String]
4628
+ #
4629
+ # @!attribute [rw] suppression_period
4630
+ # If you are temporarily suppressing an anomaly or pattern, use this
4631
+ # structure to specify how long the suppression is to last.
4632
+ # @return [Types::SuppressionPeriod]
4633
+ #
4634
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/UpdateAnomalyRequest AWS API Documentation
4635
+ #
4636
+ class UpdateAnomalyRequest < Struct.new(
4637
+ :anomaly_id,
4638
+ :pattern_id,
4639
+ :anomaly_detector_arn,
4640
+ :suppression_type,
4641
+ :suppression_period)
4642
+ SENSITIVE = []
4643
+ include Aws::Structure
4644
+ end
4645
+
4646
+ # @!attribute [rw] anomaly_detector_arn
4647
+ # The ARN of the anomaly detector that you want to update.
4648
+ # @return [String]
4649
+ #
4650
+ # @!attribute [rw] evaluation_frequency
4651
+ # Specifies how often the anomaly detector runs and look for
4652
+ # anomalies. Set this value according to the frequency that the log
4653
+ # group receives new logs. For example, if the log group receives new
4654
+ # log events every 10 minutes, then setting `evaluationFrequency` to
4655
+ # `FIFTEEN_MIN` might be appropriate.
4656
+ # @return [String]
4657
+ #
4658
+ # @!attribute [rw] filter_pattern
4659
+ # A symbolic description of how CloudWatch Logs should interpret the
4660
+ # data in each log event. For example, a log event can contain
4661
+ # timestamps, IP addresses, strings, and so on. You use the filter
4662
+ # pattern to specify what to look for in the log event message.
4663
+ # @return [String]
4664
+ #
4665
+ # @!attribute [rw] anomaly_visibility_time
4666
+ # The number of days to use as the life cycle of anomalies. After this
4667
+ # time, anomalies are automatically baselined and the anomaly detector
4668
+ # model will treat new occurrences of similar event as normal.
4669
+ # Therefore, if you do not correct the cause of an anomaly during this
4670
+ # time, it will be considered normal going forward and will not be
4671
+ # detected.
4672
+ # @return [Integer]
4673
+ #
4674
+ # @!attribute [rw] enabled
4675
+ # Use this parameter to pause or restart the anomaly detector.
4676
+ # @return [Boolean]
4677
+ #
4678
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/UpdateLogAnomalyDetectorRequest AWS API Documentation
4679
+ #
4680
+ class UpdateLogAnomalyDetectorRequest < Struct.new(
4681
+ :anomaly_detector_arn,
4682
+ :evaluation_frequency,
4683
+ :filter_pattern,
4684
+ :anomaly_visibility_time,
4685
+ :enabled)
4686
+ SENSITIVE = []
4687
+ include Aws::Structure
4688
+ end
4689
+
3971
4690
  # One of the parameters for the request is not valid.
3972
4691
  #
3973
4692
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ValidationException AWS API Documentation