From c65621e324405ecb5132e11d1f9f605002303de8 Mon Sep 17 00:00:00 2001 From: Cassandra Coyle Date: Mon, 14 Apr 2025 09:10:50 -0500 Subject: [PATCH 01/12] copy contents from other PR Signed-off-by: Cassandra Coyle --- .../observability/tracing/tracing-overview.md | 37 +++++++++++++++++++ .../tracing/w3c-tracing-overview.md | 24 ++++++++++++ 2 files changed, 61 insertions(+) diff --git a/daprdocs/content/en/operations/observability/tracing/tracing-overview.md b/daprdocs/content/en/operations/observability/tracing/tracing-overview.md index a5194a730..23eff28c4 100644 --- a/daprdocs/content/en/operations/observability/tracing/tracing-overview.md +++ b/daprdocs/content/en/operations/observability/tracing/tracing-overview.md @@ -110,6 +110,43 @@ If you decide to generate trace headers yourself, there are three ways this can Read [the trace context overview]({{< ref w3c-tracing-overview >}}) for more background and examples on W3C trace context and headers. +### Baggage Support + +Dapr supports propagating W3C Baggage alongside trace context. For details on the W3C Baggage specification, format, and how it works, see the [W3C Trace Context Overview]({{< ref "w3c-tracing-overview.md#w3c-baggage" >}}). + +#### Using Baggage with Dapr + +You can add baggage from your application by setting the appropriate HTTP header or gRPC metadata when calling Dapr. Dapr automatically propagates this baggage across subsequent service calls. + +**Setting Baggage** + +Set the `baggage` header (HTTP) or metadata (gRPC) in your requests to Dapr: +- For HTTP: Add the `baggage` header to your request. +- For gRPC: Add `baggage` key-value pairs to the outgoing context metadata. + +*HTTP Example:* +```http +POST /v1.0/invoke/serviceB/method/hello HTTP/1.1 +Content-Type: application/json +baggage: key1=value1,key2=value2 +{ + "message": "Hello service B" +} +``` + +*gRPC Example (Go):* +```go +ctx = grpcMetadata.AppendToOutgoingContext(ctx, + "baggage", "key1=value1,key2=value2", + ) +``` + +#### Common Use Cases + +Baggage is useful for: +- Propagating user IDs or correlation IDs across services +- Passing tenant or environment information + ## Related Links - [Observability concepts]({{< ref observability-concept.md >}}) diff --git a/daprdocs/content/en/operations/observability/tracing/w3c-tracing-overview.md b/daprdocs/content/en/operations/observability/tracing/w3c-tracing-overview.md index 52eccbef4..4f08b81c5 100644 --- a/daprdocs/content/en/operations/observability/tracing/w3c-tracing-overview.md +++ b/daprdocs/content/en/operations/observability/tracing/w3c-tracing-overview.md @@ -73,6 +73,18 @@ tracestate: congo=t61rcWkgMzE [Learn more about the tracestate fields details](https://www.w3.org/TR/trace-context/#tracestate-header). +**Baggage header** + +Dapr supports [W3C Baggage](https://www.w3.org/TR/baggage/) for propagating key-value pairs alongside trace context. The baggage header allows you to attach metadata to trace context that needs to be propagated throughout your distributed system, such as user IDs, tenant information, or environment details. + +The header value follows the W3C Baggage specification format: + +``` +baggage: userId=alice,serverNode=DF%2028,isVIP=true +``` + +Multiple baggage headers are supported and will be combined according to the W3C specification. Dapr automatically propagates baggage headers across service calls. + {{% /codetab %}} @@ -81,6 +93,18 @@ tracestate: congo=t61rcWkgMzE In the gRPC API calls, trace context is passed through `grpc-trace-bin` header. +**Baggage metadata** + +Dapr supports [W3C Baggage](https://www.w3.org/TR/baggage/) for propagating key-value pairs alongside trace context. The baggage metadata allows you to attach metadata to trace context that needs to be propagated throughout your distributed system, such as user IDs, tenant information, or environment details. + +The metadata value follows the W3C Baggage specification format: + +``` +baggage: userId=alice,serverNode=DF%2028,isVIP=true +``` + +Multiple baggage metadata entries are supported and will be combined according to the W3C specification. Dapr automatically propagates baggage metadata across service calls. + {{% /codetab %}} {{< /tabs >}} From 3cb21b7d44c27b2da148d9704f1cb137221d28f4 Mon Sep 17 00:00:00 2001 From: Cassandra Coyle Date: Sun, 20 Apr 2025 22:25:35 -0500 Subject: [PATCH 02/12] update docs Signed-off-by: Cassandra Coyle --- .../observability/tracing/tracing-overview.md | 118 +++++++++++++++--- .../tracing/w3c-tracing-overview.md | 59 ++++++--- 2 files changed, 147 insertions(+), 30 deletions(-) diff --git a/daprdocs/content/en/operations/observability/tracing/tracing-overview.md b/daprdocs/content/en/operations/observability/tracing/tracing-overview.md index 23eff28c4..46b503dff 100644 --- a/daprdocs/content/en/operations/observability/tracing/tracing-overview.md +++ b/daprdocs/content/en/operations/observability/tracing/tracing-overview.md @@ -112,33 +112,106 @@ If you decide to generate trace headers yourself, there are three ways this can ### Baggage Support -Dapr supports propagating W3C Baggage alongside trace context. For details on the W3C Baggage specification, format, and how it works, see the [W3C Trace Context Overview]({{< ref "w3c-tracing-overview.md#w3c-baggage" >}}). +Dapr supports two distinct mechanisms for propagating W3C Baggage alongside trace context: + +1. **Context Baggage (OpenTelemetry)** + - Follows OpenTelemetry conventions with decoded values + - Used when working with OpenTelemetry context propagation + - Values are stored and transmitted in their original, unencoded form + - Recommended for OpenTelemetry integrations and when working with application context + +2. **Header/Metadata Baggage** + - You must URL encode special characters (for example, `%20` for spaces, `%2F` for slashes) when setting header/metadata baggage + - Values remain percent-encoded in transport as required by the W3C Baggage spec + - Values stay encoded when inspecting raw headers/metadata + - Only OpenTelemetry APIs will decode the values + - Example: Use `serverNode=DF%2028` (not `serverNode=DF 28`) when setting header baggage + +For security purposes, context baggage and header baggage are strictly separated and never merged between domains. This ensures that baggage values maintain their intended format and security properties. #### Using Baggage with Dapr -You can add baggage from your application by setting the appropriate HTTP header or gRPC metadata when calling Dapr. Dapr automatically propagates this baggage across subsequent service calls. +You can propagate baggage using either mechanism, depending on your use case. -**Setting Baggage** +1. **In your application code**: Set the baggage in the context before making a Dapr API call +2. **When calling Dapr**: Pass the context to any Dapr API call +3. **Inside Dapr**: The Dapr runtime automatically picks up the baggage +4. **Propagation**: Dapr automatically propagates the baggage to downstream services, maintaining the appropriate encoding for each mechanism -Set the `baggage` header (HTTP) or metadata (gRPC) in your requests to Dapr: -- For HTTP: Add the `baggage` header to your request. -- For gRPC: Add `baggage` key-value pairs to the outgoing context metadata. +Here are examples of both mechanisms: -*HTTP Example:* -```http -POST /v1.0/invoke/serviceB/method/hello HTTP/1.1 -Content-Type: application/json -baggage: key1=value1,key2=value2 -{ - "message": "Hello service B" +**1. Using Context Baggage (OpenTelemetry)** + +When using OpenTelemetry SDK: +```go +import otelbaggage "go.opentelemetry.io/otel/baggage" + +// Set baggage in context (values remain unencoded) +baggage, err = otelbaggage.Parse("userId=cassie,serverNode=DF%2028") +... +ctx := otelbaggage.ContextWithBaggage(t.Context(), baggage) +) + +// Pass this context to any Dapr API call +client.InvokeMethodWithContent(ctx, "serviceB", ...) +``` + +**2. Using Header/Metadata Baggage** + +When using gRPC metadata: +```go +import "google.golang.org/grpc/metadata" + +// Set URL-encoded baggage in context +ctx = metadata.AppendToOutgoingContext(ctx, + "baggage", "userId=cassie,serverNode=DF%2028", +) + +// Pass this context to any Dapr API call +client.InvokeMethodWithContent(ctx, "serviceB", ...) +``` + +**3. Receiving Baggage in Target Service** + +In your target service, you can access the propagated baggage: + +```go +// Using OpenTelemetry (values are automatically decoded) +import "go.opentelemetry.io/otel/baggage" + +bag := baggage.FromContext(ctx) +userID := bag.Member("userId").Value() // "cassie" +``` + +```go +// Using raw gRPC metadata (values remain percent-encoded) +import "google.golang.org/grpc/metadata" + +md, _ := metadata.FromIncomingContext(ctx) +if values := md.Get("baggage"); len(values) > 0 { + // values[0] contains the percent-encoded string you set: "userId=cassie,serverNode=DF%2028" + // Remember: You must URL encode special characters when setting baggage + + // To decode the values, use OpenTelemetry APIs: + bag, err := baggage.Parse(values[0]) + ... + userID := bag.Member("userId").Value() // "cassie" } ``` -*gRPC Example (Go):* +*HTTP Example (URL-encoded):* +```bash +curl -X POST http://localhost:3500/v1.0/invoke/serviceB/method/hello \ + -H "Content-Type: application/json" \ + -H "baggage: userID=cassie,serverNode=DF%2028" \ + -d '{"message": "Hello service B"}' +``` + +*gRPC Example (URL-encoded):* ```go ctx = grpcMetadata.AppendToOutgoingContext(ctx, - "baggage", "key1=value1,key2=value2", - ) + "baggage", "userID=cassie,serverNode=DF%2028", +) ``` #### Common Use Cases @@ -146,6 +219,19 @@ ctx = grpcMetadata.AppendToOutgoingContext(ctx, Baggage is useful for: - Propagating user IDs or correlation IDs across services - Passing tenant or environment information +- Maintaining consistent context across service boundaries +- Debugging and troubleshooting distributed transactions + +#### Best Practices + +1. **Choose the Right Mechanism** + - Use Context Baggage when working with OpenTelemetry + - Use Header Baggage when working directly with HTTP/gRPC + +2. **Security Considerations** + - Be mindful that baggage is propagated across service boundaries + - Don't include sensitive information in baggage + - Remember that context and header baggage remain separate ## Related Links diff --git a/daprdocs/content/en/operations/observability/tracing/w3c-tracing-overview.md b/daprdocs/content/en/operations/observability/tracing/w3c-tracing-overview.md index 4f08b81c5..760c027c7 100644 --- a/daprdocs/content/en/operations/observability/tracing/w3c-tracing-overview.md +++ b/daprdocs/content/en/operations/observability/tracing/w3c-tracing-overview.md @@ -73,17 +73,35 @@ tracestate: congo=t61rcWkgMzE [Learn more about the tracestate fields details](https://www.w3.org/TR/trace-context/#tracestate-header). -**Baggage header** +**Baggage Support** -Dapr supports [W3C Baggage](https://www.w3.org/TR/baggage/) for propagating key-value pairs alongside trace context. The baggage header allows you to attach metadata to trace context that needs to be propagated throughout your distributed system, such as user IDs, tenant information, or environment details. +Dapr supports [W3C Baggage](https://www.w3.org/TR/baggage/) for propagating key-value pairs alongside trace context through two distinct mechanisms: -The header value follows the W3C Baggage specification format: +1. **Context Baggage (OpenTelemetry)** + - Follows OpenTelemetry conventions with decoded values + - Used when propagating baggage through application context + - Values are stored in their original, unencoded form + - Example of how it would be printed with OpenTelemetry APIs: + ``` + baggage: userId=cassie,serverNode=DF 28,isVIP=true + ``` -``` -baggage: userId=alice,serverNode=DF%2028,isVIP=true -``` +2. **HTTP Header Baggage** + - You must URL encode special characters (for example, `%20` for spaces, `%2F` for slashes) when setting header baggage + - Values remain percent-encoded in HTTP headers as required by the W3C Baggage spec + - Values stay encoded when inspecting raw headers in Dapr + - Only OpenTelemetry APIs like `otelbaggage.Parse()` will decode the values + - Example (note the URL-encoded space `%20`): + ```bash + curl -X POST http://localhost:3500/v1.0/invoke/serviceB/method/hello \ + -H "Content-Type: application/json" \ + -H "baggage: userId=cassie,serverNode=DF%2028,isVIP=true" \ + -d '{"message": "Hello service B"}' + ``` -Multiple baggage headers are supported and will be combined according to the W3C specification. Dapr automatically propagates baggage headers across service calls. +For security purposes, context baggage and header baggage are strictly separated and never merged between domains. This ensures that baggage values maintain their intended format and security properties in each domain. + +Multiple baggage headers are supported and will be combined according to the W3C specification. Dapr automatically propagates baggage across service calls while maintaining the appropriate encoding for each domain. {{% /codetab %}} @@ -93,17 +111,30 @@ Multiple baggage headers are supported and will be combined according to the W3C In the gRPC API calls, trace context is passed through `grpc-trace-bin` header. -**Baggage metadata** +**Baggage Support** -Dapr supports [W3C Baggage](https://www.w3.org/TR/baggage/) for propagating key-value pairs alongside trace context. The baggage metadata allows you to attach metadata to trace context that needs to be propagated throughout your distributed system, such as user IDs, tenant information, or environment details. +Dapr supports [W3C Baggage](https://www.w3.org/TR/baggage/) for propagating key-value pairs alongside trace context through two distinct mechanisms: -The metadata value follows the W3C Baggage specification format: +1. **Context Baggage (OpenTelemetry)** + - Follows OpenTelemetry conventions with decoded values + - Used when propagating baggage through gRPC context + - Values are stored in their original, unencoded form + - Example of how it would be printed with OpenTelemetry APIs: + ``` + baggage: userId=cassie,serverNode=DF 28,isVIP=true + ``` -``` -baggage: userId=alice,serverNode=DF%2028,isVIP=true -``` +2. **gRPC Metadata Baggage** + - You must URL encode special characters (for example, `%20` for spaces, `%2F` for slashes) when setting metadata baggage + - Values remain percent-encoded in gRPC metadata + - Example (note the URL-encoded space `%20`): + ``` + baggage: userId=cassie,serverNode=DF%2028,isVIP=true + ``` -Multiple baggage metadata entries are supported and will be combined according to the W3C specification. Dapr automatically propagates baggage metadata across service calls. +For security purposes, context baggage and metadata baggage are strictly separated and never merged between domains. This ensures that baggage values maintain their intended format and security properties in each domain. + +Multiple baggage metadata entries are supported and will be combined according to the W3C specification. Dapr automatically propagates baggage across service calls while maintaining the appropriate encoding for each domain. {{% /codetab %}} From 340f302f410b29ec430b4147c963436fb51d72fa Mon Sep 17 00:00:00 2001 From: Prashanth Nagaraj Date: Thu, 26 Jun 2025 19:54:21 +0530 Subject: [PATCH 03/12] docs: add replicateSubscriptionState field to Pulsar pubsub component - Add replicateSubscriptionState metadata field for geo-replicated clusters - Enable subscription state replication across Pulsar clusters - Includes field description, default value, and examples Signed-off-by: Prashanth Nagaraj --- .../components-reference/supported-pubsub/setup-pulsar.md | 1 + 1 file changed, 1 insertion(+) diff --git a/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md b/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md index 39b36df6e..46b469134 100644 --- a/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md +++ b/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md @@ -94,6 +94,7 @@ The above example uses secrets as plain strings. It is recommended to use a [sec | subscribeInitialPosition | N | Subscription position is the initial position which the cursor is set when start consuming. Default: `"latest"` | `"latest"`, `"earliest"` | | partitionKey | N | Sets the key of the message for routing policy. Default: `""` | | | `maxConcurrentHandlers` | N | Defines the maximum number of concurrent message handlers. Default: `100` | `10` +| replicateSubscriptionState | N | Enable replication of subscription state across geo-replicated Pulsar clusters. Default: `"false"` | `"true"`, `"false"` | ### Authenticate using Token From fcb5789555bc2dfa2ad6dbe9dce49cf16bcf2562 Mon Sep 17 00:00:00 2001 From: Prashanth Nagaraj Date: Thu, 26 Jun 2025 20:15:35 +0530 Subject: [PATCH 04/12] Sign Signed-off-by: Prashanth Nagaraj --- .../components-reference/supported-pubsub/setup-pulsar.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md b/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md index 46b469134..46547a84f 100644 --- a/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md +++ b/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md @@ -93,8 +93,8 @@ The above example uses secrets as plain strings. It is recommended to use a [sec | subscribeType | N | Pulsar supports four kinds of [subscription types](https://pulsar.apache.org/docs/3.0.x/concepts-messaging/#subscription-types). Default: `"shared"` | `"shared"`, `"exclusive"`, `"failover"`, `"key_shared"`| | subscribeInitialPosition | N | Subscription position is the initial position which the cursor is set when start consuming. Default: `"latest"` | `"latest"`, `"earliest"` | | partitionKey | N | Sets the key of the message for routing policy. Default: `""` | | -| `maxConcurrentHandlers` | N | Defines the maximum number of concurrent message handlers. Default: `100` | `10` | replicateSubscriptionState | N | Enable replication of subscription state across geo-replicated Pulsar clusters. Default: `"false"` | `"true"`, `"false"` | +| `maxConcurrentHandlers` | N | Defines the maximum number of concurrent message handlers. Default: `100` | `10` ### Authenticate using Token From 5ae6b1c852460cadb9cc7a5ced7313ad16128459 Mon Sep 17 00:00:00 2001 From: Prashanth Nagaraj Date: Thu, 26 Jun 2025 20:16:46 +0530 Subject: [PATCH 05/12] Sign Signed-off-by: Prashanth Nagaraj --- .../components-reference/supported-pubsub/setup-pulsar.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md b/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md index 46547a84f..46b469134 100644 --- a/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md +++ b/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-pulsar.md @@ -93,8 +93,8 @@ The above example uses secrets as plain strings. It is recommended to use a [sec | subscribeType | N | Pulsar supports four kinds of [subscription types](https://pulsar.apache.org/docs/3.0.x/concepts-messaging/#subscription-types). Default: `"shared"` | `"shared"`, `"exclusive"`, `"failover"`, `"key_shared"`| | subscribeInitialPosition | N | Subscription position is the initial position which the cursor is set when start consuming. Default: `"latest"` | `"latest"`, `"earliest"` | | partitionKey | N | Sets the key of the message for routing policy. Default: `""` | | -| replicateSubscriptionState | N | Enable replication of subscription state across geo-replicated Pulsar clusters. Default: `"false"` | `"true"`, `"false"` | | `maxConcurrentHandlers` | N | Defines the maximum number of concurrent message handlers. Default: `100` | `10` +| replicateSubscriptionState | N | Enable replication of subscription state across geo-replicated Pulsar clusters. Default: `"false"` | `"true"`, `"false"` | ### Authenticate using Token From 0288a24a00317db41754dd2906e4657c05714d7b Mon Sep 17 00:00:00 2001 From: Marc Duiker Date: Wed, 20 Aug 2025 17:35:34 +0200 Subject: [PATCH 06/12] Update SDK docs (#4789) Signed-off-by: Marc Duiker --- sdkdocs/dotnet | 2 +- sdkdocs/go | 2 +- sdkdocs/java | 2 +- sdkdocs/js | 2 +- sdkdocs/python | 2 +- sdkdocs/rust | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/sdkdocs/dotnet b/sdkdocs/dotnet index d15a02340..5afb5a210 160000 --- a/sdkdocs/dotnet +++ b/sdkdocs/dotnet @@ -1 +1 @@ -Subproject commit d15a0234049c6ae0fd9d4e23af1fc0650c0c8a8a +Subproject commit 5afb5a210b2ec857f43afdfe5deba365a6eb4fb5 diff --git a/sdkdocs/go b/sdkdocs/go index f4ba09fae..682f93206 160000 --- a/sdkdocs/go +++ b/sdkdocs/go @@ -1 +1 @@ -Subproject commit f4ba09fae50c634cad11050ff05485cb9ef65bf7 +Subproject commit 682f93206d40ab83589fccb58afe8f409b7d38c1 diff --git a/sdkdocs/java b/sdkdocs/java index f73d57eb2..afa2feeac 160000 --- a/sdkdocs/java +++ b/sdkdocs/java @@ -1 +1 @@ -Subproject commit f73d57eb27028bf41e9ab1fde3b50586ab5de919 +Subproject commit afa2feeacef73e5598fab88c605d61f5998efa86 diff --git a/sdkdocs/js b/sdkdocs/js index 26b3527e6..26e8be893 160000 --- a/sdkdocs/js +++ b/sdkdocs/js @@ -1 +1 @@ -Subproject commit 26b3527e688751a2ffef812bec95790535218506 +Subproject commit 26e8be8931aed2404e0e382b6c61264d1b64f0de diff --git a/sdkdocs/python b/sdkdocs/python index b2f2988f3..5882d5296 160000 --- a/sdkdocs/python +++ b/sdkdocs/python @@ -1 +1 @@ -Subproject commit b2f2988f397a34159e67fb30c6a0e2f414a60350 +Subproject commit 5882d52961cee7cb50d07c9a47c902f317dff396 diff --git a/sdkdocs/rust b/sdkdocs/rust index 407447816..4475ed57c 160000 --- a/sdkdocs/rust +++ b/sdkdocs/rust @@ -1 +1 @@ -Subproject commit 407447816c2107860af98897802c4491306e95d0 +Subproject commit 4475ed57cfdcb912a828f43cace8c0bea3eb99e1 From dd60552f4a1a7a9afea778c3c27c702c87359221 Mon Sep 17 00:00:00 2001 From: Marc Duiker Date: Wed, 20 Aug 2025 20:50:35 +0200 Subject: [PATCH 07/12] Ensure minification of output (#4793) Signed-off-by: Marc Duiker --- .github/workflows/website-v1-16.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/website-v1-16.yml b/.github/workflows/website-v1-16.yml index 09bfab910..3748ff58c 100644 --- a/.github/workflows/website-v1-16.yml +++ b/.github/workflows/website-v1-16.yml @@ -39,7 +39,7 @@ jobs: - name: Build Hugo Website run: | git config --global --add safe.directory /github/workspace - hugo + hugo --minify - name: Deploy Website id: builddeploy uses: Azure/static-web-apps-deploy@v1 From 2aafe49e692ffc402ac0283e74d136bb46c3459f Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 20 Aug 2025 16:08:12 -0500 Subject: [PATCH 08/12] style: fix yaml syntax on wasm (#4794) Signed-off-by: Samantha Coyle Co-authored-by: Mark Fussell --- .../supported-middleware/middleware-wasm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/daprdocs/content/en/reference/components-reference/supported-middleware/middleware-wasm.md b/daprdocs/content/en/reference/components-reference/supported-middleware/middleware-wasm.md index c651ba965..86c2e09d7 100644 --- a/daprdocs/content/en/reference/components-reference/supported-middleware/middleware-wasm.md +++ b/daprdocs/content/en/reference/components-reference/supported-middleware/middleware-wasm.md @@ -39,7 +39,7 @@ spec: metadata: - name: url value: "file://router.wasm" - - guestConfig + - name: guestConfig value: {"environment":"production"} ``` From aa764cf8c726379c7691de65b9ffb021e9f58dce Mon Sep 17 00:00:00 2001 From: Mike Nguyen Date: Thu, 21 Aug 2025 22:10:48 +0100 Subject: [PATCH 09/12] chore: update sdk docs (#4814) Signed-off-by: Mike Nguyen --- sdkdocs/dotnet | 2 +- sdkdocs/go | 2 +- sdkdocs/java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sdkdocs/dotnet b/sdkdocs/dotnet index 5afb5a210..241a646a2 160000 --- a/sdkdocs/dotnet +++ b/sdkdocs/dotnet @@ -1 +1 @@ -Subproject commit 5afb5a210b2ec857f43afdfe5deba365a6eb4fb5 +Subproject commit 241a646a2037d4e91d3192dcbaf1f128b15de185 diff --git a/sdkdocs/go b/sdkdocs/go index 682f93206..6dd434913 160000 --- a/sdkdocs/go +++ b/sdkdocs/go @@ -1 +1 @@ -Subproject commit 682f93206d40ab83589fccb58afe8f409b7d38c1 +Subproject commit 6dd434913b6fb41f6ede006c64c01a35a02c458f diff --git a/sdkdocs/java b/sdkdocs/java index afa2feeac..3bb91e505 160000 --- a/sdkdocs/java +++ b/sdkdocs/java @@ -1 +1 @@ -Subproject commit afa2feeacef73e5598fab88c605d61f5998efa86 +Subproject commit 3bb91e505e34ef3b7bc3325be853de8d0491c431 From 4d4c31e0435f80c8aa47f3bb0e69d0221b3b7738 Mon Sep 17 00:00:00 2001 From: Marc Duiker Date: Fri, 22 Aug 2025 15:08:43 +0200 Subject: [PATCH 10/12] Add tabpane shortcode Signed-off-by: Marc Duiker --- .../operations/observability/tracing/tracing-overview.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/daprdocs/content/en/operations/observability/tracing/tracing-overview.md b/daprdocs/content/en/operations/observability/tracing/tracing-overview.md index fb3276924..59caaf7f5 100644 --- a/daprdocs/content/en/operations/observability/tracing/tracing-overview.md +++ b/daprdocs/content/en/operations/observability/tracing/tracing-overview.md @@ -144,6 +144,11 @@ Here are examples of both mechanisms: **1. Using Context Baggage (OpenTelemetry)** When using OpenTelemetry SDK: + +{{< tabpane text=true >}} + +{{% tab header="Go" %}} + ```go import otelbaggage "go.opentelemetry.io/otel/baggage" @@ -215,6 +220,10 @@ ctx = grpcMetadata.AppendToOutgoingContext(ctx, ) ``` +{{% /tab %}} + +{{< /tabpane >}} + #### Common Use Cases Baggage is useful for: From aa9b4ed68d02ab42bc5433d2cbab879df80eeaf2 Mon Sep 17 00:00:00 2001 From: Josh van Leeuwen Date: Fri, 22 Aug 2025 18:22:58 -0300 Subject: [PATCH 11/12] [1.16] RabbitMQ `publishMessagePropertiesToMetadata` (#4820) Adds documentation for the new `publishMessagePropertiesToMetadata` rabbitmq pubsub component field. Signed-off-by: joshvanl --- .../supported-pubsub/setup-rabbitmq.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-rabbitmq.md b/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-rabbitmq.md index 0f272f910..c3b4e69a8 100644 --- a/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-rabbitmq.md +++ b/daprdocs/content/en/reference/components-reference/supported-pubsub/setup-rabbitmq.md @@ -66,6 +66,8 @@ spec: value: {podName} - name: heartBeat value: 10s + - name: publishMessagePropertiesToMetadata + value: "true" ``` {{% alert title="Warning" color="warning" %}} @@ -102,7 +104,7 @@ The above example uses secrets as plain strings. It is recommended to use a secr | clientKey | Required for using TLS | TLS client key in PEM format. Must be used with `clientCert`. Can be `secretKeyRef` to use a secret reference. | `"-----BEGIN RSA PRIVATE KEY-----\n\n-----END RSA PRIVATE KEY-----"` | clientName | N | This RabbitMQ [client-provided connection name](https://www.rabbitmq.com/connections.html#client-provided-names) is a custom identifier. If set, the identifier is mentioned in RabbitMQ server log entries and management UI. Can be set to {uuid}, {podName}, or {appID}, which is replaced by Dapr runtime to the real value. | `"app1"`, `{uuid}`, `{podName}`, `{appID}` | heartBeat | N | Defines the heartbeat interval with the server, detecting the aliveness of the peer TCP connection with the RabbitMQ server. Defaults to `10s` . | `"10s"` - +| `publishMessagePropertiesToMetadata` | N | Whether to publish AMQP message properties (headers, message ID, etc.) to the metadata. | "true", "false" ## Communication using TLS @@ -475,6 +477,11 @@ spec: singleActiveConsumer: "true" ``` +## Publishing message properties to metadata + +To enable [message properties](https://www.rabbitmq.com/docs/publishers#message-properties) being published in the metadata, set the `publishMessagePropertiesToMetadata` field to `"true"` in the component spec. +This will include properties such as message ID, timestamp, and headers in the metadata of the published message. + ## Related links - [Basic schema for a Dapr component]({{% ref component-schema %}}) in the Related links section From 766d8da01c3f77f8ae045bb7faf0f8c002abe880 Mon Sep 17 00:00:00 2001 From: Fraser Date: Tue, 26 Aug 2025 12:34:01 -0400 Subject: [PATCH 12/12] Fraser/add reo dev (#4822) * Adding Reo.dev js code to the footer. Signed-off-by: FraserMarlow * Updating the Reo instance. Signed-off-by: FraserMarlow --------- Signed-off-by: FraserMarlow --- daprdocs/layouts/_partials/hooks/body-end.html | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/daprdocs/layouts/_partials/hooks/body-end.html b/daprdocs/layouts/_partials/hooks/body-end.html index abfb0d51c..ee0ebc1f1 100644 --- a/daprdocs/layouts/_partials/hooks/body-end.html +++ b/daprdocs/layouts/_partials/hooks/body-end.html @@ -10,4 +10,11 @@ indexName: 'daprdocs', }); -{{ end }} + + + + + +{{ end }} \ No newline at end of file