Class: Google::Apis::NetworkmanagementV1::EffectiveVpcFlowLogsConfig
- Inherits:
-
Object
- Object
- Google::Apis::NetworkmanagementV1::EffectiveVpcFlowLogsConfig
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/networkmanagement_v1/classes.rb,
lib/google/apis/networkmanagement_v1/representations.rb,
lib/google/apis/networkmanagement_v1/representations.rb
Overview
A configuration to generate a response for GetEffectiveVpcFlowLogsConfig request.
Instance Attribute Summary collapse
-
#aggregation_interval ⇒ String
The aggregation interval for the logs.
-
#cross_project_metadata ⇒ String
Determines whether to include cross project annotations in the logs.
-
#filter_expr ⇒ String
Export filter used to define which VPC Flow Logs should be logged.
-
#flow_sampling ⇒ Float
The value of the field must be in (0, 1].
-
#interconnect_attachment ⇒ String
Traffic will be logged from the Interconnect Attachment.
-
#metadata ⇒ String
Configures whether all, none or a subset of metadata fields should be added to the reported VPC flow logs.
-
#metadata_fields ⇒ Array<String>
Custom metadata fields to include in the reported VPC flow logs.
-
#name ⇒ String
Unique name of the configuration.
-
#network ⇒ String
Traffic will be logged from VMs, VPN tunnels and Interconnect Attachments within the network.
-
#scope ⇒ String
Specifies the scope of the config (e.g., SUBNET, NETWORK, ORGANIZATION..).
-
#state ⇒ String
The state of the VPC Flow Log configuration.
-
#subnet ⇒ String
Traffic will be logged from VMs within the subnetwork.
-
#vpn_tunnel ⇒ String
Traffic will be logged from the VPN Tunnel.
Instance Method Summary collapse
-
#initialize(**args) ⇒ EffectiveVpcFlowLogsConfig
constructor
A new instance of EffectiveVpcFlowLogsConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ EffectiveVpcFlowLogsConfig
Returns a new instance of EffectiveVpcFlowLogsConfig.
874 875 876 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 874 def initialize(**args) update!(**args) end |
Instance Attribute Details
#aggregation_interval ⇒ String
The aggregation interval for the logs. Default value is INTERVAL_5_SEC.
Corresponds to the JSON property aggregationInterval
793 794 795 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 793 def aggregation_interval @aggregation_interval end |
#cross_project_metadata ⇒ String
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
800 801 802 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 800 def @cross_project_metadata end |
#filter_expr ⇒ String
Export filter used to define which VPC Flow Logs should be logged.
Corresponds to the JSON property filterExpr
805 806 807 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 805 def filter_expr @filter_expr end |
#flow_sampling ⇒ Float
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
813 814 815 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 813 def flow_sampling @flow_sampling end |
#interconnect_attachment ⇒ String
Traffic will be logged from the Interconnect Attachment. Format: projects/
project_id/regions/region/interconnectAttachments/name
Corresponds to the JSON property interconnectAttachment
819 820 821 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 819 def @interconnect_attachment end |
#metadata ⇒ String
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
825 826 827 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 825 def @metadata end |
#metadata_fields ⇒ Array<String>
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
831 832 833 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 831 def @metadata_fields end |
#name ⇒ String
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- For a Compute config, the name will be the path of the subnet:projects/project_id/regions/region/ subnetworks/subnet_id`Corresponds to the JSON propertyname`
842 843 844 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 842 def name @name end |
#network ⇒ String
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
848 849 850 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 848 def network @network end |
#scope ⇒ String
Specifies the scope of the config (e.g., SUBNET, NETWORK, ORGANIZATION..).
Corresponds to the JSON property scope
853 854 855 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 853 def scope @scope end |
#state ⇒ String
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
860 861 862 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 860 def state @state end |
#subnet ⇒ String
Traffic will be logged from VMs within the subnetwork. Format: projects/
project_id/regions/region/subnetworks/name
Corresponds to the JSON property subnet
866 867 868 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 866 def subnet @subnet end |
#vpn_tunnel ⇒ String
Traffic will be logged from the VPN Tunnel. Format: projects/project_id/
regions/region/vpnTunnels/name
Corresponds to the JSON property vpnTunnel
872 873 874 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 872 def vpn_tunnel @vpn_tunnel end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 |
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 879 def update!(**args) @aggregation_interval = args[:aggregation_interval] if args.key?(:aggregation_interval) @cross_project_metadata = args[:cross_project_metadata] if args.key?(:cross_project_metadata) @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) @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) @scope = args[:scope] if args.key?(:scope) @state = args[:state] if args.key?(:state) @subnet = args[:subnet] if args.key?(:subnet) @vpn_tunnel = args[:vpn_tunnel] if args.key?(:vpn_tunnel) end |