From b354f29b1bbce3517a96b28696362fc8cffb47df Mon Sep 17 00:00:00 2001 From: Kate Osborn Date: Fri, 31 May 2024 09:26:13 -0600 Subject: [PATCH 1/6] Add how-to for ClientSettingsPolicy --- examples/client-settings-policy/README.md | 2 +- .../{cafe.yaml => app.yaml} | 0 .../client-settings-policy/csp-grpcroute.yaml | 14 - .../csp-httproutes.yaml | 38 --- ...eway.yaml => gateway-client-settings.yaml} | 12 +- examples/client-settings-policy/gateway.yaml | 4 - .../grpc-client-settings.yaml | 11 + .../{cafe-routes.yaml => httproutes.yaml} | 0 .../tea-client-settings.yaml | 11 + .../how-to/monitoring/troubleshooting.md | 28 ++ .../traffic-management/client-settings.md | 283 ++++++++++++++++++ 11 files changed, 336 insertions(+), 67 deletions(-) rename examples/client-settings-policy/{cafe.yaml => app.yaml} (100%) delete mode 100644 examples/client-settings-policy/csp-grpcroute.yaml delete mode 100644 examples/client-settings-policy/csp-httproutes.yaml rename examples/client-settings-policy/{csp-gateway.yaml => gateway-client-settings.yaml} (52%) create mode 100644 examples/client-settings-policy/grpc-client-settings.yaml rename examples/client-settings-policy/{cafe-routes.yaml => httproutes.yaml} (100%) create mode 100644 examples/client-settings-policy/tea-client-settings.yaml create mode 100644 site/content/how-to/traffic-management/client-settings.md diff --git a/examples/client-settings-policy/README.md b/examples/client-settings-policy/README.md index d3d7c87f0f..4b192f0850 100644 --- a/examples/client-settings-policy/README.md +++ b/examples/client-settings-policy/README.md @@ -1,3 +1,3 @@ # Client Settings Policy -This directory contains YAML files of ClientSettingsPolicies. +This directory contains the YAML files used in the [ClientSettingsPolicy](https://docs.nginx.com/nginx-gateway-fabric/how-to/traffic-management/client-settings/) guide. diff --git a/examples/client-settings-policy/cafe.yaml b/examples/client-settings-policy/app.yaml similarity index 100% rename from examples/client-settings-policy/cafe.yaml rename to examples/client-settings-policy/app.yaml diff --git a/examples/client-settings-policy/csp-grpcroute.yaml b/examples/client-settings-policy/csp-grpcroute.yaml deleted file mode 100644 index 24139aa7ab..0000000000 --- a/examples/client-settings-policy/csp-grpcroute.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# This example should be used in conjunction with -# the GRPC example: https://github.com/nginxinc/nginx-gateway-fabric/tree/main/examples/grpc-routing example. -apiVersion: gateway.nginx.org/v1alpha1 -kind: ClientSettingsPolicy -metadata: - name: grcp-backend-v1-route - namespace: default -spec: - targetRef: - group: gateway.networking.k8s.io - kind: GRPCRoute - name: backend-v1 - body: - maxSize: "0" # setting to 0 disables checking of the body size diff --git a/examples/client-settings-policy/csp-httproutes.yaml b/examples/client-settings-policy/csp-httproutes.yaml deleted file mode 100644 index 1419c7b278..0000000000 --- a/examples/client-settings-policy/csp-httproutes.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: gateway.nginx.org/v1alpha1 -kind: ClientSettingsPolicy -metadata: - name: tea-route-max-body-size - namespace: default -spec: - targetRef: - group: gateway.networking.k8s.io - kind: HTTPRoute - name: tea - body: - maxSize: 800m ---- -apiVersion: gateway.nginx.org/v1alpha1 -kind: ClientSettingsPolicy -metadata: - name: coffee-route-max-body-size - namespace: default -spec: - targetRef: - group: gateway.networking.k8s.io - kind: HTTPRoute - name: coffee - body: - maxSize: 5m ---- -apiVersion: gateway.nginx.org/v1alpha1 -kind: ClientSettingsPolicy -metadata: - name: coffee-route-keepalive-requests - namespace: default -spec: - targetRef: - group: gateway.networking.k8s.io - kind: HTTPRoute - name: coffee - keepAlive: - requests: 100 diff --git a/examples/client-settings-policy/csp-gateway.yaml b/examples/client-settings-policy/gateway-client-settings.yaml similarity index 52% rename from examples/client-settings-policy/csp-gateway.yaml rename to examples/client-settings-policy/gateway-client-settings.yaml index 991d2b9604..8e063a439d 100644 --- a/examples/client-settings-policy/csp-gateway.yaml +++ b/examples/client-settings-policy/gateway-client-settings.yaml @@ -1,19 +1,11 @@ apiVersion: gateway.nginx.org/v1alpha1 kind: ClientSettingsPolicy metadata: - name: gw - namespace: default + name: gateway-client-settings spec: targetRef: group: gateway.networking.k8s.io kind: Gateway name: gateway body: - maxSize: 10m - timeout: 30s - keepAlive: - requests: 100 - time: 5s - timeout: - server: 2s - header: 1s + maxSize: "50" # sizes without a unit are bytes. diff --git a/examples/client-settings-policy/gateway.yaml b/examples/client-settings-policy/gateway.yaml index 5404ac397c..e6507f613b 100644 --- a/examples/client-settings-policy/gateway.yaml +++ b/examples/client-settings-policy/gateway.yaml @@ -9,7 +9,3 @@ spec: port: 80 protocol: HTTP hostname: "*.example.com" - - name: http2 - port: 8080 - protocol: HTTP - hostname: "*.example.org" diff --git a/examples/client-settings-policy/grpc-client-settings.yaml b/examples/client-settings-policy/grpc-client-settings.yaml new file mode 100644 index 0000000000..e603ff47f6 --- /dev/null +++ b/examples/client-settings-policy/grpc-client-settings.yaml @@ -0,0 +1,11 @@ +apiVersion: gateway.nginx.org/v1alpha1 +kind: ClientSettingsPolicy +metadata: + name: grpc-client-settings +spec: + targetRef: + group: gateway.networking.k8s.io + kind: GRPCRoute + name: my-grpc-route + body: + maxSize: "75" # sizes without a unit are bytes. diff --git a/examples/client-settings-policy/cafe-routes.yaml b/examples/client-settings-policy/httproutes.yaml similarity index 100% rename from examples/client-settings-policy/cafe-routes.yaml rename to examples/client-settings-policy/httproutes.yaml diff --git a/examples/client-settings-policy/tea-client-settings.yaml b/examples/client-settings-policy/tea-client-settings.yaml new file mode 100644 index 0000000000..c478be2bd6 --- /dev/null +++ b/examples/client-settings-policy/tea-client-settings.yaml @@ -0,0 +1,11 @@ +apiVersion: gateway.nginx.org/v1alpha1 +kind: ClientSettingsPolicy +metadata: + name: tea-client-settings +spec: + targetRef: + group: gateway.networking.k8s.io + kind: HTTPRoute + name: tea + body: + maxSize: "75" # sizes without a unit are bytes. diff --git a/site/content/how-to/monitoring/troubleshooting.md b/site/content/how-to/monitoring/troubleshooting.md index fd85dc775a..3b01c5c527 100644 --- a/site/content/how-to/monitoring/troubleshooting.md +++ b/site/content/how-to/monitoring/troubleshooting.md @@ -109,3 +109,31 @@ If using NGINX Gateway Fabric with NGINX Plus as the data plane, you will see th #### Resolution To resolve this issue, enable Usage Reporting by following the [Usage Reporting]({{< relref "installation/usage-reporting.md" >}}) guide. + +### 413 Request Entity Too Large + +#### Description + +If you receive the following error: + +```text + +413 Request Entity Too Large + +

413 Request Entity Too Large

+
nginx/1.25.5
+ + +``` + +or see the following error message in the NGINX logs: + +```text +2024/05/30 21:48:22 [error] 138#138: *43 client intended to send too large body: 112 bytes, client: 127.0.0.1, server: cafe.example.com, request: "POST /coffee HTTP/1.1", host: "cafe.example.com:8080" +``` + +the request body exceeds the [client_max_body_size](https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size). + +#### Resolution + +You can configure the `client_max_body_size` using the `ClientSettingsPolicy` API. See this [guide]({{< relref "how-to/traffic-management/client-settings.md" >}}) for instructions. diff --git a/site/content/how-to/traffic-management/client-settings.md b/site/content/how-to/traffic-management/client-settings.md new file mode 100644 index 0000000000..4f259912ee --- /dev/null +++ b/site/content/how-to/traffic-management/client-settings.md @@ -0,0 +1,283 @@ +--- +title: "Client Settings Policy" +weight: 800 +toc: true +docs: "DOCS-000" +--- + +Learn how to use the `ClientSettingsPolicy` API. + +## Overview + +The `ClientSettingsPolicy` API allows Cluster Operators and Application Developers to configure the connection behavior between the client and NGINX. + +The settings in `ClientSettingsPolicy` correspond to the following NGINX directives: + +- [`client_max_body_size`]() +- [`client_body_timeout`]() +- [`keepalive_requests`]() +- [`keepalive_time`]() +- [`keepalive_timeout`]() + +`ClientSettingsPolicy` is an [Inherited PolicyAttachment](https://gateway-api.sigs.k8s.io/reference/policy-attachment/) that can be applied to a Gateway, HTTPRoute, or GRPCRoute in the same namespace as the `ClientSettingsPolicy`. + +When applied to a Gateway, the settings specified in the `ClientSettingsPolicy` affect all HTTPRoutes and GRPCRoutes attached to the Gateway. This allows Cluster Operators to set defaults for all applications using the Gateway. + +When applied to an HTTPRoute or GRPCRoute, the settings in the `ClientSettingsPolicy` affect only the route they are applied to. This allows Application Developers to set values for their applications based on their application's behavior or requirements. +Settings applied to an HTTPRoute or GRPCRoute take precedence over settings applied to a Gateway. + +TODO: link to general doc on policy inheritance + +This guide will show you how to use the `ClientSettingsPolicy` API to configure the client max body size for your applications. + +## Setup + +- [Install]({{< relref "/installation/" >}}) NGINX Gateway Fabric. +- [Expose NGINX Gateway Fabric]({{< relref "installation/expose-nginx-gateway-fabric.md" >}}) and save the public IP address and port of NGINX Gateway Fabric into shell variables: + + ```text + GW_IP=XXX.YYY.ZZZ.III + GW_PORT= + ``` + + {{< note >}}In a production environment, you should have a DNS record for the external IP address that is exposed, and it should refer to the hostname that the gateway will forward for.{{< /note >}} + +- Create the coffee and tea example applications: + + ```yaml + kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.3.0/examples/client-settings-policy/app.yaml + ``` + +- Create a Gateway: + + ```yaml + kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.3.0/examples/client-settings-policy/gateway.yaml + ``` + +- Create HTTPRoutes for the coffee and tea applications: + + ```yaml + kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.3.0/examples/client-settings-policy/httproutes.yaml + ``` + +- Test the configuration: + + We can send traffic to the coffee and tea applications using the external IP address and port for NGINX Gateway Fabric. + + {{< note >}}If you have a DNS record allocated for `cafe.example.com`, you can send the request directly to that hostname, without needing to resolve.{{< /note >}} + + Send a request to coffee: + + ```shell + curl --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT/coffee + ``` + + This request should receive a response from the coffee Pod: + + ```text + Server address: 10.244.0.9:8080 + Server name: coffee-76c7c85bbd-cf8nz + ``` + + Send a request to tea: + + ```shell + curl --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT/tea + ``` + + This request should receive a response from the tea Pod: + + ```text + Server address: 10.244.0.9:8080 + Server name: tea-76c7c85bbd-cf8nz + ``` + +## Configure client max body size + +### Set a default client max body size for the Gateway + +To set a default client max body size for the Gateway we created in the setup, create the following `ClientSettingsPolicy`: + +```yaml +kubectl apply -f - < +``` + +Next, let's test that the policy is configured by sending a POST request to the coffee and tea applications exceeding the client's max body size of 50 bytes. + + +```shell +curl --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT/coffee -X POST --data "this payload is greater than fifty bytes by four bytes" +``` + +You should receive the following error: + +```text + +413 Request Entity Too Large + +

413 Request Entity Too Large

+
nginx/1.25.5
+ + +``` + +Now, let's try again with a payload that's less than the 50 byte limit: + +```shell +curl --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT/coffee -X POST --data "this payload is under fifty bytes" +``` + +This time, we should receive a response from coffee: + +```text +Server address: 10.244.0.6:8080 +Server name: coffee-56b44d4c55-7ldjc +``` + +You can repeat this test with the tea application to confirm that the policy affects both HTTPRoutes. + +### Set a different client max body size for a route + +To set a different client max body size for a particular route, you can create another `ClientSettingsPolicy` that targets the route: + +```yaml +kubectl apply -f - < +``` + +Notice that the Ancestor Ref in the status is the tea HTTPRoute instead of the Gateway. + +Next, let's test that the policy is configured by sending a POST request to the tea application with a request body size greater than 50 bytes. + +```shell +curl --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT/tea -X POST --data "this payload is greater than fifty bytes but less than seventy five" +``` + +You should receive a response from tea: + +```text +Server address: 10.244.0.7:8080 +Server name: tea-596697966f-bf6tw +``` + +However, since the coffee app is still affected by the `ClientSettingsPolicy` attached to the Gateway, the same request to coffee should fail: + +```shell +curl --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT/coffee -X POST --data "this payload is greater than fifty bytes but less than seventy five" +``` + +```text + +413 Request Entity Too Large + +

413 Request Entity Too Large

+
nginx/1.25.5
+ + +``` + +If you want to configure a `ClientSettingsPolicy` for a GRPCRoute, you can specify the GRPCRoute in the `spec.targetRef`: + +```yaml +kubectl apply -f - < Date: Tue, 4 Jun 2024 11:45:09 -0600 Subject: [PATCH 2/6] Apply docs suggestions Co-authored-by: Alan Dooley --- .../how-to/monitoring/troubleshooting.md | 6 +++--- .../traffic-management/client-settings.md | 18 +++++++++--------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/site/content/how-to/monitoring/troubleshooting.md b/site/content/how-to/monitoring/troubleshooting.md index 3b01c5c527..d286f8d6ed 100644 --- a/site/content/how-to/monitoring/troubleshooting.md +++ b/site/content/how-to/monitoring/troubleshooting.md @@ -126,14 +126,14 @@ If you receive the following error: ``` -or see the following error message in the NGINX logs: +Or view the following error message in the NGINX logs: ```text 2024/05/30 21:48:22 [error] 138#138: *43 client intended to send too large body: 112 bytes, client: 127.0.0.1, server: cafe.example.com, request: "POST /coffee HTTP/1.1", host: "cafe.example.com:8080" ``` -the request body exceeds the [client_max_body_size](https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size). +The request body exceeds the [client_max_body_size](https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size). #### Resolution -You can configure the `client_max_body_size` using the `ClientSettingsPolicy` API. See this [guide]({{< relref "how-to/traffic-management/client-settings.md" >}}) for instructions. +You can configure the `client_max_body_size` using the `ClientSettingsPolicy` API. Read the [Client Settings Policy]({{< relref "how-to/traffic-management/client-settings.md" >}}) documentation for more information. diff --git a/site/content/how-to/traffic-management/client-settings.md b/site/content/how-to/traffic-management/client-settings.md index 4f259912ee..386842ec78 100644 --- a/site/content/how-to/traffic-management/client-settings.md +++ b/site/content/how-to/traffic-management/client-settings.md @@ -62,7 +62,7 @@ This guide will show you how to use the `ClientSettingsPolicy` API to configure - Test the configuration: - We can send traffic to the coffee and tea applications using the external IP address and port for NGINX Gateway Fabric. + You can send traffic to the coffee and tea applications using the external IP address and port for NGINX Gateway Fabric. {{< note >}}If you have a DNS record allocated for `cafe.example.com`, you can send the request directly to that hostname, without needing to resolve.{{< /note >}} @@ -96,7 +96,7 @@ This guide will show you how to use the `ClientSettingsPolicy` API to configure ### Set a default client max body size for the Gateway -To set a default client max body size for the Gateway we created in the setup, create the following `ClientSettingsPolicy`: +To set a default client max body size for the Gateway created during setup, add the following `ClientSettingsPolicy`: ```yaml kubectl apply -f - < ``` -Next, let's test that the policy is configured by sending a POST request to the coffee and tea applications exceeding the client's max body size of 50 bytes. +Next, test that the policy is configured by sending a POST request to the coffee and tea applications exceeding the client's max body size of 50 bytes. ```shell @@ -163,13 +163,13 @@ You should receive the following error: ``` -Now, let's try again with a payload that's less than the 50 byte limit: +Try again with a payload that's less than the 50 byte limit: ```shell curl --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT/coffee -X POST --data "this payload is under fifty bytes" ``` -This time, we should receive a response from coffee: +This time, you should receive a response from coffee: ```text Server address: 10.244.0.6:8080 @@ -201,7 +201,7 @@ EOF This `ClientSettingsPolicy` targets the tea HTTPRoute we created in the setup by specifying it in the `targetRef` field. It sets the max client body size to 75 bytes. Since this policy is applied to the tea HTTPRoute, it will only affect the tea HTTPRoute, and the `ClientSettingsPolicy` we created in the previous step will affect all other routes attached to the Gateway. This means that the coffee app still has a client max body size of 50 bytes, and the tea app has a max body size of 75. -Let's verify that the `ClientSettingsPolicy` is Accepted: +Verify that the `ClientSettingsPolicy` is Accepted: ```shell kubectl describe clientsettingspolicies.gateway.nginx.org tea-client-settings @@ -230,7 +230,7 @@ Events: Notice that the Ancestor Ref in the status is the tea HTTPRoute instead of the Gateway. -Next, let's test that the policy is configured by sending a POST request to the tea application with a request body size greater than 50 bytes. +Next, test that the policy is configured by sending a POST request to the tea application with a request body size greater than 50 bytes. ```shell curl --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT/tea -X POST --data "this payload is greater than fifty bytes but less than seventy five" @@ -259,7 +259,7 @@ curl --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT ``` -If you want to configure a `ClientSettingsPolicy` for a GRPCRoute, you can specify the GRPCRoute in the `spec.targetRef`: +To configure a `ClientSettingsPolicy` for a GRPCRoute, you can specify the GRPCRoute in the `spec.targetRef`: ```yaml kubectl apply -f - < Date: Tue, 4 Jun 2024 11:51:47 -0600 Subject: [PATCH 3/6] Remove DNS note and TODOs --- .../content/how-to/traffic-management/client-settings.md | 9 --------- 1 file changed, 9 deletions(-) diff --git a/site/content/how-to/traffic-management/client-settings.md b/site/content/how-to/traffic-management/client-settings.md index 386842ec78..bf2ccacaf5 100644 --- a/site/content/how-to/traffic-management/client-settings.md +++ b/site/content/how-to/traffic-management/client-settings.md @@ -26,8 +26,6 @@ When applied to a Gateway, the settings specified in the `ClientSettingsPolicy` When applied to an HTTPRoute or GRPCRoute, the settings in the `ClientSettingsPolicy` affect only the route they are applied to. This allows Application Developers to set values for their applications based on their application's behavior or requirements. Settings applied to an HTTPRoute or GRPCRoute take precedence over settings applied to a Gateway. -TODO: link to general doc on policy inheritance - This guide will show you how to use the `ClientSettingsPolicy` API to configure the client max body size for your applications. ## Setup @@ -64,8 +62,6 @@ This guide will show you how to use the `ClientSettingsPolicy` API to configure You can send traffic to the coffee and tea applications using the external IP address and port for NGINX Gateway Fabric. - {{< note >}}If you have a DNS record allocated for `cafe.example.com`, you can send the request directly to that hostname, without needing to resolve.{{< /note >}} - Send a request to coffee: ```shell @@ -276,8 +272,3 @@ spec: maxSize: "75" # sizes without a unit are bytes. EOF ``` - -## What's Next - -- TODO: add link to general policy doc -- TODO: add like to API documentation From 91e10573c411f6a5bb9010fa49bc8f51470fb3bd Mon Sep 17 00:00:00 2001 From: Kate Osborn Date: Tue, 4 Jun 2024 12:00:10 -0600 Subject: [PATCH 4/6] Add note about policy limitaton --- site/content/how-to/monitoring/tracing.md | 4 ++++ site/content/how-to/traffic-management/client-settings.md | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/site/content/how-to/monitoring/tracing.md b/site/content/how-to/monitoring/tracing.md index 679aa0d7f5..acb65cba83 100644 --- a/site/content/how-to/monitoring/tracing.md +++ b/site/content/how-to/monitoring/tracing.md @@ -13,6 +13,10 @@ NGINX Gateway Fabric supports tracing using [OpenTelemetry](https://opentelemetr This guide explains how to enable tracing on HTTPRoutes using NGINX Gateway Fabric. It uses the OpenTelemetry Collector and Jaeger to process and collect the traces. +{{< important >}} +Tracing cannot be enabled for [HTTPRoute matches](https://gateway-api.sigs.k8s.io/reference/spec/#gateway.networking.k8s.io/v1.HTTPRouteMatch) with `headers`, `params`, or `method` matchers defined. This will be addressed in a future release. +{{< /important >}} + ## Install the Collectors The first step is to install the collectors. NGINX Gateway Fabric will be configured to export to the OpenTelemetry Collector, which is configured to export to Jaeger. This model allows the visualization collector (Jaeger) to be swapped with something else, or to add more collectors without needing to reconfigure NGINX Gateway Fabric. It is also possible to configure NGINX Gateway Fabric to export directly to Jaeger. diff --git a/site/content/how-to/traffic-management/client-settings.md b/site/content/how-to/traffic-management/client-settings.md index bf2ccacaf5..43d3adc0ab 100644 --- a/site/content/how-to/traffic-management/client-settings.md +++ b/site/content/how-to/traffic-management/client-settings.md @@ -28,6 +28,10 @@ Settings applied to an HTTPRoute or GRPCRoute take precedence over settings appl This guide will show you how to use the `ClientSettingsPolicy` API to configure the client max body size for your applications. +{{< important >}} +The `ClientSettingsPolicy` API does not work with [HTTPRoute matches](https://gateway-api.sigs.k8s.io/reference/spec/#gateway.networking.k8s.io/v1.HTTPRouteMatch) with `headers`, `params`, or `method` matchers defined. This will be addressed in a future release. +{{< /important >}} + ## Setup - [Install]({{< relref "/installation/" >}}) NGINX Gateway Fabric. From 69329231db98ac6e55690e9cdbbe66adf0a29af4 Mon Sep 17 00:00:00 2001 From: Kate Osborn <50597707+kate-osborn@users.noreply.github.com> Date: Wed, 5 Jun 2024 15:17:34 -0600 Subject: [PATCH 5/6] Update note language Co-authored-by: Alan Dooley --- site/content/how-to/monitoring/tracing.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/site/content/how-to/monitoring/tracing.md b/site/content/how-to/monitoring/tracing.md index acb65cba83..735bc92b87 100644 --- a/site/content/how-to/monitoring/tracing.md +++ b/site/content/how-to/monitoring/tracing.md @@ -14,7 +14,7 @@ NGINX Gateway Fabric supports tracing using [OpenTelemetry](https://opentelemetr This guide explains how to enable tracing on HTTPRoutes using NGINX Gateway Fabric. It uses the OpenTelemetry Collector and Jaeger to process and collect the traces. {{< important >}} -Tracing cannot be enabled for [HTTPRoute matches](https://gateway-api.sigs.k8s.io/reference/spec/#gateway.networking.k8s.io/v1.HTTPRouteMatch) with `headers`, `params`, or `method` matchers defined. This will be addressed in a future release. +Tracing cannot be enabled for [HTTPRoute matches](https://gateway-api.sigs.k8s.io/reference/spec/#gateway.networking.k8s.io/v1.HTTPRouteMatch) with `headers`, `params`, or `method` matchers defined. It will be added in a future release. {{< /important >}} ## Install the Collectors From 0d660901c5c867145f2e7dc990d6347ff7108375 Mon Sep 17 00:00:00 2001 From: Kate Osborn Date: Fri, 7 Jun 2024 13:26:10 -0600 Subject: [PATCH 6/6] Update note wording in cspolicy doc --- site/content/how-to/traffic-management/client-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/site/content/how-to/traffic-management/client-settings.md b/site/content/how-to/traffic-management/client-settings.md index 43d3adc0ab..79089b92b3 100644 --- a/site/content/how-to/traffic-management/client-settings.md +++ b/site/content/how-to/traffic-management/client-settings.md @@ -29,7 +29,7 @@ Settings applied to an HTTPRoute or GRPCRoute take precedence over settings appl This guide will show you how to use the `ClientSettingsPolicy` API to configure the client max body size for your applications. {{< important >}} -The `ClientSettingsPolicy` API does not work with [HTTPRoute matches](https://gateway-api.sigs.k8s.io/reference/spec/#gateway.networking.k8s.io/v1.HTTPRouteMatch) with `headers`, `params`, or `method` matchers defined. This will be addressed in a future release. +The `ClientSettingsPolicy` API does not work with [HTTPRoute matches](https://gateway-api.sigs.k8s.io/reference/spec/#gateway.networking.k8s.io/v1.HTTPRouteMatch) with `headers`, `params`, or `method` matchers defined. It will be added in a future release. {{< /important >}} ## Setup