---
title: Google Cloud Router
description: >-
  Dynamically exchange routes between your VPC and on-premises networks using
  Border Gateway Protocol (BGP).
breadcrumbs: Docs > Integrations > Google Cloud Router
---

# Google Cloud Router

## Overview{% #overview %}

Google Cloud Router enables you to dynamically exchange routes between your Virtual Private Cloud (VPC) and on-premises networks by using Border Gateway Protocol (BGP).

Use the Datadog Google Cloud Platform integration to collect metrics from Google Cloud Router.

## Setup{% #setup %}

### Installation{% #installation %}

If you haven't already, set up the [Google Cloud Platform integration](https://docs.datadoghq.com/integrations/google-cloud-platform.md) first. There are no other installation steps.

### Log collection{% #log-collection %}

Google Cloud Router logs are collected with Google Cloud Logging and sent to a Dataflow job through a Cloud Pub/Sub topic. If you haven't already, [set up logging with the Datadog Dataflow template](https://docs.datadoghq.com/integrations/google-cloud-platform.md#log-collection).

Once this is done, export your Google Cloud Router logs from Google Cloud Logging to the Pub/Sub topic:

1. Go to the [Google Cloud Logging page](https://console.cloud.google.com/logs/viewer) and filter the Google Cloud Router logs.
1. Click **Create Export** and name the sink.
1. Choose "Cloud Pub/Sub" as the destination and select the Pub/Sub topic that was created for that purpose. **Note**: The Pub/Sub topic can be located in a different project.
1. Click **Create** and wait for the confirmation message to show up.

## Data Collected{% #data-collected %}

### Metrics{% #metrics %}

|  |
|  |
| **gcp.router.best\_received\_routes\_count**(gauge)                                      | Current number of best routes received by router.*Shown as route*                                                   |
| **gcp.router.bfd.control.receive\_intervals**(gauge)                                     | BFD control packets receive intervals.*Shown as millisecond*                                                        |
| **gcp.router.bfd.control.received\_packets\_count**(count)                               | Number of control packets received from this BFD session.                                                           |
| **gcp.router.bfd.control.rejected\_packets\_count**(count)                               | Number of control packets rejected, from this BFD session.                                                          |
| **gcp.router.bfd.control.transmit\_intervals**(gauge)                                    | BFD control packets transmit intervals.*Shown as millisecond*                                                       |
| **gcp.router.bfd.control.transmitted\_packets\_count**(count)                            | Number of control packets transmitted from this BFD session.                                                        |
| **gcp.router.bfd.session\_flap\_events\_count**(count)                                   | Number of each BFD flap event from this BFD session. A session flap event refers to the transition from Up state.   |
| **gcp.router.bfd.session\_up**(gauge)                                                    | Indicator for successful BFD session establishment. 1 indicates the session is up. 0 indicates the session is down. |
| **gcp.router.bgp.received\_routes\_count**(gauge)                                        | Current number of routes received on a BGP session.*Shown as route*                                                 |
| **gcp.router.bgp.sent\_routes\_count**(gauge)                                            | Current number of routes sent on a BGP session.*Shown as route*                                                     |
| **gcp.router.bgp.session\_up**(gauge)                                                    | Indicator for successful BGP session establishment.                                                                 |
| **gcp.router.bgp\_sessions\_down\_count**(gauge)                                         | Number of BGP sessions on the router that are down.*Shown as session*                                               |
| **gcp.router.bgp\_sessions\_up\_count**(gauge)                                           | Number of BGP sessions on the router that are up.*Shown as session*                                                 |
| **gcp.router.dynamic\_routes.learned\_routes.any\_dropped\_unique\_destinations**(gauge) | A boolean metric of whether there are any unique destinations dropped in a network region due to exceeding quota.   |
| **gcp.router.dynamic\_routes.learned\_routes.dropped\_unique\_destinations**(gauge)      | The number of unique destinations dropped in a network region due to exceeding quota.                               |
| **gcp.router.dynamic\_routes.learned\_routes.unique\_destinations\_limit**(gauge)        | The maximum number of unique destinations allowed by route quota for this network region.                           |
| **gcp.router.dynamic\_routes.learned\_routes.used\_unique\_destinations**(gauge)         | Number of unique destinations used by learned routes for this network region.                                       |
| **gcp.router.nat.allocated\_ports**(gauge)                                               | The number of ports allocated to all VMs by the NAT gateway.                                                        |
| **gcp.router.nat.closed\_connections\_count**(count)                                     | The number of connections to the NAT gateway that are closed.*Shown as connection*                                  |
| **gcp.router.nat.dropped\_received\_packets\_count**(count)                              | The number of received packets dropped by the NAT gateway.*Shown as packet*                                         |
| **gcp.router.nat.dropped\_sent\_packets\_count**(count)                                  | Count of sent packets dropped by the NAT gateway.*Shown as packet*                                                  |
| **gcp.router.nat.nat\_allocation\_failed**(gauge)                                        | Indicates if there is a failure in allocating NAT IPs to any VM in the NAT gateway.                                 |
| **gcp.router.nat.new\_connections\_count**(count)                                        | The number of new connections to the NAT gateway.*Shown as connection*                                              |
| **gcp.router.nat.open\_connections**(gauge)                                              | The number of connections open to the NAT gateway.*Shown as connection*                                             |
| **gcp.router.nat.port\_usage**(gauge)                                                    | The highest port usage among all VMs connected to the NAT gateway.                                                  |
| **gcp.router.nat.received\_bytes\_count**(count)                                         | The number of bytes received by the NAT gateway.*Shown as byte*                                                     |
| **gcp.router.nat.received\_packets\_count**(count)                                       | The number of packets received by the NAT gateway.*Shown as packet*                                                 |
| **gcp.router.nat.sent\_bytes\_count**(count)                                             | The number of bytes sent by the NAT gateway.*Shown as byte*                                                         |
| **gcp.router.nat.sent\_packets\_count**(count)                                           | The number of packets sent by the NAT gateway.*Shown as packet*                                                     |
| **gcp.router.router\_up**(gauge)                                                         | Router status, up or down.                                                                                          |
| **gcp.router.sent\_routes\_count**(gauge)                                                | Current number of routes sent by router.                                                                            |

### Events{% #events %}

The Google Cloud Router integration does not include any events.

### Service Checks{% #service-checks %}

The Google Cloud Router integration does not include any service checks.

## Troubleshooting{% #troubleshooting %}

Need help? Contact [Datadog support](https://docs.datadoghq.com/help/).
