public static final class CfnFlowLog.Builder
extends java.lang.Object
CfnFlowLog
.Modifier and Type | Method and Description |
---|---|
CfnFlowLog |
build() |
static CfnFlowLog.Builder |
create(Construct scope,
java.lang.String id) |
CfnFlowLog.Builder |
deliverLogsPermissionArn(java.lang.String deliverLogsPermissionArn)
The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account.
|
CfnFlowLog.Builder |
destinationOptions(java.lang.Object destinationOptions)
The destination options.
|
CfnFlowLog.Builder |
logDestination(java.lang.String logDestination)
The destination to which the flow log data is to be published.
|
CfnFlowLog.Builder |
logDestinationType(java.lang.String logDestinationType)
The type of destination to which the flow log data is to be published.
|
CfnFlowLog.Builder |
logFormat(java.lang.String logFormat)
The fields to include in the flow log record, in the order in which they should appear.
|
CfnFlowLog.Builder |
logGroupName(java.lang.String logGroupName)
The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs.
|
CfnFlowLog.Builder |
maxAggregationInterval(java.lang.Number maxAggregationInterval)
The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record.
|
CfnFlowLog.Builder |
resourceId(java.lang.String resourceId)
The ID of the subnet, network interface, or VPC for which you want to create a flow log.
|
CfnFlowLog.Builder |
resourceType(java.lang.String resourceType)
The type of resource for which to create the flow log.
|
CfnFlowLog.Builder |
tags(java.util.List<? extends CfnTag> tags)
The tags to apply to the flow logs.
|
CfnFlowLog.Builder |
trafficType(java.lang.String trafficType)
The type of traffic to log.
|
public static CfnFlowLog.Builder create(Construct scope, java.lang.String id)
scope
- - scope in which this resource is defined. This parameter is required.id
- - scoped id of the resource. This parameter is required.CfnFlowLog.Builder
.public CfnFlowLog.Builder resourceId(java.lang.String resourceId)
resourceId
- The ID of the subnet, network interface, or VPC for which you want to create a flow log. This parameter is required.this
public CfnFlowLog.Builder resourceType(java.lang.String resourceType)
For example, if you specified a VPC ID for the ResourceId
property, specify VPC
for this property.
resourceType
- The type of resource for which to create the flow log. This parameter is required.this
public CfnFlowLog.Builder trafficType(java.lang.String trafficType)
You can log traffic that the resource accepts or rejects, or all traffic.
trafficType
- The type of traffic to log. This parameter is required.this
public CfnFlowLog.Builder deliverLogsPermissionArn(java.lang.String deliverLogsPermissionArn)
If you specify LogDestinationType
as s3
, do not specify DeliverLogsPermissionArn
or LogGroupName
.
deliverLogsPermissionArn
- The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account. This parameter is required.this
public CfnFlowLog.Builder destinationOptions(java.lang.Object destinationOptions)
FileFormat
- The format for the flow log ( plain-text
| parquet
). The default is plain-text
.HiveCompatiblePartitions
- Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3 ( true
| false
). The default is false
.PerHourPartition
- Indicates whether to partition the flow log per hour ( true
| false
). The default is false
.destinationOptions
- The destination options. The following options are supported:. This parameter is required.this
public CfnFlowLog.Builder logDestination(java.lang.String logDestination)
Flow log data can be published to a CloudWatch Logs log group or an Amazon S3 bucket. The value specified for this parameter depends on the value specified for LogDestinationType
.
If LogDestinationType
is not specified or cloud-watch-logs
, specify the Amazon Resource Name (ARN) of the CloudWatch Logs log group. For example, to publish to a log group called my-logs
, specify arn:aws:logs:us-east-1:123456789012:log-group:my-logs
. Alternatively, use LogGroupName
instead.
If LogDestinationType is s3
, specify the ARN of the Amazon S3 bucket. You can also specify a subfolder in the bucket. To specify a subfolder in the bucket, use the following ARN format: bucket_ARN/subfolder_name/
. For example, to specify a subfolder named my-logs
in a bucket named my-bucket
, use the following ARN: arn:aws:s3:::my-bucket/my-logs/
. You cannot use AWSLogs
as a subfolder name. This is a reserved term.
logDestination
- The destination to which the flow log data is to be published. This parameter is required.this
public CfnFlowLog.Builder logDestinationType(java.lang.String logDestinationType)
Flow log data can be published to CloudWatch Logs or Amazon S3. To publish flow log data to CloudWatch Logs, specify cloud-watch-logs
. To publish flow log data to Amazon S3, specify s3
.
If you specify LogDestinationType
as s3
, do not specify DeliverLogsPermissionArn
or LogGroupName
.
Default: cloud-watch-logs
logDestinationType
- The type of destination to which the flow log data is to be published. This parameter is required.this
public CfnFlowLog.Builder logFormat(java.lang.String logFormat)
For a list of available fields, see Flow Log Records . If you omit this parameter, the flow log is created using the default format. If you specify this parameter, you must specify at least one field.
Specify the fields using the ${field-id}
format, separated by spaces.
logFormat
- The fields to include in the flow log record, in the order in which they should appear. This parameter is required.this
public CfnFlowLog.Builder logGroupName(java.lang.String logGroupName)
If you specify LogDestinationType
as s3
, do not specify DeliverLogsPermissionArn
or LogGroupName
.
logGroupName
- The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs. This parameter is required.this
public CfnFlowLog.Builder maxAggregationInterval(java.lang.Number maxAggregationInterval)
You can specify 60 seconds (1 minute) or 600 seconds (10 minutes).
When a network interface is attached to a Nitro-based instance , the aggregation interval is always 60 seconds or less, regardless of the value that you specify.
Default: 600
maxAggregationInterval
- The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. This parameter is required.this
public CfnFlowLog.Builder tags(java.util.List<? extends CfnTag> tags)
tags
- The tags to apply to the flow logs. This parameter is required.this
public CfnFlowLog build()