Skip to content

Commit db837ce

Browse files
traskCopilot
andcommitted
Address Copilot review comment: regenerate Python coverage
Copilot comment: Changing this request to `/users/456` creates additional signal names for route-less servers, but their committed coverage was not regenerated. The ASGI snapshot currently contains only `GET /users/123` and its receive/send child findings (`scenarios/http/python/asgi/opentelemetry-asgi/server/data.json:153-179`), and WSGI likewise only contains `GET /users/123` (`scenarios/http/python/wsgi/opentelemetry-wsgi/server/data.json:86-94`). The Python scenario CI reruns every package and rejects coverage diffs, so these snapshots will change when the query request is emitted as `/users/456`. Please regenerate and commit the affected existing server `data.json` files. Analysis: ASGI and WSGI omit `http.route`, so their span names use each concrete request path. The distinct query path adds `GET /users/456` findings while preserving the findings for the query-free `/users/123` request. Regenerating both scenarios records the additional server and ASGI child-span findings. Upsides: The committed coverage now matches the shared contract for every route-less server scenario. Python scenario CI no longer finds stale snapshots. Downsides: The coverage files contain more findings because each concrete user path remains a separate unbounded-cardinality span name until those instrumentations emit `http.route`. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 70d4161 commit db837ce

2 files changed

Lines changed: 38 additions & 0 deletions

File tree

  • scenarios/http/python

‎scenarios/http/python/asgi/opentelemetry-asgi/server/data.json‎

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,34 @@
178178
"attribute_key": "asgi.event.type"
179179
}
180180
},
181+
{
182+
"id": "http_route_not_present",
183+
"message": "Server span 'GET /users/456' uses target '/users/456' but lacks 'http.route', so the matched route and target cardinality cannot be verified.",
184+
"signal_type": "span",
185+
"signal_name": "GET /users/456",
186+
"context": {
187+
"kind": "server",
188+
"target": "/users/456"
189+
}
190+
},
191+
{
192+
"id": "missing_attribute",
193+
"message": "Attribute 'asgi.event.type' does not exist in the registry.",
194+
"signal_type": "span",
195+
"signal_name": "GET /users/456 http receive",
196+
"context": {
197+
"attribute_key": "asgi.event.type"
198+
}
199+
},
200+
{
201+
"id": "missing_attribute",
202+
"message": "Attribute 'asgi.event.type' does not exist in the registry.",
203+
"signal_type": "span",
204+
"signal_name": "GET /users/456 http send",
205+
"context": {
206+
"attribute_key": "asgi.event.type"
207+
}
208+
},
181209
{
182210
"id": "http_route_not_present",
183211
"message": "Server span 'POST /items' uses target '/items' but lacks 'http.route', so the matched route and target cardinality cannot be verified.",

‎scenarios/http/python/wsgi/opentelemetry-wsgi/server/data.json‎

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,16 @@
9393
"target": "/users/123"
9494
}
9595
},
96+
{
97+
"id": "http_route_not_present",
98+
"message": "Server span 'GET /users/456' uses target '/users/456' but lacks 'http.route', so the matched route and target cardinality cannot be verified.",
99+
"signal_type": "span",
100+
"signal_name": "GET /users/456",
101+
"context": {
102+
"kind": "server",
103+
"target": "/users/456"
104+
}
105+
},
96106
{
97107
"id": "http_route_not_present",
98108
"message": "Server span 'POST /items' uses target '/items' but lacks 'http.route', so the matched route and target cardinality cannot be verified.",

0 commit comments

Comments
 (0)