@@ -104,50 +104,47 @@ def __getattribute__(self, name):
104
104
def _get_parameters_for_new_span_directly_from_context (ctx : core .ExecutionContext ) -> Dict [str , Any ]:
105
105
span_kwargs = {}
106
106
for parameter_name in {"span_type" , "resource" , "service" , "child_of" , "activate" }:
107
- parameter_value = ctx .get_local_item (parameter_name )
107
+ parameter_value = ctx .get_item (parameter_name )
108
108
if parameter_value :
109
109
span_kwargs [parameter_name ] = parameter_value
110
110
return span_kwargs
111
111
112
112
113
113
def _start_span (ctx : core .ExecutionContext , call_trace : bool = True , ** kwargs ) -> "Span" :
114
- activate_distributed_headers = ctx .get_local_item ("activate_distributed_headers" )
114
+ activate_distributed_headers = ctx .get_item ("activate_distributed_headers" )
115
115
span_kwargs = _get_parameters_for_new_span_directly_from_context (ctx )
116
- call_trace = ctx .get_local_item ("call_trace" , call_trace )
116
+ call_trace = ctx .get_item ("call_trace" , call_trace )
117
117
# Look for the tracer in the context, or fallback to the global tracer
118
- tracer = (
119
- ctx .get_local_item ("tracer" )
120
- or (ctx .get_local_item ("middleware" ) or ctx .get_local_item ("pin" ) or ddtrace ).tracer
121
- )
122
- integration_config = ctx .get_local_item ("integration_config" )
118
+ tracer = ctx .get_item ("tracer" ) or (ctx .get_item ("middleware" ) or ctx .get_item ("pin" ) or ddtrace ).tracer
119
+ integration_config = ctx .get_item ("integration_config" )
123
120
if integration_config and activate_distributed_headers :
124
121
trace_utils .activate_distributed_headers (
125
122
tracer ,
126
123
int_config = integration_config ,
127
- request_headers = ctx .get_local_item ("distributed_headers" ),
128
- override = ctx .get_local_item ("distributed_headers_config_override" ),
124
+ request_headers = ctx .get_item ("distributed_headers" ),
125
+ override = ctx .get_item ("distributed_headers_config_override" ),
129
126
)
130
- distributed_context = ctx .get_local_item ("distributed_context" )
127
+ distributed_context = ctx .get_item ("distributed_context" )
131
128
if distributed_context and not call_trace :
132
129
span_kwargs ["child_of" ] = distributed_context
133
130
134
131
if config ._inferred_proxy_services_enabled :
135
132
# dispatch event for checking headers and possibly making an inferred proxy span
136
133
core .dispatch ("inferred_proxy.start" , (ctx , tracer , span_kwargs , call_trace , integration_config ))
137
134
# re-get span_kwargs in case an inferred span was created and we have a new span_kwargs.child_of field
138
- span_kwargs = ctx .get_local_item ("span_kwargs" , span_kwargs )
135
+ span_kwargs = ctx .get_item ("span_kwargs" , span_kwargs )
139
136
140
137
span_kwargs .update (kwargs )
141
- span_name = ctx .get_local_item ("span_name" )
138
+ span_name = ctx .get_item ("span_name" )
142
139
if not span_name :
143
140
raise ValueError ("span_name must be set in the context before starting a span" )
144
141
span = (tracer .trace if call_trace else tracer .start_span )(span_name , ** span_kwargs )
145
142
146
- tags : Optional [Dict [str , str ]] = ctx .get_local_item ("tags" )
143
+ tags : Optional [Dict [str , str ]] = ctx .get_item ("tags" )
147
144
if tags :
148
145
for tk , tv in tags .items ():
149
146
span .set_tag (tk , tv )
150
- if ctx .get_local_item ("measured" ):
147
+ if ctx .get_item ("measured" ):
151
148
# PERF: avoid setting via Span.set_tag
152
149
span .set_metric (_SPAN_MEASURED_KEY , 1 )
153
150
@@ -175,7 +172,7 @@ def _finish_span(
175
172
exc_type , exc_value , exc_traceback = exc_info
176
173
if exc_type and exc_value and exc_traceback :
177
174
span .set_exc_info (exc_type , exc_value , exc_traceback )
178
- elif ctx .get_local_item ("should_set_traceback" , False ):
175
+ elif ctx .get_item ("should_set_traceback" , False ):
179
176
span .set_traceback ()
180
177
span .finish ()
181
178
@@ -197,7 +194,7 @@ def _on_web_framework_start_request(ctx, int_config):
197
194
def _on_web_framework_finish_request (
198
195
span , int_config , method , url , status_code , query , req_headers , res_headers , route , finish , ** kwargs
199
196
):
200
- if core .get_local_item ("set_resource" , default = False ) is True and status_code is not None :
197
+ if core .get_item ("set_resource" , default = False ) is True and status_code is not None :
201
198
try :
202
199
status_code = int (status_code )
203
200
except ValueError :
@@ -216,7 +213,7 @@ def _on_web_framework_finish_request(
216
213
** kwargs ,
217
214
)
218
215
_set_inferred_proxy_tags (span , status_code )
219
- for tk , tv in core .get_local_item ("additional_tags" , default = dict ()).items ():
216
+ for tk , tv in core .get_item ("additional_tags" , default = dict ()).items ():
220
217
span .set_tag_str (tk , tv )
221
218
222
219
if finish :
@@ -294,18 +291,18 @@ def _on_traced_request_context_started_flask(ctx):
294
291
295
292
296
293
def _maybe_start_http_response_span (ctx : core .ExecutionContext ) -> None :
297
- request_span = ctx .get_local_item ("request_span" )
298
- middleware = ctx .get_local_item ("middleware" )
299
- status_code , status_msg = ctx .get_local_item ("status" ).split (" " , 1 )
294
+ request_span = ctx .get_item ("request_span" )
295
+ middleware = ctx .get_item ("middleware" )
296
+ status_code , status_msg = ctx .get_item ("status" ).split (" " , 1 )
300
297
trace_utils .set_http_meta (
301
- request_span , middleware ._config , status_code = status_code , response_headers = ctx .get_local_item ("environ" )
298
+ request_span , middleware ._config , status_code = status_code , response_headers = ctx .get_item ("environ" )
302
299
)
303
- if ctx .get_local_item ("start_span" , False ):
300
+ if ctx .get_item ("start_span" , False ):
304
301
request_span .set_tag_str (http .STATUS_MSG , status_msg )
305
302
_start_span (
306
303
ctx ,
307
304
call_trace = False ,
308
- child_of = ctx .get_local_item ("parent_call" ),
305
+ child_of = ctx .get_item ("parent_call" ),
309
306
activate = True ,
310
307
)
311
308
@@ -522,7 +519,7 @@ def _on_request_span_modifier_post(ctx, flask_config, request, req_body):
522
519
523
520
524
521
def _on_traced_get_response_pre (_ , ctx : core .ExecutionContext , request , before_request_tags ):
525
- before_request_tags (ctx .get_local_item ("pin" ), ctx .span , request )
522
+ before_request_tags (ctx .get_item ("pin" ), ctx .span , request )
526
523
ctx .span ._metrics [_SPAN_MEASURED_KEY ] = 1
527
524
528
525
@@ -567,7 +564,7 @@ def _on_django_cache(
567
564
exc_info : Tuple [Optional [type ], Optional [BaseException ], Optional [TracebackType ]],
568
565
) -> None :
569
566
try :
570
- rowcount = ctx .get_local_item ("rowcount" )
567
+ rowcount = ctx .get_item ("rowcount" )
571
568
if rowcount is not None :
572
569
ctx .span .set_metric (db .ROWCOUNT , rowcount )
573
570
finally :
@@ -610,8 +607,8 @@ def _on_django_after_request_headers_post(
610
607
response_headers = response_headers ,
611
608
request_cookies = request .COOKIES ,
612
609
request_path_params = request .resolver_match .kwargs if request .resolver_match is not None else None ,
613
- peer_ip = core .get_local_item ("http.request.remote_ip" ),
614
- headers_are_case_sensitive = bool (core .get_local_item ("http.request.headers_case_sensitive" )),
610
+ peer_ip = core .get_item ("http.request.remote_ip" ),
611
+ headers_are_case_sensitive = bool (core .get_item ("http.request.headers_case_sensitive" )),
615
612
response_cookies = response_cookies ,
616
613
)
617
614
@@ -756,7 +753,7 @@ def _on_botocore_bedrock_process_response_converse(
756
753
ctx : core .ExecutionContext ,
757
754
result : List [Dict [str , Any ]],
758
755
):
759
- ctx .get_local_item ("bedrock_integration" ).llmobs_set_tags (
756
+ ctx .get_item ("bedrock_integration" ).llmobs_set_tags (
760
757
ctx .span ,
761
758
args = [ctx ],
762
759
kwargs = {},
@@ -770,8 +767,8 @@ def _on_botocore_bedrock_process_response(
770
767
formatted_response : Dict [str , Any ],
771
768
) -> None :
772
769
with ctx .span as span :
773
- model_name = ctx .get_local_item ("model_name" )
774
- integration = ctx .get_local_item ("bedrock_integration" )
770
+ model_name = ctx .get_item ("model_name" )
771
+ integration = ctx .get_item ("bedrock_integration" )
775
772
if "embed" in model_name :
776
773
return
777
774
integration .llmobs_set_tags (span , args = [ctx ], kwargs = {}, response = formatted_response )
@@ -914,7 +911,7 @@ def _on_azure_servicebus_send_message_modifier(ctx, azure_servicebus_config, ent
914
911
915
912
916
913
def _on_router_match (route ):
917
- req_span = core .get_local_item ("req_span" )
914
+ req_span = core .get_item ("req_span" )
918
915
core .set_item ("set_resource" , False )
919
916
req_span .resource = "{} {}" .format (
920
917
route .method ,
0 commit comments