aws-sdk-cloudfront 1.35.0 → 1.39.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a9227c424a2ad96173caee3989a47df53983502a402147a79ec9d7e2b2beddfc
4
- data.tar.gz: 24c8a7ff58f586488200408c77e19360addf0c0148e02b0ed3dc578cc4b391b0
3
+ metadata.gz: ccbe8660ce4fda87fe3a3157c315daa421ce434071b370585bc5d4f179681074
4
+ data.tar.gz: 0272b69b1e15a4aa169e557997a108eb4cdb3ed19be56b245e88c2d374d62910
5
5
  SHA512:
6
- metadata.gz: e360c0a16fb8edad53a4adeb55ec2edf62afb84e0003b4c5798c2f0a6809b3419284b158f1fa6bed3c16a248494183a19c7bccec2d47a2893148d9136ec556de
7
- data.tar.gz: d58a74a36eb62fc0ab186d3de1dbac71aeb4bf13ed3c45388ac555f928a164f93d52effb50bb5081295b01f82b31610d9b23578a950526279276e82e5e50068a
6
+ metadata.gz: d363da19bb0b769819f0abdbae0db739ecc381a4f5c8afab2e480f5fe4885af40d5c850c967751b5a769acb0de315209f4f6bef32ef8aa69b05947696b97605e
7
+ data.tar.gz: 59676ce258bca96f30063cfd32b85b27fff69a6fcb9a64b917d8a59c6ca8404c9bb78bacee401ec7f851124d0a889834f06ccdc95f11600c567ef3eb1b6ccc0f
@@ -45,9 +45,9 @@ require_relative 'aws-sdk-cloudfront/customizations'
45
45
  #
46
46
  # See {Errors} for more information.
47
47
  #
48
- # @service
48
+ # @!group service
49
49
  module Aws::CloudFront
50
50
 
51
- GEM_VERSION = '1.35.0'
51
+ GEM_VERSION = '1.39.0'
52
52
 
53
53
  end
@@ -85,13 +85,28 @@ module Aws::CloudFront
85
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
86
  # credentials.
87
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
88
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
89
103
  # from an EC2 IMDS on an EC2 instance.
90
104
  #
91
- # * `Aws::SharedCredentials` - Used for loading credentials from a
92
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
93
107
  #
94
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
95
110
  #
96
111
  # When `:credentials` are not configured directly, the following
97
112
  # locations will be searched for credentials:
@@ -101,10 +116,10 @@ module Aws::CloudFront
101
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
102
117
  # * `~/.aws/credentials`
103
118
  # * `~/.aws/config`
104
- # * EC2 IMDS instance profile - When used by default, the timeouts are
105
- # very aggressive. Construct and pass an instance of
106
- # `Aws::InstanceProfileCredentails` to enable retries and extended
107
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
108
123
  #
109
124
  # @option options [required, String] :region
110
125
  # The AWS region to connect to. The configured `:region` is
@@ -591,6 +606,7 @@ module Aws::CloudFront
591
606
  # ],
592
607
  # },
593
608
  # field_level_encryption_id: "string",
609
+ # realtime_log_config_arn: "string",
594
610
  # cache_policy_id: "string",
595
611
  # origin_request_policy_id: "string",
596
612
  # forwarded_values: {
@@ -648,6 +664,7 @@ module Aws::CloudFront
648
664
  # ],
649
665
  # },
650
666
  # field_level_encryption_id: "string",
667
+ # realtime_log_config_arn: "string",
651
668
  # cache_policy_id: "string",
652
669
  # origin_request_policy_id: "string",
653
670
  # forwarded_values: {
@@ -698,7 +715,7 @@ module Aws::CloudFront
698
715
  # cloud_front_default_certificate: false,
699
716
  # iam_certificate_id: "string",
700
717
  # acm_certificate_arn: "string",
701
- # ssl_support_method: "sni-only", # accepts sni-only, vip
718
+ # ssl_support_method: "sni-only", # accepts sni-only, vip, static-ip
702
719
  # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1, TLSv1_2016, TLSv1.1_2016, TLSv1.2_2018, TLSv1.2_2019
703
720
  # certificate: "string",
704
721
  # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
@@ -785,6 +802,7 @@ module Aws::CloudFront
785
802
  # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
786
803
  # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].include_body #=> Boolean
787
804
  # resp.distribution.distribution_config.default_cache_behavior.field_level_encryption_id #=> String
805
+ # resp.distribution.distribution_config.default_cache_behavior.realtime_log_config_arn #=> String
788
806
  # resp.distribution.distribution_config.default_cache_behavior.cache_policy_id #=> String
789
807
  # resp.distribution.distribution_config.default_cache_behavior.origin_request_policy_id #=> String
790
808
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
@@ -824,6 +842,7 @@ module Aws::CloudFront
824
842
  # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
825
843
  # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].include_body #=> Boolean
826
844
  # resp.distribution.distribution_config.cache_behaviors.items[0].field_level_encryption_id #=> String
845
+ # resp.distribution.distribution_config.cache_behaviors.items[0].realtime_log_config_arn #=> String
827
846
  # resp.distribution.distribution_config.cache_behaviors.items[0].cache_policy_id #=> String
828
847
  # resp.distribution.distribution_config.cache_behaviors.items[0].origin_request_policy_id #=> String
829
848
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
@@ -856,7 +875,7 @@ module Aws::CloudFront
856
875
  # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
857
876
  # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
858
877
  # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
859
- # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
878
+ # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
860
879
  # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019"
861
880
  # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
862
881
  # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
@@ -990,6 +1009,7 @@ module Aws::CloudFront
990
1009
  # ],
991
1010
  # },
992
1011
  # field_level_encryption_id: "string",
1012
+ # realtime_log_config_arn: "string",
993
1013
  # cache_policy_id: "string",
994
1014
  # origin_request_policy_id: "string",
995
1015
  # forwarded_values: {
@@ -1047,6 +1067,7 @@ module Aws::CloudFront
1047
1067
  # ],
1048
1068
  # },
1049
1069
  # field_level_encryption_id: "string",
1070
+ # realtime_log_config_arn: "string",
1050
1071
  # cache_policy_id: "string",
1051
1072
  # origin_request_policy_id: "string",
1052
1073
  # forwarded_values: {
@@ -1097,7 +1118,7 @@ module Aws::CloudFront
1097
1118
  # cloud_front_default_certificate: false,
1098
1119
  # iam_certificate_id: "string",
1099
1120
  # acm_certificate_arn: "string",
1100
- # ssl_support_method: "sni-only", # accepts sni-only, vip
1121
+ # ssl_support_method: "sni-only", # accepts sni-only, vip, static-ip
1101
1122
  # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1, TLSv1_2016, TLSv1.1_2016, TLSv1.2_2018, TLSv1.2_2019
1102
1123
  # certificate: "string",
1103
1124
  # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
@@ -1193,6 +1214,7 @@ module Aws::CloudFront
1193
1214
  # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
1194
1215
  # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].include_body #=> Boolean
1195
1216
  # resp.distribution.distribution_config.default_cache_behavior.field_level_encryption_id #=> String
1217
+ # resp.distribution.distribution_config.default_cache_behavior.realtime_log_config_arn #=> String
1196
1218
  # resp.distribution.distribution_config.default_cache_behavior.cache_policy_id #=> String
1197
1219
  # resp.distribution.distribution_config.default_cache_behavior.origin_request_policy_id #=> String
1198
1220
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
@@ -1232,6 +1254,7 @@ module Aws::CloudFront
1232
1254
  # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
1233
1255
  # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].include_body #=> Boolean
1234
1256
  # resp.distribution.distribution_config.cache_behaviors.items[0].field_level_encryption_id #=> String
1257
+ # resp.distribution.distribution_config.cache_behaviors.items[0].realtime_log_config_arn #=> String
1235
1258
  # resp.distribution.distribution_config.cache_behaviors.items[0].cache_policy_id #=> String
1236
1259
  # resp.distribution.distribution_config.cache_behaviors.items[0].origin_request_policy_id #=> String
1237
1260
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
@@ -1264,7 +1287,7 @@ module Aws::CloudFront
1264
1287
  # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
1265
1288
  # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
1266
1289
  # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
1267
- # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
1290
+ # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
1268
1291
  # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019"
1269
1292
  # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
1270
1293
  # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
@@ -1470,6 +1493,52 @@ module Aws::CloudFront
1470
1493
  req.send_request(options)
1471
1494
  end
1472
1495
 
1496
+ # Enables additional CloudWatch metrics for the specified CloudFront
1497
+ # distribution. The additional metrics incur an additional cost.
1498
+ #
1499
+ # For more information, see [Viewing additional CloudFront distribution
1500
+ # metrics][1] in the *Amazon CloudFront Developer Guide*.
1501
+ #
1502
+ #
1503
+ #
1504
+ # [1]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/viewing-cloudfront-metrics.html#monitoring-console.distributions-additional
1505
+ #
1506
+ # @option params [required, String] :distribution_id
1507
+ # The ID of the distribution that you are enabling metrics for.
1508
+ #
1509
+ # @option params [required, Types::MonitoringSubscription] :monitoring_subscription
1510
+ # A monitoring subscription. This structure contains information about
1511
+ # whether additional CloudWatch metrics are enabled for a given
1512
+ # CloudFront distribution.
1513
+ #
1514
+ # @return [Types::CreateMonitoringSubscriptionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1515
+ #
1516
+ # * {Types::CreateMonitoringSubscriptionResult#monitoring_subscription #monitoring_subscription} => Types::MonitoringSubscription
1517
+ #
1518
+ # @example Request syntax with placeholder values
1519
+ #
1520
+ # resp = client.create_monitoring_subscription({
1521
+ # distribution_id: "string", # required
1522
+ # monitoring_subscription: { # required
1523
+ # realtime_metrics_subscription_config: {
1524
+ # realtime_metrics_subscription_status: "Enabled", # required, accepts Enabled, Disabled
1525
+ # },
1526
+ # },
1527
+ # })
1528
+ #
1529
+ # @example Response structure
1530
+ #
1531
+ # resp.monitoring_subscription.realtime_metrics_subscription_config.realtime_metrics_subscription_status #=> String, one of "Enabled", "Disabled"
1532
+ #
1533
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CreateMonitoringSubscription2020_05_31 AWS API Documentation
1534
+ #
1535
+ # @overload create_monitoring_subscription(params = {})
1536
+ # @param [Hash] params ({})
1537
+ def create_monitoring_subscription(params = {}, options = {})
1538
+ req = build_request(:create_monitoring_subscription, params)
1539
+ req.send_request(options)
1540
+ end
1541
+
1473
1542
  # Creates an origin request policy.
1474
1543
  #
1475
1544
  # After you create an origin request policy, you can attach it to one or
@@ -1614,6 +1683,84 @@ module Aws::CloudFront
1614
1683
  req.send_request(options)
1615
1684
  end
1616
1685
 
1686
+ # Creates a real-time log configuration.
1687
+ #
1688
+ # After you create a real-time log configuration, you can attach it to
1689
+ # one or more cache behaviors to send real-time log data to the
1690
+ # specified Amazon Kinesis data stream.
1691
+ #
1692
+ # For more information about real-time log configurations, see
1693
+ # [Real-time logs][1] in the *Amazon CloudFront Developer Guide*.
1694
+ #
1695
+ #
1696
+ #
1697
+ # [1]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html
1698
+ #
1699
+ # @option params [required, Array<Types::EndPoint>] :end_points
1700
+ # Contains information about the Amazon Kinesis data stream where you
1701
+ # are sending real-time log data.
1702
+ #
1703
+ # @option params [required, Array<String>] :fields
1704
+ # A list of fields to include in each real-time log record.
1705
+ #
1706
+ # For more information about fields, see [Real-time log configuration
1707
+ # fields][1] in the *Amazon CloudFront Developer Guide*.
1708
+ #
1709
+ #
1710
+ #
1711
+ # [1]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html#understand-real-time-log-config-fields
1712
+ #
1713
+ # @option params [required, String] :name
1714
+ # A unique name to identify this real-time log configuration.
1715
+ #
1716
+ # @option params [required, Integer] :sampling_rate
1717
+ # The sampling rate for this real-time log configuration. The sampling
1718
+ # rate determines the percentage of viewer requests that are represented
1719
+ # in the real-time log data. You must provide an integer between 1 and
1720
+ # 100, inclusive.
1721
+ #
1722
+ # @return [Types::CreateRealtimeLogConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1723
+ #
1724
+ # * {Types::CreateRealtimeLogConfigResult#realtime_log_config #realtime_log_config} => Types::RealtimeLogConfig
1725
+ #
1726
+ # @example Request syntax with placeholder values
1727
+ #
1728
+ # resp = client.create_realtime_log_config({
1729
+ # end_points: [ # required
1730
+ # {
1731
+ # stream_type: "string", # required
1732
+ # kinesis_stream_config: {
1733
+ # role_arn: "string", # required
1734
+ # stream_arn: "string", # required
1735
+ # },
1736
+ # },
1737
+ # ],
1738
+ # fields: ["string"], # required
1739
+ # name: "string", # required
1740
+ # sampling_rate: 1, # required
1741
+ # })
1742
+ #
1743
+ # @example Response structure
1744
+ #
1745
+ # resp.realtime_log_config.arn #=> String
1746
+ # resp.realtime_log_config.name #=> String
1747
+ # resp.realtime_log_config.sampling_rate #=> Integer
1748
+ # resp.realtime_log_config.end_points #=> Array
1749
+ # resp.realtime_log_config.end_points[0].stream_type #=> String
1750
+ # resp.realtime_log_config.end_points[0].kinesis_stream_config.role_arn #=> String
1751
+ # resp.realtime_log_config.end_points[0].kinesis_stream_config.stream_arn #=> String
1752
+ # resp.realtime_log_config.fields #=> Array
1753
+ # resp.realtime_log_config.fields[0] #=> String
1754
+ #
1755
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CreateRealtimeLogConfig2020_05_31 AWS API Documentation
1756
+ #
1757
+ # @overload create_realtime_log_config(params = {})
1758
+ # @param [Hash] params ({})
1759
+ def create_realtime_log_config(params = {}, options = {})
1760
+ req = build_request(:create_realtime_log_config, params)
1761
+ req.send_request(options)
1762
+ end
1763
+
1617
1764
  # Creates a new RTMP distribution. An RTMP distribution is similar to a
1618
1765
  # web distribution, but an RTMP distribution streams media files using
1619
1766
  # the Adobe Real-Time Messaging Protocol (RTMP) instead of serving files
@@ -1966,6 +2113,29 @@ module Aws::CloudFront
1966
2113
  req.send_request(options)
1967
2114
  end
1968
2115
 
2116
+ # Disables additional CloudWatch metrics for the specified CloudFront
2117
+ # distribution.
2118
+ #
2119
+ # @option params [required, String] :distribution_id
2120
+ # The ID of the distribution that you are disabling metrics for.
2121
+ #
2122
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2123
+ #
2124
+ # @example Request syntax with placeholder values
2125
+ #
2126
+ # resp = client.delete_monitoring_subscription({
2127
+ # distribution_id: "string", # required
2128
+ # })
2129
+ #
2130
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteMonitoringSubscription2020_05_31 AWS API Documentation
2131
+ #
2132
+ # @overload delete_monitoring_subscription(params = {})
2133
+ # @param [Hash] params ({})
2134
+ def delete_monitoring_subscription(params = {}, options = {})
2135
+ req = build_request(:delete_monitoring_subscription, params)
2136
+ req.send_request(options)
2137
+ end
2138
+
1969
2139
  # Deletes an origin request policy.
1970
2140
  #
1971
2141
  # You cannot delete an origin request policy if it’s attached to any
@@ -2033,6 +2203,43 @@ module Aws::CloudFront
2033
2203
  req.send_request(options)
2034
2204
  end
2035
2205
 
2206
+ # Deletes a real-time log configuration.
2207
+ #
2208
+ # You cannot delete a real-time log configuration if it’s attached to a
2209
+ # cache behavior. First update your distributions to remove the
2210
+ # real-time log configuration from all cache behaviors, then delete the
2211
+ # real-time log configuration.
2212
+ #
2213
+ # To delete a real-time log configuration, you can provide the
2214
+ # configuration’s name or its Amazon Resource Name (ARN). You must
2215
+ # provide at least one. If you provide both, CloudFront uses the name to
2216
+ # identify the real-time log configuration to delete.
2217
+ #
2218
+ # @option params [String] :name
2219
+ # The name of the real-time log configuration to delete.
2220
+ #
2221
+ # @option params [String] :arn
2222
+ # The Amazon Resource Name (ARN) of the real-time log configuration to
2223
+ # delete.
2224
+ #
2225
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2226
+ #
2227
+ # @example Request syntax with placeholder values
2228
+ #
2229
+ # resp = client.delete_realtime_log_config({
2230
+ # name: "string",
2231
+ # arn: "string",
2232
+ # })
2233
+ #
2234
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteRealtimeLogConfig2020_05_31 AWS API Documentation
2235
+ #
2236
+ # @overload delete_realtime_log_config(params = {})
2237
+ # @param [Hash] params ({})
2238
+ def delete_realtime_log_config(params = {}, options = {})
2239
+ req = build_request(:delete_realtime_log_config, params)
2240
+ req.send_request(options)
2241
+ end
2242
+
2036
2243
  # Delete a streaming distribution. To delete an RTMP distribution using
2037
2244
  # the CloudFront API, perform the following steps.
2038
2245
  #
@@ -2374,6 +2581,7 @@ module Aws::CloudFront
2374
2581
  # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
2375
2582
  # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].include_body #=> Boolean
2376
2583
  # resp.distribution.distribution_config.default_cache_behavior.field_level_encryption_id #=> String
2584
+ # resp.distribution.distribution_config.default_cache_behavior.realtime_log_config_arn #=> String
2377
2585
  # resp.distribution.distribution_config.default_cache_behavior.cache_policy_id #=> String
2378
2586
  # resp.distribution.distribution_config.default_cache_behavior.origin_request_policy_id #=> String
2379
2587
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
@@ -2413,6 +2621,7 @@ module Aws::CloudFront
2413
2621
  # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
2414
2622
  # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].include_body #=> Boolean
2415
2623
  # resp.distribution.distribution_config.cache_behaviors.items[0].field_level_encryption_id #=> String
2624
+ # resp.distribution.distribution_config.cache_behaviors.items[0].realtime_log_config_arn #=> String
2416
2625
  # resp.distribution.distribution_config.cache_behaviors.items[0].cache_policy_id #=> String
2417
2626
  # resp.distribution.distribution_config.cache_behaviors.items[0].origin_request_policy_id #=> String
2418
2627
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
@@ -2445,7 +2654,7 @@ module Aws::CloudFront
2445
2654
  # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
2446
2655
  # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
2447
2656
  # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
2448
- # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
2657
+ # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
2449
2658
  # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019"
2450
2659
  # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
2451
2660
  # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
@@ -2548,6 +2757,7 @@ module Aws::CloudFront
2548
2757
  # resp.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
2549
2758
  # resp.distribution_config.default_cache_behavior.lambda_function_associations.items[0].include_body #=> Boolean
2550
2759
  # resp.distribution_config.default_cache_behavior.field_level_encryption_id #=> String
2760
+ # resp.distribution_config.default_cache_behavior.realtime_log_config_arn #=> String
2551
2761
  # resp.distribution_config.default_cache_behavior.cache_policy_id #=> String
2552
2762
  # resp.distribution_config.default_cache_behavior.origin_request_policy_id #=> String
2553
2763
  # resp.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
@@ -2587,6 +2797,7 @@ module Aws::CloudFront
2587
2797
  # resp.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
2588
2798
  # resp.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].include_body #=> Boolean
2589
2799
  # resp.distribution_config.cache_behaviors.items[0].field_level_encryption_id #=> String
2800
+ # resp.distribution_config.cache_behaviors.items[0].realtime_log_config_arn #=> String
2590
2801
  # resp.distribution_config.cache_behaviors.items[0].cache_policy_id #=> String
2591
2802
  # resp.distribution_config.cache_behaviors.items[0].origin_request_policy_id #=> String
2592
2803
  # resp.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
@@ -2619,7 +2830,7 @@ module Aws::CloudFront
2619
2830
  # resp.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
2620
2831
  # resp.distribution_config.viewer_certificate.iam_certificate_id #=> String
2621
2832
  # resp.distribution_config.viewer_certificate.acm_certificate_arn #=> String
2622
- # resp.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
2833
+ # resp.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
2623
2834
  # resp.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019"
2624
2835
  # resp.distribution_config.viewer_certificate.certificate #=> String
2625
2836
  # resp.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
@@ -2854,6 +3065,36 @@ module Aws::CloudFront
2854
3065
  req.send_request(options)
2855
3066
  end
2856
3067
 
3068
+ # Gets information about whether additional CloudWatch metrics are
3069
+ # enabled for the specified CloudFront distribution.
3070
+ #
3071
+ # @option params [required, String] :distribution_id
3072
+ # The ID of the distribution that you are getting metrics information
3073
+ # for.
3074
+ #
3075
+ # @return [Types::GetMonitoringSubscriptionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3076
+ #
3077
+ # * {Types::GetMonitoringSubscriptionResult#monitoring_subscription #monitoring_subscription} => Types::MonitoringSubscription
3078
+ #
3079
+ # @example Request syntax with placeholder values
3080
+ #
3081
+ # resp = client.get_monitoring_subscription({
3082
+ # distribution_id: "string", # required
3083
+ # })
3084
+ #
3085
+ # @example Response structure
3086
+ #
3087
+ # resp.monitoring_subscription.realtime_metrics_subscription_config.realtime_metrics_subscription_status #=> String, one of "Enabled", "Disabled"
3088
+ #
3089
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetMonitoringSubscription2020_05_31 AWS API Documentation
3090
+ #
3091
+ # @overload get_monitoring_subscription(params = {})
3092
+ # @param [Hash] params ({})
3093
+ def get_monitoring_subscription(params = {}, options = {})
3094
+ req = build_request(:get_monitoring_subscription, params)
3095
+ req.send_request(options)
3096
+ end
3097
+
2857
3098
  # Gets an origin request policy, including the following metadata:
2858
3099
  #
2859
3100
  # * The policy’s identifier.
@@ -3038,6 +3279,52 @@ module Aws::CloudFront
3038
3279
  req.send_request(options)
3039
3280
  end
3040
3281
 
3282
+ # Gets a real-time log configuration.
3283
+ #
3284
+ # To get a real-time log configuration, you can provide the
3285
+ # configuration’s name or its Amazon Resource Name (ARN). You must
3286
+ # provide at least one. If you provide both, CloudFront uses the name to
3287
+ # identify the real-time log configuration to get.
3288
+ #
3289
+ # @option params [String] :name
3290
+ # The name of the real-time log configuration to get.
3291
+ #
3292
+ # @option params [String] :arn
3293
+ # The Amazon Resource Name (ARN) of the real-time log configuration to
3294
+ # get.
3295
+ #
3296
+ # @return [Types::GetRealtimeLogConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3297
+ #
3298
+ # * {Types::GetRealtimeLogConfigResult#realtime_log_config #realtime_log_config} => Types::RealtimeLogConfig
3299
+ #
3300
+ # @example Request syntax with placeholder values
3301
+ #
3302
+ # resp = client.get_realtime_log_config({
3303
+ # name: "string",
3304
+ # arn: "string",
3305
+ # })
3306
+ #
3307
+ # @example Response structure
3308
+ #
3309
+ # resp.realtime_log_config.arn #=> String
3310
+ # resp.realtime_log_config.name #=> String
3311
+ # resp.realtime_log_config.sampling_rate #=> Integer
3312
+ # resp.realtime_log_config.end_points #=> Array
3313
+ # resp.realtime_log_config.end_points[0].stream_type #=> String
3314
+ # resp.realtime_log_config.end_points[0].kinesis_stream_config.role_arn #=> String
3315
+ # resp.realtime_log_config.end_points[0].kinesis_stream_config.stream_arn #=> String
3316
+ # resp.realtime_log_config.fields #=> Array
3317
+ # resp.realtime_log_config.fields[0] #=> String
3318
+ #
3319
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetRealtimeLogConfig2020_05_31 AWS API Documentation
3320
+ #
3321
+ # @overload get_realtime_log_config(params = {})
3322
+ # @param [Hash] params ({})
3323
+ def get_realtime_log_config(params = {}, options = {})
3324
+ req = build_request(:get_realtime_log_config, params)
3325
+ req.send_request(options)
3326
+ end
3327
+
3041
3328
  # Gets information about a specified RTMP distribution, including the
3042
3329
  # distribution configuration.
3043
3330
  #
@@ -3365,6 +3652,7 @@ module Aws::CloudFront
3365
3652
  # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
3366
3653
  # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].include_body #=> Boolean
3367
3654
  # resp.distribution_list.items[0].default_cache_behavior.field_level_encryption_id #=> String
3655
+ # resp.distribution_list.items[0].default_cache_behavior.realtime_log_config_arn #=> String
3368
3656
  # resp.distribution_list.items[0].default_cache_behavior.cache_policy_id #=> String
3369
3657
  # resp.distribution_list.items[0].default_cache_behavior.origin_request_policy_id #=> String
3370
3658
  # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
@@ -3404,6 +3692,7 @@ module Aws::CloudFront
3404
3692
  # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
3405
3693
  # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].include_body #=> Boolean
3406
3694
  # resp.distribution_list.items[0].cache_behaviors.items[0].field_level_encryption_id #=> String
3695
+ # resp.distribution_list.items[0].cache_behaviors.items[0].realtime_log_config_arn #=> String
3407
3696
  # resp.distribution_list.items[0].cache_behaviors.items[0].cache_policy_id #=> String
3408
3697
  # resp.distribution_list.items[0].cache_behaviors.items[0].origin_request_policy_id #=> String
3409
3698
  # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
@@ -3432,7 +3721,7 @@ module Aws::CloudFront
3432
3721
  # resp.distribution_list.items[0].viewer_certificate.cloud_front_default_certificate #=> Boolean
3433
3722
  # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
3434
3723
  # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
3435
- # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
3724
+ # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
3436
3725
  # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019"
3437
3726
  # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
3438
3727
  # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
@@ -3566,6 +3855,210 @@ module Aws::CloudFront
3566
3855
  req.send_request(options)
3567
3856
  end
3568
3857
 
3858
+ # Gets a list of distribution that have a cache behavior that’s
3859
+ # associated with the specified real-time log configuration.
3860
+ #
3861
+ # You can specify the real-time log configuration by its name or its
3862
+ # Amazon Resource Name (ARN). You must provide at least one. If you
3863
+ # provide both, CloudFront uses the name to identify the real-time log
3864
+ # configuration to list distributions for.
3865
+ #
3866
+ # You can optionally specify the maximum number of items to receive in
3867
+ # the response. If the total number of items in the list exceeds the
3868
+ # maximum that you specify, or the default maximum, the response is
3869
+ # paginated. To get the next page of items, send a subsequent request
3870
+ # that specifies the `NextMarker` value from the current response as the
3871
+ # `Marker` value in the subsequent request.
3872
+ #
3873
+ # @option params [String] :marker
3874
+ # Use this field when paginating results to indicate where to begin in
3875
+ # your list of distributions. The response includes distributions in the
3876
+ # list that occur after the marker. To get the next page of the list,
3877
+ # set this field’s value to the value of `NextMarker` from the current
3878
+ # page’s response.
3879
+ #
3880
+ # @option params [Integer] :max_items
3881
+ # The maximum number of distributions that you want in the response.
3882
+ #
3883
+ # @option params [String] :realtime_log_config_name
3884
+ # The name of the real-time log configuration whose associated
3885
+ # distributions you want to list.
3886
+ #
3887
+ # @option params [String] :realtime_log_config_arn
3888
+ # The Amazon Resource Name (ARN) of the real-time log configuration
3889
+ # whose associated distributions you want to list.
3890
+ #
3891
+ # @return [Types::ListDistributionsByRealtimeLogConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3892
+ #
3893
+ # * {Types::ListDistributionsByRealtimeLogConfigResult#distribution_list #distribution_list} => Types::DistributionList
3894
+ #
3895
+ # @example Request syntax with placeholder values
3896
+ #
3897
+ # resp = client.list_distributions_by_realtime_log_config({
3898
+ # marker: "string",
3899
+ # max_items: 1,
3900
+ # realtime_log_config_name: "string",
3901
+ # realtime_log_config_arn: "string",
3902
+ # })
3903
+ #
3904
+ # @example Response structure
3905
+ #
3906
+ # resp.distribution_list.marker #=> String
3907
+ # resp.distribution_list.next_marker #=> String
3908
+ # resp.distribution_list.max_items #=> Integer
3909
+ # resp.distribution_list.is_truncated #=> Boolean
3910
+ # resp.distribution_list.quantity #=> Integer
3911
+ # resp.distribution_list.items #=> Array
3912
+ # resp.distribution_list.items[0].id #=> String
3913
+ # resp.distribution_list.items[0].arn #=> String
3914
+ # resp.distribution_list.items[0].status #=> String
3915
+ # resp.distribution_list.items[0].last_modified_time #=> Time
3916
+ # resp.distribution_list.items[0].domain_name #=> String
3917
+ # resp.distribution_list.items[0].aliases.quantity #=> Integer
3918
+ # resp.distribution_list.items[0].aliases.items #=> Array
3919
+ # resp.distribution_list.items[0].aliases.items[0] #=> String
3920
+ # resp.distribution_list.items[0].origins.quantity #=> Integer
3921
+ # resp.distribution_list.items[0].origins.items #=> Array
3922
+ # resp.distribution_list.items[0].origins.items[0].id #=> String
3923
+ # resp.distribution_list.items[0].origins.items[0].domain_name #=> String
3924
+ # resp.distribution_list.items[0].origins.items[0].origin_path #=> String
3925
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.quantity #=> Integer
3926
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items #=> Array
3927
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_name #=> String
3928
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_value #=> String
3929
+ # resp.distribution_list.items[0].origins.items[0].s3_origin_config.origin_access_identity #=> String
3930
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.http_port #=> Integer
3931
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.https_port #=> Integer
3932
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
3933
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
3934
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
3935
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
3936
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_read_timeout #=> Integer
3937
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
3938
+ # resp.distribution_list.items[0].origins.items[0].connection_attempts #=> Integer
3939
+ # resp.distribution_list.items[0].origins.items[0].connection_timeout #=> Integer
3940
+ # resp.distribution_list.items[0].origin_groups.quantity #=> Integer
3941
+ # resp.distribution_list.items[0].origin_groups.items #=> Array
3942
+ # resp.distribution_list.items[0].origin_groups.items[0].id #=> String
3943
+ # resp.distribution_list.items[0].origin_groups.items[0].failover_criteria.status_codes.quantity #=> Integer
3944
+ # resp.distribution_list.items[0].origin_groups.items[0].failover_criteria.status_codes.items #=> Array
3945
+ # resp.distribution_list.items[0].origin_groups.items[0].failover_criteria.status_codes.items[0] #=> Integer
3946
+ # resp.distribution_list.items[0].origin_groups.items[0].members.quantity #=> Integer
3947
+ # resp.distribution_list.items[0].origin_groups.items[0].members.items #=> Array
3948
+ # resp.distribution_list.items[0].origin_groups.items[0].members.items[0].origin_id #=> String
3949
+ # resp.distribution_list.items[0].default_cache_behavior.target_origin_id #=> String
3950
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.enabled #=> Boolean
3951
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
3952
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
3953
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
3954
+ # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
3955
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
3956
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
3957
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
3958
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
3959
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items #=> Array
3960
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
3961
+ # resp.distribution_list.items[0].default_cache_behavior.smooth_streaming #=> Boolean
3962
+ # resp.distribution_list.items[0].default_cache_behavior.compress #=> Boolean
3963
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.quantity #=> Integer
3964
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items #=> Array
3965
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
3966
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
3967
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].include_body #=> Boolean
3968
+ # resp.distribution_list.items[0].default_cache_behavior.field_level_encryption_id #=> String
3969
+ # resp.distribution_list.items[0].default_cache_behavior.realtime_log_config_arn #=> String
3970
+ # resp.distribution_list.items[0].default_cache_behavior.cache_policy_id #=> String
3971
+ # resp.distribution_list.items[0].default_cache_behavior.origin_request_policy_id #=> String
3972
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
3973
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
3974
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
3975
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
3976
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
3977
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.quantity #=> Integer
3978
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items #=> Array
3979
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items[0] #=> String
3980
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
3981
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
3982
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
3983
+ # resp.distribution_list.items[0].default_cache_behavior.min_ttl #=> Integer
3984
+ # resp.distribution_list.items[0].default_cache_behavior.default_ttl #=> Integer
3985
+ # resp.distribution_list.items[0].default_cache_behavior.max_ttl #=> Integer
3986
+ # resp.distribution_list.items[0].cache_behaviors.quantity #=> Integer
3987
+ # resp.distribution_list.items[0].cache_behaviors.items #=> Array
3988
+ # resp.distribution_list.items[0].cache_behaviors.items[0].path_pattern #=> String
3989
+ # resp.distribution_list.items[0].cache_behaviors.items[0].target_origin_id #=> String
3990
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
3991
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
3992
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
3993
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
3994
+ # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
3995
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
3996
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
3997
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
3998
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
3999
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
4000
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
4001
+ # resp.distribution_list.items[0].cache_behaviors.items[0].smooth_streaming #=> Boolean
4002
+ # resp.distribution_list.items[0].cache_behaviors.items[0].compress #=> Boolean
4003
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
4004
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items #=> Array
4005
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
4006
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
4007
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].include_body #=> Boolean
4008
+ # resp.distribution_list.items[0].cache_behaviors.items[0].field_level_encryption_id #=> String
4009
+ # resp.distribution_list.items[0].cache_behaviors.items[0].realtime_log_config_arn #=> String
4010
+ # resp.distribution_list.items[0].cache_behaviors.items[0].cache_policy_id #=> String
4011
+ # resp.distribution_list.items[0].cache_behaviors.items[0].origin_request_policy_id #=> String
4012
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
4013
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
4014
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
4015
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
4016
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
4017
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
4018
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items #=> Array
4019
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
4020
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
4021
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
4022
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
4023
+ # resp.distribution_list.items[0].cache_behaviors.items[0].min_ttl #=> Integer
4024
+ # resp.distribution_list.items[0].cache_behaviors.items[0].default_ttl #=> Integer
4025
+ # resp.distribution_list.items[0].cache_behaviors.items[0].max_ttl #=> Integer
4026
+ # resp.distribution_list.items[0].custom_error_responses.quantity #=> Integer
4027
+ # resp.distribution_list.items[0].custom_error_responses.items #=> Array
4028
+ # resp.distribution_list.items[0].custom_error_responses.items[0].error_code #=> Integer
4029
+ # resp.distribution_list.items[0].custom_error_responses.items[0].response_page_path #=> String
4030
+ # resp.distribution_list.items[0].custom_error_responses.items[0].response_code #=> String
4031
+ # resp.distribution_list.items[0].custom_error_responses.items[0].error_caching_min_ttl #=> Integer
4032
+ # resp.distribution_list.items[0].comment #=> String
4033
+ # resp.distribution_list.items[0].price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
4034
+ # resp.distribution_list.items[0].enabled #=> Boolean
4035
+ # resp.distribution_list.items[0].viewer_certificate.cloud_front_default_certificate #=> Boolean
4036
+ # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
4037
+ # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
4038
+ # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
4039
+ # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019"
4040
+ # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
4041
+ # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
4042
+ # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
4043
+ # resp.distribution_list.items[0].restrictions.geo_restriction.quantity #=> Integer
4044
+ # resp.distribution_list.items[0].restrictions.geo_restriction.items #=> Array
4045
+ # resp.distribution_list.items[0].restrictions.geo_restriction.items[0] #=> String
4046
+ # resp.distribution_list.items[0].web_acl_id #=> String
4047
+ # resp.distribution_list.items[0].http_version #=> String, one of "http1.1", "http2"
4048
+ # resp.distribution_list.items[0].is_ipv6_enabled #=> Boolean
4049
+ # resp.distribution_list.items[0].alias_icp_recordals #=> Array
4050
+ # resp.distribution_list.items[0].alias_icp_recordals[0].cname #=> String
4051
+ # resp.distribution_list.items[0].alias_icp_recordals[0].icp_recordal_status #=> String, one of "APPROVED", "SUSPENDED", "PENDING"
4052
+ #
4053
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByRealtimeLogConfig2020_05_31 AWS API Documentation
4054
+ #
4055
+ # @overload list_distributions_by_realtime_log_config(params = {})
4056
+ # @param [Hash] params ({})
4057
+ def list_distributions_by_realtime_log_config(params = {}, options = {})
4058
+ req = build_request(:list_distributions_by_realtime_log_config, params)
4059
+ req.send_request(options)
4060
+ end
4061
+
3569
4062
  # List the distributions that are associated with a specified AWS WAF
3570
4063
  # web ACL.
3571
4064
  #
@@ -3663,6 +4156,7 @@ module Aws::CloudFront
3663
4156
  # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
3664
4157
  # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].include_body #=> Boolean
3665
4158
  # resp.distribution_list.items[0].default_cache_behavior.field_level_encryption_id #=> String
4159
+ # resp.distribution_list.items[0].default_cache_behavior.realtime_log_config_arn #=> String
3666
4160
  # resp.distribution_list.items[0].default_cache_behavior.cache_policy_id #=> String
3667
4161
  # resp.distribution_list.items[0].default_cache_behavior.origin_request_policy_id #=> String
3668
4162
  # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
@@ -3702,6 +4196,7 @@ module Aws::CloudFront
3702
4196
  # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
3703
4197
  # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].include_body #=> Boolean
3704
4198
  # resp.distribution_list.items[0].cache_behaviors.items[0].field_level_encryption_id #=> String
4199
+ # resp.distribution_list.items[0].cache_behaviors.items[0].realtime_log_config_arn #=> String
3705
4200
  # resp.distribution_list.items[0].cache_behaviors.items[0].cache_policy_id #=> String
3706
4201
  # resp.distribution_list.items[0].cache_behaviors.items[0].origin_request_policy_id #=> String
3707
4202
  # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
@@ -3730,7 +4225,7 @@ module Aws::CloudFront
3730
4225
  # resp.distribution_list.items[0].viewer_certificate.cloud_front_default_certificate #=> Boolean
3731
4226
  # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
3732
4227
  # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
3733
- # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
4228
+ # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
3734
4229
  # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019"
3735
4230
  # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
3736
4231
  # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
@@ -4039,6 +4534,63 @@ module Aws::CloudFront
4039
4534
  req.send_request(options)
4040
4535
  end
4041
4536
 
4537
+ # Gets a list of real-time log configurations.
4538
+ #
4539
+ # You can optionally specify the maximum number of items to receive in
4540
+ # the response. If the total number of items in the list exceeds the
4541
+ # maximum that you specify, or the default maximum, the response is
4542
+ # paginated. To get the next page of items, send a subsequent request
4543
+ # that specifies the `NextMarker` value from the current response as the
4544
+ # `Marker` value in the subsequent request.
4545
+ #
4546
+ # @option params [Integer] :max_items
4547
+ # The maximum number of real-time log configurations that you want in
4548
+ # the response.
4549
+ #
4550
+ # @option params [String] :marker
4551
+ # Use this field when paginating results to indicate where to begin in
4552
+ # your list of real-time log configurations. The response includes
4553
+ # real-time log configurations in the list that occur after the marker.
4554
+ # To get the next page of the list, set this field’s value to the value
4555
+ # of `NextMarker` from the current page’s response.
4556
+ #
4557
+ # @return [Types::ListRealtimeLogConfigsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4558
+ #
4559
+ # * {Types::ListRealtimeLogConfigsResult#realtime_log_configs #realtime_log_configs} => Types::RealtimeLogConfigs
4560
+ #
4561
+ # @example Request syntax with placeholder values
4562
+ #
4563
+ # resp = client.list_realtime_log_configs({
4564
+ # max_items: 1,
4565
+ # marker: "string",
4566
+ # })
4567
+ #
4568
+ # @example Response structure
4569
+ #
4570
+ # resp.realtime_log_configs.max_items #=> Integer
4571
+ # resp.realtime_log_configs.items #=> Array
4572
+ # resp.realtime_log_configs.items[0].arn #=> String
4573
+ # resp.realtime_log_configs.items[0].name #=> String
4574
+ # resp.realtime_log_configs.items[0].sampling_rate #=> Integer
4575
+ # resp.realtime_log_configs.items[0].end_points #=> Array
4576
+ # resp.realtime_log_configs.items[0].end_points[0].stream_type #=> String
4577
+ # resp.realtime_log_configs.items[0].end_points[0].kinesis_stream_config.role_arn #=> String
4578
+ # resp.realtime_log_configs.items[0].end_points[0].kinesis_stream_config.stream_arn #=> String
4579
+ # resp.realtime_log_configs.items[0].fields #=> Array
4580
+ # resp.realtime_log_configs.items[0].fields[0] #=> String
4581
+ # resp.realtime_log_configs.is_truncated #=> Boolean
4582
+ # resp.realtime_log_configs.marker #=> String
4583
+ # resp.realtime_log_configs.next_marker #=> String
4584
+ #
4585
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListRealtimeLogConfigs2020_05_31 AWS API Documentation
4586
+ #
4587
+ # @overload list_realtime_log_configs(params = {})
4588
+ # @param [Hash] params ({})
4589
+ def list_realtime_log_configs(params = {}, options = {})
4590
+ req = build_request(:list_realtime_log_configs, params)
4591
+ req.send_request(options)
4592
+ end
4593
+
4042
4594
  # List streaming distributions.
4043
4595
  #
4044
4596
  # @option params [String] :marker
@@ -4524,6 +5076,7 @@ module Aws::CloudFront
4524
5076
  # ],
4525
5077
  # },
4526
5078
  # field_level_encryption_id: "string",
5079
+ # realtime_log_config_arn: "string",
4527
5080
  # cache_policy_id: "string",
4528
5081
  # origin_request_policy_id: "string",
4529
5082
  # forwarded_values: {
@@ -4581,6 +5134,7 @@ module Aws::CloudFront
4581
5134
  # ],
4582
5135
  # },
4583
5136
  # field_level_encryption_id: "string",
5137
+ # realtime_log_config_arn: "string",
4584
5138
  # cache_policy_id: "string",
4585
5139
  # origin_request_policy_id: "string",
4586
5140
  # forwarded_values: {
@@ -4631,7 +5185,7 @@ module Aws::CloudFront
4631
5185
  # cloud_front_default_certificate: false,
4632
5186
  # iam_certificate_id: "string",
4633
5187
  # acm_certificate_arn: "string",
4634
- # ssl_support_method: "sni-only", # accepts sni-only, vip
5188
+ # ssl_support_method: "sni-only", # accepts sni-only, vip, static-ip
4635
5189
  # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1, TLSv1_2016, TLSv1.1_2016, TLSv1.2_2018, TLSv1.2_2019
4636
5190
  # certificate: "string",
4637
5191
  # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
@@ -4720,6 +5274,7 @@ module Aws::CloudFront
4720
5274
  # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
4721
5275
  # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].include_body #=> Boolean
4722
5276
  # resp.distribution.distribution_config.default_cache_behavior.field_level_encryption_id #=> String
5277
+ # resp.distribution.distribution_config.default_cache_behavior.realtime_log_config_arn #=> String
4723
5278
  # resp.distribution.distribution_config.default_cache_behavior.cache_policy_id #=> String
4724
5279
  # resp.distribution.distribution_config.default_cache_behavior.origin_request_policy_id #=> String
4725
5280
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
@@ -4759,6 +5314,7 @@ module Aws::CloudFront
4759
5314
  # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
4760
5315
  # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].include_body #=> Boolean
4761
5316
  # resp.distribution.distribution_config.cache_behaviors.items[0].field_level_encryption_id #=> String
5317
+ # resp.distribution.distribution_config.cache_behaviors.items[0].realtime_log_config_arn #=> String
4762
5318
  # resp.distribution.distribution_config.cache_behaviors.items[0].cache_policy_id #=> String
4763
5319
  # resp.distribution.distribution_config.cache_behaviors.items[0].origin_request_policy_id #=> String
4764
5320
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
@@ -4791,7 +5347,7 @@ module Aws::CloudFront
4791
5347
  # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
4792
5348
  # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
4793
5349
  # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
4794
- # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip"
5350
+ # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
4795
5351
  # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019"
4796
5352
  # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
4797
5353
  # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
@@ -5111,6 +5667,94 @@ module Aws::CloudFront
5111
5667
  req.send_request(options)
5112
5668
  end
5113
5669
 
5670
+ # Updates a real-time log configuration.
5671
+ #
5672
+ # When you update a real-time log configuration, all the parameters are
5673
+ # updated with the values provided in the request. You cannot update
5674
+ # some parameters independent of others. To update a real-time log
5675
+ # configuration:
5676
+ #
5677
+ # 1. Call `GetRealtimeLogConfig` to get the current real-time log
5678
+ # configuration.
5679
+ #
5680
+ # 2. Locally modify the parameters in the real-time log configuration
5681
+ # that you want to update.
5682
+ #
5683
+ # 3. Call this API (`UpdateRealtimeLogConfig`) by providing the entire
5684
+ # real-time log configuration, including the parameters that you
5685
+ # modified and those that you didn’t.
5686
+ #
5687
+ # You cannot update a real-time log configuration’s `Name` or `ARN`.
5688
+ #
5689
+ # @option params [Array<Types::EndPoint>] :end_points
5690
+ # Contains information about the Amazon Kinesis data stream where you
5691
+ # are sending real-time log data.
5692
+ #
5693
+ # @option params [Array<String>] :fields
5694
+ # A list of fields to include in each real-time log record.
5695
+ #
5696
+ # For more information about fields, see [Real-time log configuration
5697
+ # fields][1] in the *Amazon CloudFront Developer Guide*.
5698
+ #
5699
+ #
5700
+ #
5701
+ # [1]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html#understand-real-time-log-config-fields
5702
+ #
5703
+ # @option params [String] :name
5704
+ # The name for this real-time log configuration.
5705
+ #
5706
+ # @option params [String] :arn
5707
+ # The Amazon Resource Name (ARN) for this real-time log configuration.
5708
+ #
5709
+ # @option params [Integer] :sampling_rate
5710
+ # The sampling rate for this real-time log configuration. The sampling
5711
+ # rate determines the percentage of viewer requests that are represented
5712
+ # in the real-time log data. You must provide an integer between 1 and
5713
+ # 100, inclusive.
5714
+ #
5715
+ # @return [Types::UpdateRealtimeLogConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5716
+ #
5717
+ # * {Types::UpdateRealtimeLogConfigResult#realtime_log_config #realtime_log_config} => Types::RealtimeLogConfig
5718
+ #
5719
+ # @example Request syntax with placeholder values
5720
+ #
5721
+ # resp = client.update_realtime_log_config({
5722
+ # end_points: [
5723
+ # {
5724
+ # stream_type: "string", # required
5725
+ # kinesis_stream_config: {
5726
+ # role_arn: "string", # required
5727
+ # stream_arn: "string", # required
5728
+ # },
5729
+ # },
5730
+ # ],
5731
+ # fields: ["string"],
5732
+ # name: "string",
5733
+ # arn: "string",
5734
+ # sampling_rate: 1,
5735
+ # })
5736
+ #
5737
+ # @example Response structure
5738
+ #
5739
+ # resp.realtime_log_config.arn #=> String
5740
+ # resp.realtime_log_config.name #=> String
5741
+ # resp.realtime_log_config.sampling_rate #=> Integer
5742
+ # resp.realtime_log_config.end_points #=> Array
5743
+ # resp.realtime_log_config.end_points[0].stream_type #=> String
5744
+ # resp.realtime_log_config.end_points[0].kinesis_stream_config.role_arn #=> String
5745
+ # resp.realtime_log_config.end_points[0].kinesis_stream_config.stream_arn #=> String
5746
+ # resp.realtime_log_config.fields #=> Array
5747
+ # resp.realtime_log_config.fields[0] #=> String
5748
+ #
5749
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateRealtimeLogConfig2020_05_31 AWS API Documentation
5750
+ #
5751
+ # @overload update_realtime_log_config(params = {})
5752
+ # @param [Hash] params ({})
5753
+ def update_realtime_log_config(params = {}, options = {})
5754
+ req = build_request(:update_realtime_log_config, params)
5755
+ req.send_request(options)
5756
+ end
5757
+
5114
5758
  # Update a streaming distribution.
5115
5759
  #
5116
5760
  # @option params [required, Types::StreamingDistributionConfig] :streaming_distribution_config
@@ -5214,7 +5858,7 @@ module Aws::CloudFront
5214
5858
  params: params,
5215
5859
  config: config)
5216
5860
  context[:gem_name] = 'aws-sdk-cloudfront'
5217
- context[:gem_version] = '1.35.0'
5861
+ context[:gem_version] = '1.39.0'
5218
5862
  Seahorse::Client::Request.new(handlers, context)
5219
5863
  end
5220
5864