From 83099bc13a182e1b36d9455ef89cd4c4450efb32 Mon Sep 17 00:00:00 2001 From: taoyifan Date: Mon, 1 Sep 2025 14:17:41 +0800 Subject: [PATCH 1/2] Change global trace version to 0. Change-Id: I7bfc3f6e0e7562e3aa0b9b573f0bbb7655b7a054 --- cozeloop/internal/consts/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cozeloop/internal/consts/__init__.py b/cozeloop/internal/consts/__init__.py index 44ea376..2fa0c50 100644 --- a/cozeloop/internal/consts/__init__.py +++ b/cozeloop/internal/consts/__init__.py @@ -30,7 +30,7 @@ STATUS_CODE_ERROR_DEFAULT = -1 -GLOBAL_TRACE_VERSION = 1 +GLOBAL_TRACE_VERSION = 0 # System reserved tag fields. From 02de1ea8661c092538551a63cb925ea123d3e3e9 Mon Sep 17 00:00:00 2001 From: taoyifan Date: Tue, 2 Sep 2025 19:34:46 +0800 Subject: [PATCH 2/2] Add baggage kv check. Change-Id: I011f93b7ba63f4bae45e0861e408263d23a6bf6f --- cozeloop/internal/trace/span.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cozeloop/internal/trace/span.py b/cozeloop/internal/trace/span.py index 6189a5a..aa17697 100644 --- a/cozeloop/internal/trace/span.py +++ b/cozeloop/internal/trace/span.py @@ -559,7 +559,7 @@ def to_header(self) -> Dict[str, str]: def to_header_baggage(self) -> str: if not self.baggage: return "" - return ",".join(f"{k}={v}" for k, v in self.baggage().items()) + return ",".join(f"{k}={v}" for k, v in self.baggage().items() if k and v) def to_header_parent(self) -> str: return f"{GLOBAL_TRACE_VERSION:02x}-{self.trace_id}-{self.span_id}-{self.flags:02x}" @@ -631,6 +631,9 @@ def parse_comma_separated_map(src: str, cover: bool) -> Dict[str, str]: key = urllib.parse.unquote(kv[0]) value = urllib.parse.unquote(kv[1]) + if not key or not value: + continue + if key not in baggage or cover: baggage[key] = value