---
title: Getting Started with Datadog
description: Datadog, the leading service for cloud-scale monitoring.
breadcrumbs: Docs > Infrastructure > Datadog Resource Catalog
---

# gcp_networkservices_lb_traffic_extension{% #gcp_networkservices_lb_traffic_extension %}

## `ancestors`{% #ancestors %}

**Type**: `UNORDERED_LIST_STRING`

## `create_time`{% #create_time %}

**Type**: `TIMESTAMP`**Provider name**: `createTime`**Description**: Output only. The timestamp when the resource was created.

## `description`{% #description %}

**Type**: `STRING`**Provider name**: `description`**Description**: Optional. A human-readable description of the resource.

## `extension_chains`{% #extension_chains %}

**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `extensionChains`**Description**: Required. A set of ordered extension chains that contain the match conditions and extensions to execute. Match conditions for each extension chain are evaluated in sequence for a given request. The first extension chain that has a condition that matches the request is executed. Any subsequent extension chains do not execute. Limited to 5 extension chains per resource.

- `extensions`**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `extensions`**Description**: Required. A set of extensions to execute for the matching request. At least one extension is required. Up to 3 extensions can be defined for each extension chain for `LbTrafficExtension` resource. `LbRouteExtension` chains are limited to 1 extension per extension chain.
  - `authority`**Type**: `STRING`**Provider name**: `authority`**Description**: Optional. The `:authority` header in the gRPC request sent from Envoy to the extension service. Required for Callout extensions. This field is not supported for plugin extensions. Setting it results in a validation error.
  - `fail_open`**Type**: `BOOLEAN`**Provider name**: `failOpen`**Description**: Optional. Determines how the proxy behaves if the call to the extension fails or times out. When set to `TRUE`, request or response processing continues without error. Any subsequent extensions in the extension chain are also executed. When set to `FALSE` or the default setting of `FALSE` is used, one of the following happens: * If response headers have not been delivered to the downstream client, a generic 500 error is returned to the client. The error response can be tailored by configuring a custom error response in the load balancer. * If response headers have been delivered, then the HTTP stream to the downstream client is reset.
  - `forward_headers`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `forwardHeaders`**Description**: Optional. List of the HTTP headers to forward to the extension (from the client or backend). If omitted, all headers are sent. Each element is a string indicating the header name.
  - `name`**Type**: `STRING`**Provider name**: `name`**Description**: Required. The name for this extension. The name is logged as part of the HTTP request logs. The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens, and can have a maximum length of 63 characters. Additionally, the first character must be a letter and the last a letter or a number.
  - `service`**Type**: `STRING`**Provider name**: `service`**Description**: Required. The reference to the service that runs the extension. To configure a callout extension, `service` must be a fully-qualified reference to a [backend service](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices) in the format: `https://www.googleapis.com/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/backendServices/{backendService}`. To configure a plugin extension, `service` must be a reference to a [`WasmPlugin` resource](https://cloud.google.com/service-extensions/docs/reference/rest/v1beta1/projects.locations.wasmPlugins) in the format: `projects/{project}/locations/{location}/wasmPlugins/{plugin}` or `//networkservices.googleapis.com/projects/{project}/locations/{location}/wasmPlugins/{wasmPlugin}`. Plugin extensions are currently supported for the `LbTrafficExtension` and the `LbRouteExtension` resources.
  - `supported_events`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `supportedEvents`**Description**: Optional. A set of events during request or response processing for which this extension is called. This field is required for the `LbTrafficExtension` resource. It is optional for the `LbRouteExtension` resource. If unspecified `REQUEST_HEADERS` event is assumed as supported.
  - `timeout`**Type**: `STRING`**Provider name**: `timeout`**Description**: Optional. Specifies the timeout for each individual message on the stream. The timeout must be between `10`-`10000` milliseconds. Required for callout extensions. This field is not supported for plugin extensions. Setting it results in a validation error.
- `match_condition`**Type**: `STRUCT`**Provider name**: `matchCondition`**Description**: Required. Conditions under which this chain is invoked for a request.
  - `cel_expression`**Type**: `STRING`**Provider name**: `celExpression`**Description**: Required. A Common Expression Language (CEL) expression that is used to match requests for which the extension chain is executed. For more information, see [CEL matcher language reference](https://cloud.google.com/service-extensions/docs/cel-matcher-language-reference).
- `name`**Type**: `STRING`**Provider name**: `name`**Description**: Required. The name for this extension chain. The name is logged as part of the HTTP request logs. The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens, and can have a maximum length of 63 characters. Additionally, the first character must be a letter and the last a letter or a number.

## `forwarding_rules`{% #forwarding_rules %}

**Type**: `UNORDERED_LIST_STRING`**Provider name**: `forwardingRules`**Description**: Optional. A list of references to the forwarding rules to which this service extension is attached. At least one forwarding rule is required. Only one `LbTrafficExtension` resource can be associated with a forwarding rule.

## `labels`{% #labels %}

**Type**: `UNORDERED_LIST_STRING`

## `load_balancing_scheme`{% #load_balancing_scheme %}

**Type**: `STRING`**Provider name**: `loadBalancingScheme`**Description**: Required. All backend services and forwarding rules referenced by this extension must share the same load balancing scheme. Supported values: `INTERNAL_MANAGED` and `EXTERNAL_MANAGED`. For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service).**Possible values**:

- `LOAD_BALANCING_SCHEME_UNSPECIFIED` - Default value. Do not use.
- `INTERNAL_MANAGED` - Signifies that this is used for Internal HTTP(S) Load Balancing.
- `EXTERNAL_MANAGED` - Signifies that this is used for External Managed HTTP(S) Load Balancing.

## `name`{% #name %}

**Type**: `STRING`**Provider name**: `name`**Description**: Required. Identifier. Name of the `LbTrafficExtension` resource in the following format: `projects/{project}/locations/{location}/lbTrafficExtensions/{lb_traffic_extension}`.

## `organization_id`{% #organization_id %}

**Type**: `STRING`

## `parent`{% #parent %}

**Type**: `STRING`

## `project_id`{% #project_id %}

**Type**: `STRING`

## `project_number`{% #project_number %}

**Type**: `STRING`

## `region_id`{% #region_id %}

**Type**: `STRING`

## `resource_name`{% #resource_name %}

**Type**: `STRING`

## `tags`{% #tags %}

**Type**: `UNORDERED_LIST_STRING`

## `update_time`{% #update_time %}

**Type**: `TIMESTAMP`**Provider name**: `updateTime`**Description**: Output only. The timestamp when the resource was updated.

## `zone_id`{% #zone_id %}

**Type**: `STRING`
