We recommend new projects start with resources from the AWS provider.
aws-native.ec2.FlowLog
Explore with Pulumi AI
We recommend new projects start with resources from the AWS provider.
Specifies a VPC flow log, which enables you to capture IP traffic for a specific network interface, subnet, or VPC.
Create FlowLog Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new FlowLog(name: string, args: FlowLogArgs, opts?: CustomResourceOptions);@overload
def FlowLog(resource_name: str,
            args: FlowLogArgs,
            opts: Optional[ResourceOptions] = None)
@overload
def FlowLog(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            resource_id: Optional[str] = None,
            resource_type: Optional[FlowLogResourceType] = None,
            deliver_cross_account_role: Optional[str] = None,
            deliver_logs_permission_arn: Optional[str] = None,
            destination_options: Optional[DestinationOptionsPropertiesArgs] = None,
            log_destination: Optional[str] = None,
            log_destination_type: Optional[FlowLogLogDestinationType] = None,
            log_format: Optional[str] = None,
            log_group_name: Optional[str] = None,
            max_aggregation_interval: Optional[int] = None,
            tags: Optional[Sequence[_root_inputs.TagArgs]] = None,
            traffic_type: Optional[FlowLogTrafficType] = None)func NewFlowLog(ctx *Context, name string, args FlowLogArgs, opts ...ResourceOption) (*FlowLog, error)public FlowLog(string name, FlowLogArgs args, CustomResourceOptions? opts = null)
public FlowLog(String name, FlowLogArgs args)
public FlowLog(String name, FlowLogArgs args, CustomResourceOptions options)
type: aws-native:ec2:FlowLog
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args FlowLogArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args FlowLogArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args FlowLogArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args FlowLogArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args FlowLogArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
FlowLog Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The FlowLog resource accepts the following input properties:
- ResourceId string
- The ID of the subnet, network interface, or VPC for which you want to create a flow log.
- ResourceType Pulumi.Aws Native. Ec2. Flow Log Resource Type 
- The type of resource for which to create the flow log. For example, if you specified a VPC ID for the ResourceId property, specify VPC for this property.
- DeliverCross stringAccount Role 
- The ARN of the IAM role that allows Amazon EC2 to publish flow logs across accounts.
- DeliverLogs stringPermission Arn 
- The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- DestinationOptions Pulumi.Aws Native. Ec2. Inputs. Destination Options Properties 
- The destination options.
- LogDestination string
- Specifies the destination to which the flow log data is to be published. Flow log data can be published to a CloudWatch Logs log group, an Amazon S3 bucket, or a Kinesis Firehose stream. The value specified for this parameter depends on the value specified for LogDestinationType.
- LogDestination Pulumi.Type Aws Native. Ec2. Flow Log Log Destination Type 
- Specifies the type of destination to which the flow log data is to be published. Flow log data can be published to CloudWatch Logs or Amazon S3.
- LogFormat string
- The fields to include in the flow log record, in the order in which they should appear.
- LogGroup stringName 
- The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- MaxAggregation intInterval 
- The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. You can specify 60 seconds (1 minute) or 600 seconds (10 minutes).
- 
List<Pulumi.Aws Native. Inputs. Tag> 
- The tags to apply to the flow logs.
- TrafficType Pulumi.Aws Native. Ec2. Flow Log Traffic Type 
- The type of traffic to log. You can log traffic that the resource accepts or rejects, or all traffic.
- ResourceId string
- The ID of the subnet, network interface, or VPC for which you want to create a flow log.
- ResourceType FlowLog Resource Type 
- The type of resource for which to create the flow log. For example, if you specified a VPC ID for the ResourceId property, specify VPC for this property.
- DeliverCross stringAccount Role 
- The ARN of the IAM role that allows Amazon EC2 to publish flow logs across accounts.
- DeliverLogs stringPermission Arn 
- The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- DestinationOptions DestinationOptions Properties Args 
- The destination options.
- LogDestination string
- Specifies the destination to which the flow log data is to be published. Flow log data can be published to a CloudWatch Logs log group, an Amazon S3 bucket, or a Kinesis Firehose stream. The value specified for this parameter depends on the value specified for LogDestinationType.
- LogDestination FlowType Log Log Destination Type 
- Specifies the type of destination to which the flow log data is to be published. Flow log data can be published to CloudWatch Logs or Amazon S3.
- LogFormat string
- The fields to include in the flow log record, in the order in which they should appear.
- LogGroup stringName 
- The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- MaxAggregation intInterval 
- The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. You can specify 60 seconds (1 minute) or 600 seconds (10 minutes).
- 
TagArgs 
- The tags to apply to the flow logs.
- TrafficType FlowLog Traffic Type 
- The type of traffic to log. You can log traffic that the resource accepts or rejects, or all traffic.
- resourceId String
- The ID of the subnet, network interface, or VPC for which you want to create a flow log.
- resourceType FlowLog Resource Type 
- The type of resource for which to create the flow log. For example, if you specified a VPC ID for the ResourceId property, specify VPC for this property.
- deliverCross StringAccount Role 
- The ARN of the IAM role that allows Amazon EC2 to publish flow logs across accounts.
- deliverLogs StringPermission Arn 
- The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- destinationOptions DestinationOptions Properties 
- The destination options.
- logDestination String
- Specifies the destination to which the flow log data is to be published. Flow log data can be published to a CloudWatch Logs log group, an Amazon S3 bucket, or a Kinesis Firehose stream. The value specified for this parameter depends on the value specified for LogDestinationType.
- logDestination FlowType Log Log Destination Type 
- Specifies the type of destination to which the flow log data is to be published. Flow log data can be published to CloudWatch Logs or Amazon S3.
- logFormat String
- The fields to include in the flow log record, in the order in which they should appear.
- logGroup StringName 
- The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- maxAggregation IntegerInterval 
- The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. You can specify 60 seconds (1 minute) or 600 seconds (10 minutes).
- List<Tag>
- The tags to apply to the flow logs.
- trafficType FlowLog Traffic Type 
- The type of traffic to log. You can log traffic that the resource accepts or rejects, or all traffic.
- resourceId string
- The ID of the subnet, network interface, or VPC for which you want to create a flow log.
- resourceType FlowLog Resource Type 
- The type of resource for which to create the flow log. For example, if you specified a VPC ID for the ResourceId property, specify VPC for this property.
- deliverCross stringAccount Role 
- The ARN of the IAM role that allows Amazon EC2 to publish flow logs across accounts.
- deliverLogs stringPermission Arn 
- The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- destinationOptions DestinationOptions Properties 
- The destination options.
- logDestination string
- Specifies the destination to which the flow log data is to be published. Flow log data can be published to a CloudWatch Logs log group, an Amazon S3 bucket, or a Kinesis Firehose stream. The value specified for this parameter depends on the value specified for LogDestinationType.
- logDestination FlowType Log Log Destination Type 
- Specifies the type of destination to which the flow log data is to be published. Flow log data can be published to CloudWatch Logs or Amazon S3.
- logFormat string
- The fields to include in the flow log record, in the order in which they should appear.
- logGroup stringName 
- The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- maxAggregation numberInterval 
- The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. You can specify 60 seconds (1 minute) or 600 seconds (10 minutes).
- Tag[]
- The tags to apply to the flow logs.
- trafficType FlowLog Traffic Type 
- The type of traffic to log. You can log traffic that the resource accepts or rejects, or all traffic.
- resource_id str
- The ID of the subnet, network interface, or VPC for which you want to create a flow log.
- resource_type FlowLog Resource Type 
- The type of resource for which to create the flow log. For example, if you specified a VPC ID for the ResourceId property, specify VPC for this property.
- deliver_cross_ straccount_ role 
- The ARN of the IAM role that allows Amazon EC2 to publish flow logs across accounts.
- deliver_logs_ strpermission_ arn 
- The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- destination_options DestinationOptions Properties Args 
- The destination options.
- log_destination str
- Specifies the destination to which the flow log data is to be published. Flow log data can be published to a CloudWatch Logs log group, an Amazon S3 bucket, or a Kinesis Firehose stream. The value specified for this parameter depends on the value specified for LogDestinationType.
- log_destination_ Flowtype Log Log Destination Type 
- Specifies the type of destination to which the flow log data is to be published. Flow log data can be published to CloudWatch Logs or Amazon S3.
- log_format str
- The fields to include in the flow log record, in the order in which they should appear.
- log_group_ strname 
- The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- max_aggregation_ intinterval 
- The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. You can specify 60 seconds (1 minute) or 600 seconds (10 minutes).
- 
Sequence[TagArgs] 
- The tags to apply to the flow logs.
- traffic_type FlowLog Traffic Type 
- The type of traffic to log. You can log traffic that the resource accepts or rejects, or all traffic.
- resourceId String
- The ID of the subnet, network interface, or VPC for which you want to create a flow log.
- resourceType "NetworkInterface" | "Subnet" | "VPC" | "Transit Gateway" | "Transit Gateway Attachment" 
- The type of resource for which to create the flow log. For example, if you specified a VPC ID for the ResourceId property, specify VPC for this property.
- deliverCross StringAccount Role 
- The ARN of the IAM role that allows Amazon EC2 to publish flow logs across accounts.
- deliverLogs StringPermission Arn 
- The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- destinationOptions Property Map
- The destination options.
- logDestination String
- Specifies the destination to which the flow log data is to be published. Flow log data can be published to a CloudWatch Logs log group, an Amazon S3 bucket, or a Kinesis Firehose stream. The value specified for this parameter depends on the value specified for LogDestinationType.
- logDestination "cloud-watch-logs" | "s3" | "kinesis-data-firehose"Type 
- Specifies the type of destination to which the flow log data is to be published. Flow log data can be published to CloudWatch Logs or Amazon S3.
- logFormat String
- The fields to include in the flow log record, in the order in which they should appear.
- logGroup StringName 
- The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs. If you specify LogDestinationType as s3 or kinesis-data-firehose, do not specify DeliverLogsPermissionArn or LogGroupName.
- maxAggregation NumberInterval 
- The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. You can specify 60 seconds (1 minute) or 600 seconds (10 minutes).
- List<Property Map>
- The tags to apply to the flow logs.
- trafficType "ACCEPT" | "ALL" | "REJECT"
- The type of traffic to log. You can log traffic that the resource accepts or rejects, or all traffic.
Outputs
All input properties are implicitly available as output properties. Additionally, the FlowLog resource produces the following output properties:
Supporting Types
DestinationOptionsProperties, DestinationOptionsPropertiesArgs      
- FileFormat Pulumi.Aws Native. Ec2. Flow Log Destination Options Properties File Format 
- The format for the flow log. The default is plain-text.
- HiveCompatible boolPartitions 
- Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3. The default is false.
- PerHour boolPartition 
- Indicates whether to partition the flow log per hour. This reduces the cost and response time for queries. The default is false.
- FileFormat FlowLog Destination Options Properties File Format 
- The format for the flow log. The default is plain-text.
- HiveCompatible boolPartitions 
- Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3. The default is false.
- PerHour boolPartition 
- Indicates whether to partition the flow log per hour. This reduces the cost and response time for queries. The default is false.
- fileFormat FlowLog Destination Options Properties File Format 
- The format for the flow log. The default is plain-text.
- hiveCompatible BooleanPartitions 
- Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3. The default is false.
- perHour BooleanPartition 
- Indicates whether to partition the flow log per hour. This reduces the cost and response time for queries. The default is false.
- fileFormat FlowLog Destination Options Properties File Format 
- The format for the flow log. The default is plain-text.
- hiveCompatible booleanPartitions 
- Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3. The default is false.
- perHour booleanPartition 
- Indicates whether to partition the flow log per hour. This reduces the cost and response time for queries. The default is false.
- file_format FlowLog Destination Options Properties File Format 
- The format for the flow log. The default is plain-text.
- hive_compatible_ boolpartitions 
- Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3. The default is false.
- per_hour_ boolpartition 
- Indicates whether to partition the flow log per hour. This reduces the cost and response time for queries. The default is false.
- fileFormat "plain-text" | "parquet"
- The format for the flow log. The default is plain-text.
- hiveCompatible BooleanPartitions 
- Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3. The default is false.
- perHour BooleanPartition 
- Indicates whether to partition the flow log per hour. This reduces the cost and response time for queries. The default is false.
FlowLogDestinationOptionsPropertiesFileFormat, FlowLogDestinationOptionsPropertiesFileFormatArgs              
- PlainText 
- plain-text
- Parquet
- parquet
- FlowLog Destination Options Properties File Format Plain Text 
- plain-text
- FlowLog Destination Options Properties File Format Parquet 
- parquet
- PlainText 
- plain-text
- Parquet
- parquet
- PlainText 
- plain-text
- Parquet
- parquet
- PLAIN_TEXT
- plain-text
- PARQUET
- parquet
- "plain-text"
- plain-text
- "parquet"
- parquet
FlowLogLogDestinationType, FlowLogLogDestinationTypeArgs          
- CloudWatch Logs 
- cloud-watch-logs
- S3
- s3
- KinesisData Firehose 
- kinesis-data-firehose
- FlowLog Log Destination Type Cloud Watch Logs 
- cloud-watch-logs
- FlowLog Log Destination Type S3 
- s3
- FlowLog Log Destination Type Kinesis Data Firehose 
- kinesis-data-firehose
- CloudWatch Logs 
- cloud-watch-logs
- S3
- s3
- KinesisData Firehose 
- kinesis-data-firehose
- CloudWatch Logs 
- cloud-watch-logs
- S3
- s3
- KinesisData Firehose 
- kinesis-data-firehose
- CLOUD_WATCH_LOGS
- cloud-watch-logs
- S3
- s3
- KINESIS_DATA_FIREHOSE
- kinesis-data-firehose
- "cloud-watch-logs"
- cloud-watch-logs
- "s3"
- s3
- "kinesis-data-firehose"
- kinesis-data-firehose
FlowLogResourceType, FlowLogResourceTypeArgs        
- NetworkInterface 
- NetworkInterface
- Subnet
- Subnet
- Vpc
- VPC
- TransitGateway 
- TransitGateway
- TransitGateway Attachment 
- TransitGatewayAttachment
- FlowLog Resource Type Network Interface 
- NetworkInterface
- FlowLog Resource Type Subnet 
- Subnet
- FlowLog Resource Type Vpc 
- VPC
- FlowLog Resource Type Transit Gateway 
- TransitGateway
- FlowLog Resource Type Transit Gateway Attachment 
- TransitGatewayAttachment
- NetworkInterface 
- NetworkInterface
- Subnet
- Subnet
- Vpc
- VPC
- TransitGateway 
- TransitGateway
- TransitGateway Attachment 
- TransitGatewayAttachment
- NetworkInterface 
- NetworkInterface
- Subnet
- Subnet
- Vpc
- VPC
- TransitGateway 
- TransitGateway
- TransitGateway Attachment 
- TransitGatewayAttachment
- NETWORK_INTERFACE
- NetworkInterface
- SUBNET
- Subnet
- VPC
- VPC
- TRANSIT_GATEWAY
- TransitGateway
- TRANSIT_GATEWAY_ATTACHMENT
- TransitGatewayAttachment
- "NetworkInterface" 
- NetworkInterface
- "Subnet"
- Subnet
- "VPC"
- VPC
- "TransitGateway" 
- TransitGateway
- "TransitGateway Attachment" 
- TransitGatewayAttachment
FlowLogTrafficType, FlowLogTrafficTypeArgs        
- Accept
- ACCEPT
- All
- ALL
- Reject
- REJECT
- FlowLog Traffic Type Accept 
- ACCEPT
- FlowLog Traffic Type All 
- ALL
- FlowLog Traffic Type Reject 
- REJECT
- Accept
- ACCEPT
- All
- ALL
- Reject
- REJECT
- Accept
- ACCEPT
- All
- ALL
- Reject
- REJECT
- ACCEPT
- ACCEPT
- ALL
- ALL
- REJECT
- REJECT
- "ACCEPT"
- ACCEPT
- "ALL"
- ALL
- "REJECT"
- REJECT
Tag, TagArgs  
Package Details
- Repository
- AWS Native pulumi/pulumi-aws-native
- License
- Apache-2.0
We recommend new projects start with resources from the AWS provider.