Class: Google::Apis::NetworkmanagementV1beta1::VpcFlowLogsConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/networkmanagement_v1beta1/classes.rb,
lib/google/apis/networkmanagement_v1beta1/representations.rb,
lib/google/apis/networkmanagement_v1beta1/representations.rb

Overview

A configuration to generate VPC Flow Logs.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ VpcFlowLogsConfig

Returns a new instance of VpcFlowLogsConfig.



3787
3788
3789
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3787

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#aggregation_intervalString

Optional. The aggregation interval for the logs. Default value is INTERVAL_5_SEC. Corresponds to the JSON property aggregationInterval

Returns:

  • (String)


3686
3687
3688
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3686

def aggregation_interval
  @aggregation_interval
end

#create_timeString

Output only. The time the config was created. Corresponds to the JSON property createTime

Returns:

  • (String)


3691
3692
3693
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3691

def create_time
  @create_time
end

#cross_project_metadataString

Optional. Determines whether to include cross project annotations in the logs. This field is available only for organization configurations. If not specified in org configs will be set to CROSS_PROJECT_METADATA_ENABLED. Corresponds to the JSON property crossProjectMetadata

Returns:

  • (String)


3698
3699
3700
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3698

def 
  @cross_project_metadata
end

#descriptionString

Optional. The user-supplied description of the VPC Flow Logs configuration. Maximum of 512 characters. Corresponds to the JSON property description

Returns:

  • (String)


3704
3705
3706
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3704

def description
  @description
end

#filter_exprString

Optional. Export filter used to define which VPC Flow Logs should be logged. Corresponds to the JSON property filterExpr

Returns:

  • (String)


3709
3710
3711
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3709

def filter_expr
  @filter_expr
end

#flow_samplingFloat

Optional. The value of the field must be in (0, 1]. The sampling rate of VPC Flow Logs where 1.0 means all collected logs are reported. Setting the sampling rate to 0.0 is not allowed. If you want to disable VPC Flow Logs, use the state field instead. Default value is 1.0. Corresponds to the JSON property flowSampling

Returns:

  • (Float)


3717
3718
3719
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3717

def flow_sampling
  @flow_sampling
end

#interconnect_attachmentString

Traffic will be logged from the Interconnect Attachment. Format: projects/ project_id/regions/region/interconnectAttachments/name Corresponds to the JSON property interconnectAttachment

Returns:

  • (String)


3723
3724
3725
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3723

def interconnect_attachment
  @interconnect_attachment
end

#labelsHash<String,String>

Optional. Resource labels to represent user-provided metadata. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


3728
3729
3730
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3728

def labels
  @labels
end

#metadataString

Optional. Configures whether all, none or a subset of metadata fields should be added to the reported VPC flow logs. Default value is INCLUDE_ALL_METADATA. Corresponds to the JSON property metadata

Returns:

  • (String)


3734
3735
3736
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3734

def 
  @metadata
end

#metadata_fieldsArray<String>

Optional. Custom metadata fields to include in the reported VPC flow logs. Can only be specified if "metadata" was set to CUSTOM_METADATA. Corresponds to the JSON property metadataFields

Returns:

  • (Array<String>)


3740
3741
3742
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3740

def 
  @metadata_fields
end

#nameString

Identifier. Unique name of the configuration. The name can have one of the following forms: - For project-level configurations: projects/project_id/ locations/global/vpcFlowLogsConfigs/vpc_flow_logs_config_id- For organization-level configurations: `organizations/`organization_id`/locations/ global/vpcFlowLogsConfigs/`vpc_flow_logs_config_id Corresponds to the JSON property name

Returns:

  • (String)


3749
3750
3751
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3749

def name
  @name
end

#networkString

Traffic will be logged from VMs, VPN tunnels and Interconnect Attachments within the network. Format: projects/project_id/global/networks/name Corresponds to the JSON property network

Returns:

  • (String)


3755
3756
3757
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3755

def network
  @network
end

#stateString

Optional. The state of the VPC Flow Log configuration. Default value is ENABLED. When creating a new configuration, it must be enabled. Setting state= DISABLED will pause the log generation for this config. Corresponds to the JSON property state

Returns:

  • (String)


3762
3763
3764
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3762

def state
  @state
end

#subnetString

Traffic will be logged from VMs within the subnetwork. Format: projects/ project_id/regions/region/subnetworks/name Corresponds to the JSON property subnet

Returns:

  • (String)


3768
3769
3770
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3768

def subnet
  @subnet
end

#target_resource_stateString

Output only. Describes the state of the configured target resource for diagnostic purposes. Corresponds to the JSON property targetResourceState

Returns:

  • (String)


3774
3775
3776
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3774

def target_resource_state
  @target_resource_state
end

#update_timeString

Output only. The time the config was updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


3779
3780
3781
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3779

def update_time
  @update_time
end

#vpn_tunnelString

Traffic will be logged from the VPN Tunnel. Format: projects/project_id/ regions/region/vpnTunnels/name Corresponds to the JSON property vpnTunnel

Returns:

  • (String)


3785
3786
3787
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3785

def vpn_tunnel
  @vpn_tunnel
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3792

def update!(**args)
  @aggregation_interval = args[:aggregation_interval] if args.key?(:aggregation_interval)
  @create_time = args[:create_time] if args.key?(:create_time)
  @cross_project_metadata = args[:cross_project_metadata] if args.key?(:cross_project_metadata)
  @description = args[:description] if args.key?(:description)
  @filter_expr = args[:filter_expr] if args.key?(:filter_expr)
  @flow_sampling = args[:flow_sampling] if args.key?(:flow_sampling)
  @interconnect_attachment = args[:interconnect_attachment] if args.key?(:interconnect_attachment)
  @labels = args[:labels] if args.key?(:labels)
  @metadata = args[:metadata] if args.key?(:metadata)
  @metadata_fields = args[:metadata_fields] if args.key?(:metadata_fields)
  @name = args[:name] if args.key?(:name)
  @network = args[:network] if args.key?(:network)
  @state = args[:state] if args.key?(:state)
  @subnet = args[:subnet] if args.key?(:subnet)
  @target_resource_state = args[:target_resource_state] if args.key?(:target_resource_state)
  @update_time = args[:update_time] if args.key?(:update_time)
  @vpn_tunnel = args[:vpn_tunnel] if args.key?(:vpn_tunnel)
end