# Network Management V1 API - Class Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client (v2.11.0)

2.11.0 (latest) 2.10.1 2.9.0 2.8.0 2.7.0 2.6.0 2.5.1 2.4.0 2.3.0 2.2.0 2.1.1 2.0.1 1.6.0 1.5.0 1.4.0 1.3.0 1.2.0 1.1.0 1.0.2 0.14.0 0.13.0 0.12.0 0.11.0 0.10.2 0.9.0 0.8.0 0.7.0 0.6.1 0.5.1 0.4.0 0.3.0 0.2.0 0.1.3 Reference documentation and code samples for the Network Management V1 API class Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.

Client for the VpcFlowLogsService service.


<br />

The VPC Flow Logs service in the Google Cloud Network Management API provides
configurations that generate Flow Logs. The service and the configuration
resources created using this service are global.

## Inherits

- Object

## Includes

- [Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Paths](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsService-Paths)

## Methods

### .configure

    def self.configure() { |config| ... } -> Client::Configuration

Configure the VpcFlowLogsService Client class.


<br />

See [Configuration](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsService-Client-Configuration "Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client::Configuration (class)")
for a description of the configuration fields.
**Yields**

- (config) --- Configure the Client client.
**Yield Parameter**

- **config** ([Client::Configuration](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsService-Client-Configuration))
**Returns**

- ([Client::Configuration](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsService-Client-Configuration))
**Example**

```ruby
# Modify the configuration for all VpcFlowLogsService clients
::Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.configure do |config|
  config.timeout = 10.0
end
```

### #configure

    def configure() { |config| ... } -> Client::Configuration

Configure the VpcFlowLogsService Client instance.


The configuration is set to the derived mode, meaning that values can be changed,
but structural changes (adding new fields, etc.) are not allowed. Structural changes
should be made on [Client.configure](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsService-Client#Google__Cloud__NetworkManagement__V1__VpcFlowLogsService__Client_configure_class_ "Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.configure (method)").

<br />

See [Configuration](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsService-Client-Configuration "Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client::Configuration (class)")
for a description of the configuration fields.
**Yields**

- (config) --- Configure the Client client.
**Yield Parameter**

- **config** ([Client::Configuration](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsService-Client-Configuration))
**Returns**

- ([Client::Configuration](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsService-Client-Configuration))

### #create_vpc_flow_logs_config

    def create_vpc_flow_logs_config(request, options = nil) -> ::Gapic::Operation
    def create_vpc_flow_logs_config(parent: nil, vpc_flow_logs_config_id: nil, vpc_flow_logs_config: nil) -> ::Gapic::Operation

Creates a new `VpcFlowLogsConfig`.
If a configuration with the exact same settings already exists (even if the
ID is different), the creation fails.
Notes:

1. Creating a configuration with `state=DISABLED` will fail
2. The following fields are not considered as settings for the purpose of the check mentioned above, therefore - creating another configuration with the same fields but different values for the following fields will fail as well:
   - name
   - create_time
   - update_time
   - labels
   - description
**Overloads**

    def create_vpc_flow_logs_config(request, options = nil) -> ::Gapic::Operation

Pass arguments to `create_vpc_flow_logs_config` via a request object, either of type [CreateVpcFlowLogsConfigRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-CreateVpcFlowLogsConfigRequest "Google::Cloud::NetworkManagement::V1::CreateVpcFlowLogsConfigRequest (class)") or an equivalent Hash. **Parameters**

- **request** ([::Google::Cloud::NetworkManagement::V1::CreateVpcFlowLogsConfigRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-CreateVpcFlowLogsConfigRequest), ::Hash) --- A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- **options** (::Gapic::CallOptions, ::Hash) --- Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

    def create_vpc_flow_logs_config(parent: nil, vpc_flow_logs_config_id: nil, vpc_flow_logs_config: nil) -> ::Gapic::Operation

Pass arguments to `create_vpc_flow_logs_config` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). **Parameters**

- **parent** (::String) ---

  Required. The parent resource of the VpcFlowLogsConfig to create,
  in one of the following formats:
  - For project-level resources: `projects/{project_id}/locations/global`

  - For organization-level resources:
    `organizations/{organization_id}/locations/global`

- **vpc_flow_logs_config_id** (::String) --- Required. ID of the `VpcFlowLogsConfig`.
- **vpc_flow_logs_config** ([::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsConfig), ::Hash) --- Required. A `VpcFlowLogsConfig` resource
**Yields**

- (response, operation) --- Access the result along with the RPC operation
**Yield Parameters**

- **response** (::Gapic::Operation)
- **operation** (::GRPC::ActiveCall::Operation)
**Returns**

- (::Gapic::Operation)
**Raises**

- (::Google::Cloud::Error) --- if the RPC is aborted.
**Example**

Basic example

```ruby
require "google/cloud/network_management/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::NetworkManagement::V1::CreateVpcFlowLogsConfigRequest.new

# Call the create_vpc_flow_logs_config method.
result = client.create_vpc_flow_logs_config request

# The returned object is of type Gapic::Operation. You can use it to
# check the status of an operation, cancel it, or wait for results.
# Here is how to wait for a response.
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "No response received."
end
```

### #delete_vpc_flow_logs_config

    def delete_vpc_flow_logs_config(request, options = nil) -> ::Gapic::Operation
    def delete_vpc_flow_logs_config(name: nil) -> ::Gapic::Operation

Deletes a specific `VpcFlowLogsConfig`.
**Overloads**

    def delete_vpc_flow_logs_config(request, options = nil) -> ::Gapic::Operation

Pass arguments to `delete_vpc_flow_logs_config` via a request object, either of type [DeleteVpcFlowLogsConfigRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-DeleteVpcFlowLogsConfigRequest "Google::Cloud::NetworkManagement::V1::DeleteVpcFlowLogsConfigRequest (class)") or an equivalent Hash. **Parameters**

- **request** ([::Google::Cloud::NetworkManagement::V1::DeleteVpcFlowLogsConfigRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-DeleteVpcFlowLogsConfigRequest), ::Hash) --- A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- **options** (::Gapic::CallOptions, ::Hash) --- Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

    def delete_vpc_flow_logs_config(name: nil) -> ::Gapic::Operation

Pass arguments to `delete_vpc_flow_logs_config` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). **Parameter**

- **name** (::String) ---

  Required. The resource name of the VpcFlowLogsConfig,
  in one of the following formats:
  - For a project-level resource:
    `projects/{project_id}/locations/global/vpcFlowLogsConfigs/{vpc_flow_logs_config_id}`

  - For an organization-level resource:
    `organizations/{organization_id}/locations/global/vpcFlowLogsConfigs/{vpc_flow_logs_config_id}`

**Yields**

- (response, operation) --- Access the result along with the RPC operation
**Yield Parameters**

- **response** (::Gapic::Operation)
- **operation** (::GRPC::ActiveCall::Operation)
**Returns**

- (::Gapic::Operation)
**Raises**

- (::Google::Cloud::Error) --- if the RPC is aborted.
**Example**

Basic example

```ruby
require "google/cloud/network_management/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::NetworkManagement::V1::DeleteVpcFlowLogsConfigRequest.new

# Call the delete_vpc_flow_logs_config method.
result = client.delete_vpc_flow_logs_config request

# The returned object is of type Gapic::Operation. You can use it to
# check the status of an operation, cancel it, or wait for results.
# Here is how to wait for a response.
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "No response received."
end
```

### #get_vpc_flow_logs_config

    def get_vpc_flow_logs_config(request, options = nil) -> ::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig
    def get_vpc_flow_logs_config(name: nil) -> ::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig

Gets the details of a specific `VpcFlowLogsConfig`.
**Overloads**

    def get_vpc_flow_logs_config(request, options = nil) -> ::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig

Pass arguments to `get_vpc_flow_logs_config` via a request object, either of type [GetVpcFlowLogsConfigRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-GetVpcFlowLogsConfigRequest "Google::Cloud::NetworkManagement::V1::GetVpcFlowLogsConfigRequest (class)") or an equivalent Hash. **Parameters**

- **request** ([::Google::Cloud::NetworkManagement::V1::GetVpcFlowLogsConfigRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-GetVpcFlowLogsConfigRequest), ::Hash) --- A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- **options** (::Gapic::CallOptions, ::Hash) --- Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

    def get_vpc_flow_logs_config(name: nil) -> ::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig

Pass arguments to `get_vpc_flow_logs_config` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). **Parameter**

- **name** (::String) ---

  Required. The resource name of the VpcFlowLogsConfig,
  in one of the following formats:
  - For project-level resources:
    `projects/{project_id}/locations/global/vpcFlowLogsConfigs/{vpc_flow_logs_config_id}`

  - For organization-level resources:
    `organizations/{organization_id}/locations/global/vpcFlowLogsConfigs/{vpc_flow_logs_config_id}`

**Yields**

- (response, operation) --- Access the result along with the RPC operation
**Yield Parameters**

- **response** ([::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsConfig))
- **operation** (::GRPC::ActiveCall::Operation)
**Returns**

- ([::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsConfig))
**Raises**

- (::Google::Cloud::Error) --- if the RPC is aborted.
**Example**

Basic example

```ruby
require "google/cloud/network_management/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::NetworkManagement::V1::GetVpcFlowLogsConfigRequest.new

# Call the get_vpc_flow_logs_config method.
result = client.get_vpc_flow_logs_config request

# The returned object is of type Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig.
p result
```

### #iam_policy_client

    def iam_policy_client() -> Google::Iam::V1::IAMPolicy::Client

Get the associated client for mix-in of the IAMPolicy.
**Returns**

- (Google::Iam::V1::IAMPolicy::Client)

### #initialize

    def initialize() { |config| ... } -> Client

Create a new VpcFlowLogsService client object.
**Yields**

- (config) --- Configure the VpcFlowLogsService client.
**Yield Parameter**

- **config** ([Client::Configuration](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsService-Client-Configuration))
**Returns**

- ([Client](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsService-Client)) --- a new instance of Client
**Example**

```ruby
# Create a client using the default configuration
client = ::Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.new

# Create a client using a custom configuration
client = ::Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.new do |config|
  config.timeout = 10.0
end
```

### #list_vpc_flow_logs_configs

    def list_vpc_flow_logs_configs(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig>
    def list_vpc_flow_logs_configs(parent: nil, page_size: nil, page_token: nil, filter: nil, order_by: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig>

Lists all `VpcFlowLogsConfigs` in a given project.
**Overloads**

    def list_vpc_flow_logs_configs(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig>

Pass arguments to `list_vpc_flow_logs_configs` via a request object, either of type [ListVpcFlowLogsConfigsRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-ListVpcFlowLogsConfigsRequest "Google::Cloud::NetworkManagement::V1::ListVpcFlowLogsConfigsRequest (class)") or an equivalent Hash. **Parameters**

- **request** ([::Google::Cloud::NetworkManagement::V1::ListVpcFlowLogsConfigsRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-ListVpcFlowLogsConfigsRequest), ::Hash) --- A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- **options** (::Gapic::CallOptions, ::Hash) --- Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

    def list_vpc_flow_logs_configs(parent: nil, page_size: nil, page_token: nil, filter: nil, order_by: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig>

Pass arguments to `list_vpc_flow_logs_configs` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). **Parameters**

- **parent** (::String) ---

  Required. The parent resource of the VpcFlowLogsConfig,
  in one of the following formats:
  - For project-level resources: `projects/{project_id}/locations/global`

  - For organization-level resources:
    `organizations/{organization_id}/locations/global`

- **page_size** (::Integer) --- Optional. Number of `VpcFlowLogsConfigs` to return.
- **page_token** (::String) --- Optional. Page token from an earlier query, as returned in `next_page_token`.
- **filter** (::String) --- Optional. Lists the `VpcFlowLogsConfigs` that match the filter expression. A filter expression must use the supported [CEL logic operators](https://cloud.google.com/vpc/docs/about-flow-logs-records#supported_cel_logic_operators).
- **order_by** (::String) --- Optional. Field to use to sort the list.
**Yields**

- (response, operation) --- Access the result along with the RPC operation
**Yield Parameters**

- **response** (::Gapic::PagedEnumerable\<[::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsConfig)\>)
- **operation** (::GRPC::ActiveCall::Operation)
**Returns**

- (::Gapic::PagedEnumerable\<[::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsConfig)\>)
**Raises**

- (::Google::Cloud::Error) --- if the RPC is aborted.
**Example**

Basic example

```ruby
require "google/cloud/network_management/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::NetworkManagement::V1::ListVpcFlowLogsConfigsRequest.new

# Call the list_vpc_flow_logs_configs method.
result = client.list_vpc_flow_logs_configs request

# The returned object is of type Gapic::PagedEnumerable. You can iterate
# over elements, and API calls will be issued to fetch pages as needed.
result.each do |item|
  # Each element is of type ::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig.
  p item
end
```

### #location_client

    def location_client() -> Google::Cloud::Location::Locations::Client

Get the associated client for mix-in of the Locations.
**Returns**

- (Google::Cloud::Location::Locations::Client)

### #logger

    def logger() -> Logger

The logger used for request/response debug logging.
**Returns**

- (Logger)

### #operations_client

    def operations_client() -> ::Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Operations

Get the associated client for long-running operations.
**Returns**

- ([::Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Operations](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsService-Operations))

### #query_org_vpc_flow_logs_configs

    def query_org_vpc_flow_logs_configs(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig>
    def query_org_vpc_flow_logs_configs(parent: nil, page_size: nil, page_token: nil, filter: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig>

QueryOrgVpcFlowLogsConfigs returns a list of all organization-level VPC
Flow Logs configurations applicable to the specified project.
**Overloads**

    def query_org_vpc_flow_logs_configs(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig>

Pass arguments to `query_org_vpc_flow_logs_configs` via a request object, either of type [QueryOrgVpcFlowLogsConfigsRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-QueryOrgVpcFlowLogsConfigsRequest "Google::Cloud::NetworkManagement::V1::QueryOrgVpcFlowLogsConfigsRequest (class)") or an equivalent Hash. **Parameters**

- **request** ([::Google::Cloud::NetworkManagement::V1::QueryOrgVpcFlowLogsConfigsRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-QueryOrgVpcFlowLogsConfigsRequest), ::Hash) --- A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- **options** (::Gapic::CallOptions, ::Hash) --- Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

    def query_org_vpc_flow_logs_configs(parent: nil, page_size: nil, page_token: nil, filter: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig>

Pass arguments to `query_org_vpc_flow_logs_configs` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). **Parameters**

- **parent** (::String) --- Required. The parent resource of the VpcFlowLogsConfig, specified in the following format: `projects/{project_id}/locations/global`
- **page_size** (::Integer) --- Optional. Number of `VpcFlowLogsConfigs` to return.
- **page_token** (::String) --- Optional. Page token from an earlier query, as returned in `next_page_token`.
- **filter** (::String) --- Optional. Lists the `VpcFlowLogsConfigs` that match the filter expression. A filter expression must use the supported [CEL logic operators](https://cloud.google.com/vpc/docs/about-flow-logs-records#supported_cel_logic_operators).
**Yields**

- (response, operation) --- Access the result along with the RPC operation
**Yield Parameters**

- **response** (::Gapic::PagedEnumerable\<[::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsConfig)\>)
- **operation** (::GRPC::ActiveCall::Operation)
**Returns**

- (::Gapic::PagedEnumerable\<[::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsConfig)\>)
**Raises**

- (::Google::Cloud::Error) --- if the RPC is aborted.
**Example**

Basic example

```ruby
require "google/cloud/network_management/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::NetworkManagement::V1::QueryOrgVpcFlowLogsConfigsRequest.new

# Call the query_org_vpc_flow_logs_configs method.
result = client.query_org_vpc_flow_logs_configs request

# The returned object is of type Gapic::PagedEnumerable. You can iterate
# over elements, and API calls will be issued to fetch pages as needed.
result.each do |item|
  # Each element is of type ::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig.
  p item
end
```

### #show_effective_flow_logs_configs

    def show_effective_flow_logs_configs(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::EffectiveVpcFlowLogsConfig>
    def show_effective_flow_logs_configs(parent: nil, resource: nil, page_size: nil, page_token: nil, filter: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::EffectiveVpcFlowLogsConfig>

ShowEffectiveFlowLogsConfigs returns a list of all VPC Flow Logs
configurations applicable to a specified resource.
**Overloads**

    def show_effective_flow_logs_configs(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::EffectiveVpcFlowLogsConfig>

Pass arguments to `show_effective_flow_logs_configs` via a request object, either of type [ShowEffectiveFlowLogsConfigsRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-ShowEffectiveFlowLogsConfigsRequest "Google::Cloud::NetworkManagement::V1::ShowEffectiveFlowLogsConfigsRequest (class)") or an equivalent Hash. **Parameters**

- **request** ([::Google::Cloud::NetworkManagement::V1::ShowEffectiveFlowLogsConfigsRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-ShowEffectiveFlowLogsConfigsRequest), ::Hash) --- A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- **options** (::Gapic::CallOptions, ::Hash) --- Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

    def show_effective_flow_logs_configs(parent: nil, resource: nil, page_size: nil, page_token: nil, filter: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::NetworkManagement::V1::EffectiveVpcFlowLogsConfig>

Pass arguments to `show_effective_flow_logs_configs` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). **Parameters**

- **parent** (::String) --- Required. The parent resource of the VpcFlowLogsConfig, specified in the following format: `projects/{project_id}/locations/global`
- **resource** (::String) --- Required. The resource to get the effective VPC Flow Logs configuration for. The resource must belong to the same project as the parent. The resource must be a network, subnetwork, interconnect attachment, VPN tunnel, or a project.
- **page_size** (::Integer) --- Optional. Number of `EffectiveVpcFlowLogsConfigs` to return. Default is 30.
- **page_token** (::String) --- Optional. Page token from an earlier query, as returned in `next_page_token`.
- **filter** (::String) --- Optional. Lists the `EffectiveVpcFlowLogsConfigs` that match the filter expression. A filter expression must use the supported [CEL logic
  operators](https://cloud.google.com/vpc/docs/about-flow-logs-records#supported_cel_logic_operators).
**Yields**

- (response, operation) --- Access the result along with the RPC operation
**Yield Parameters**

- **response** (::Gapic::PagedEnumerable\<[::Google::Cloud::NetworkManagement::V1::EffectiveVpcFlowLogsConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-EffectiveVpcFlowLogsConfig)\>)
- **operation** (::GRPC::ActiveCall::Operation)
**Returns**

- (::Gapic::PagedEnumerable\<[::Google::Cloud::NetworkManagement::V1::EffectiveVpcFlowLogsConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-EffectiveVpcFlowLogsConfig)\>)
**Raises**

- (::Google::Cloud::Error) --- if the RPC is aborted.
**Example**

Basic example

```ruby
require "google/cloud/network_management/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::NetworkManagement::V1::ShowEffectiveFlowLogsConfigsRequest.new

# Call the show_effective_flow_logs_configs method.
result = client.show_effective_flow_logs_configs request

# The returned object is of type Gapic::PagedEnumerable. You can iterate
# over elements, and API calls will be issued to fetch pages as needed.
result.each do |item|
  # Each element is of type ::Google::Cloud::NetworkManagement::V1::EffectiveVpcFlowLogsConfig.
  p item
end
```

### #universe_domain

    def universe_domain() -> String

The effective universe domain
**Returns**

- (String)

### #update_vpc_flow_logs_config

    def update_vpc_flow_logs_config(request, options = nil) -> ::Gapic::Operation
    def update_vpc_flow_logs_config(update_mask: nil, vpc_flow_logs_config: nil) -> ::Gapic::Operation

Updates an existing `VpcFlowLogsConfig`.
If a configuration with the exact same settings already exists (even if the
ID is different), the creation fails.
Notes:

1. Updating a configuration with `state=DISABLED` will fail.
2. The following fields are not considered as settings for the purpose of the check mentioned above, therefore - updating another configuration with the same fields but different values for the following fields will fail as well:
   - name
   - create_time
   - update_time
   - labels
   - description
**Overloads**

    def update_vpc_flow_logs_config(request, options = nil) -> ::Gapic::Operation

Pass arguments to `update_vpc_flow_logs_config` via a request object, either of type [UpdateVpcFlowLogsConfigRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-UpdateVpcFlowLogsConfigRequest "Google::Cloud::NetworkManagement::V1::UpdateVpcFlowLogsConfigRequest (class)") or an equivalent Hash. **Parameters**

- **request** ([::Google::Cloud::NetworkManagement::V1::UpdateVpcFlowLogsConfigRequest](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-UpdateVpcFlowLogsConfigRequest), ::Hash) --- A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- **options** (::Gapic::CallOptions, ::Hash) --- Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

    def update_vpc_flow_logs_config(update_mask: nil, vpc_flow_logs_config: nil) -> ::Gapic::Operation

Pass arguments to `update_vpc_flow_logs_config` via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above). **Parameters**

- **update_mask** ([::Google::Protobuf::FieldMask](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Protobuf-FieldMask), ::Hash) --- Required. Mask of fields to update. At least one path must be supplied in this field. For example, to change the state of the configuration to ENABLED, specify `update_mask` = `"state"`, and the `vpc_flow_logs_config` would be: `vpc_flow_logs_config = {
  name =
  "projects/my-project/locations/global/vpcFlowLogsConfigs/my-config"
  state = "ENABLED" }`
- **vpc_flow_logs_config** ([::Google::Cloud::NetworkManagement::V1::VpcFlowLogsConfig](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-network_management-v1/latest/Google-Cloud-NetworkManagement-V1-VpcFlowLogsConfig), ::Hash) --- Required. Only fields specified in update_mask are updated.
**Yields**

- (response, operation) --- Access the result along with the RPC operation
**Yield Parameters**

- **response** (::Gapic::Operation)
- **operation** (::GRPC::ActiveCall::Operation)
**Returns**

- (::Gapic::Operation)
**Raises**

- (::Google::Cloud::Error) --- if the RPC is aborted.
**Example**

Basic example

```ruby
require "google/cloud/network_management/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::NetworkManagement::V1::VpcFlowLogsService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::NetworkManagement::V1::UpdateVpcFlowLogsConfigRequest.new

# Call the update_vpc_flow_logs_config method.
result = client.update_vpc_flow_logs_config request

# The returned object is of type Gapic::Operation. You can use it to
# check the status of an operation, cancel it, or wait for results.
# Here is how to wait for a response.
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "No response received."
end
```