3
3
4
4
//! Trace-utils functionalities implementation for tinybytes based spans
5
5
6
- use super :: { Span , SpanValue } ;
6
+ use super :: { Span , SpanText } ;
7
7
use std:: collections:: HashMap ;
8
8
9
9
/// Span metric the mini agent must set for the backend to recognize top level span
@@ -15,7 +15,7 @@ const PARTIAL_VERSION_KEY: &str = "_dd.partial_version";
15
15
16
16
fn set_top_level_span < ' a , T > ( span : & mut Span < T > , is_top_level : bool )
17
17
where
18
- T : SpanValue + From < & ' a str > ,
18
+ T : SpanText + From < & ' a str > ,
19
19
{
20
20
if is_top_level {
21
21
span. metrics . insert ( TOP_LEVEL_KEY . into ( ) , 1.0 ) ;
32
32
/// ancestor of other spans belonging to this service and attached to it).
33
33
pub fn compute_top_level_span < ' a , T > ( trace : & mut [ Span < T > ] )
34
34
where
35
- T : SpanValue + Clone + From < & ' a str > ,
35
+ T : SpanText + Clone + From < & ' a str > ,
36
36
{
37
37
let mut span_id_to_service: HashMap < u64 , T > = HashMap :: new ( ) ;
38
38
for span in trace. iter ( ) {
@@ -59,15 +59,15 @@ where
59
59
}
60
60
61
61
/// Return true if the span has a top level key set
62
- pub fn has_top_level < T : SpanValue > ( span : & Span < T > ) -> bool {
62
+ pub fn has_top_level < T : SpanText > ( span : & Span < T > ) -> bool {
63
63
span. metrics
64
64
. get ( TRACER_TOP_LEVEL_KEY )
65
65
. is_some_and ( |v| * v == 1.0 )
66
66
|| span. metrics . get ( TOP_LEVEL_KEY ) . is_some_and ( |v| * v == 1.0 )
67
67
}
68
68
69
69
/// Returns true if a span should be measured (i.e., it should get trace metrics calculated).
70
- pub fn is_measured < T : SpanValue > ( span : & Span < T > ) -> bool {
70
+ pub fn is_measured < T : SpanText > ( span : & Span < T > ) -> bool {
71
71
span. metrics . get ( MEASURED_KEY ) . is_some_and ( |v| * v == 1.0 )
72
72
}
73
73
@@ -76,7 +76,7 @@ pub fn is_measured<T: SpanValue>(span: &Span<T>) -> bool {
76
76
/// When incomplete, a partial snapshot has a metric _dd.partial_version which is a positive
77
77
/// integer. The metric usually increases each time a new version of the same span is sent by
78
78
/// the tracer
79
- pub fn is_partial_snapshot < T : SpanValue > ( span : & Span < T > ) -> bool {
79
+ pub fn is_partial_snapshot < T : SpanText > ( span : & Span < T > ) -> bool {
80
80
span. metrics
81
81
. get ( PARTIAL_VERSION_KEY )
82
82
. is_some_and ( |v| * v >= 0.0 )
0 commit comments