Class: Google::Apis::NetworkmanagementV1beta1::VpcFlowLogsConfig
- Inherits:
-
Object
- Object
- Google::Apis::NetworkmanagementV1beta1::VpcFlowLogsConfig
- 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
-
#aggregation_interval ⇒ String
Optional.
-
#create_time ⇒ String
Output only.
-
#cross_project_metadata ⇒ String
Optional.
-
#description ⇒ String
Optional.
-
#filter_expr ⇒ String
Optional.
-
#flow_sampling ⇒ Float
Optional.
-
#interconnect_attachment ⇒ String
Traffic will be logged from the Interconnect Attachment.
-
#labels ⇒ Hash<String,String>
Optional.
-
#metadata ⇒ String
Optional.
-
#metadata_fields ⇒ Array<String>
Optional.
-
#name ⇒ String
Identifier.
-
#network ⇒ String
Traffic will be logged from VMs, VPN tunnels and Interconnect Attachments within the network.
-
#state ⇒ String
Optional.
-
#subnet ⇒ String
Traffic will be logged from VMs within the subnetwork.
-
#target_resource_state ⇒ String
Output only.
-
#update_time ⇒ String
Output only.
-
#vpn_tunnel ⇒ String
Traffic will be logged from the VPN Tunnel.
Instance Method Summary collapse
-
#initialize(**args) ⇒ VpcFlowLogsConfig
constructor
A new instance of VpcFlowLogsConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ VpcFlowLogsConfig
Returns a new instance of VpcFlowLogsConfig.
3906 3907 3908 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3906 def initialize(**args) update!(**args) end |
Instance Attribute Details
#aggregation_interval ⇒ String
Optional. The aggregation interval for the logs. Default value is
INTERVAL_5_SEC.
Corresponds to the JSON property aggregationInterval
3805 3806 3807 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3805 def aggregation_interval @aggregation_interval end |
#create_time ⇒ String
Output only. The time the config was created.
Corresponds to the JSON property createTime
3810 3811 3812 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3810 def create_time @create_time end |
#cross_project_metadata ⇒ String
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
3817 3818 3819 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3817 def @cross_project_metadata end |
#description ⇒ String
Optional. The user-supplied description of the VPC Flow Logs configuration.
Maximum of 512 characters.
Corresponds to the JSON property description
3823 3824 3825 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3823 def description @description end |
#filter_expr ⇒ String
Optional. Export filter used to define which VPC Flow Logs should be logged.
Corresponds to the JSON property filterExpr
3828 3829 3830 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3828 def filter_expr @filter_expr end |
#flow_sampling ⇒ Float
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
3836 3837 3838 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3836 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
3842 3843 3844 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3842 def @interconnect_attachment end |
#labels ⇒ Hash<String,String>
Optional. Resource labels to represent user-provided metadata.
Corresponds to the JSON property labels
3847 3848 3849 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3847 def labels @labels end |
#metadata ⇒ String
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
3853 3854 3855 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3853 def @metadata end |
#metadata_fields ⇒ Array<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
3859 3860 3861 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3859 def @metadata_fields end |
#name ⇒ String
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
3868 3869 3870 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3868 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
3874 3875 3876 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3874 def network @network end |
#state ⇒ String
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
3881 3882 3883 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3881 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
3887 3888 3889 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3887 def subnet @subnet end |
#target_resource_state ⇒ String
Output only. Describes the state of the configured target resource for
diagnostic purposes.
Corresponds to the JSON property targetResourceState
3893 3894 3895 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3893 def target_resource_state @target_resource_state end |
#update_time ⇒ String
Output only. The time the config was updated.
Corresponds to the JSON property updateTime
3898 3899 3900 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3898 def update_time @update_time 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
3904 3905 3906 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3904 def vpn_tunnel @vpn_tunnel end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 |
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3911 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 |