@@ -339,7 +339,7 @@ func TestSpanFinishWithError(t *testing.T) {
339339 assert .Equal (int32 (1 ), span .error )
340340 assert .Equal ("test error" , span .meta [ext .ErrorMsg ])
341341 assert .Equal ("*errors.errorString" , span .meta [ext .ErrorType ])
342- assert .NotEmpty (span .meta [ext .ErrorStack ])
342+ assert .NotEmpty (span .meta [ext .ErrorHandlingStack ])
343343}
344344
345345func TestSpanFinishWithErrorNoDebugStack (t * testing.T ) {
@@ -365,9 +365,9 @@ func TestSpanFinishWithErrorStackFrames(t *testing.T) {
365365 assert .Equal (int32 (1 ), span .error )
366366 assert .Equal ("test error" , span .meta [ext .ErrorMsg ])
367367 assert .Equal ("*errors.errorString" , span .meta [ext .ErrorType ])
368- assert .Contains (span .meta [ext .ErrorStack ], "tracer.TestSpanFinishWithErrorStackFrames" )
369- assert .Contains (span .meta [ext .ErrorStack ], "tracer.(*Span).Finish" )
370- assert .Equal (strings .Count (span .meta [ext .ErrorStack ], "\n \t " ), 2 )
368+ assert .Contains (span .meta [ext .ErrorHandlingStack ], "tracer.TestSpanFinishWithErrorStackFrames" )
369+ assert .Contains (span .meta [ext .ErrorHandlingStack ], "tracer.(*Span).Finish" )
370+ assert .Equal (strings .Count (span .meta [ext .ErrorHandlingStack ], "\n \t " ), 2 )
371371}
372372
373373// nilStringer is used to test nil detection when setting tags.
@@ -413,7 +413,7 @@ func TestSpanSetTag(t *testing.T) {
413413 assert .Equal (int32 (1 ), span .error )
414414 assert .Equal ("abc" , span .meta [ext .ErrorMsg ])
415415 assert .Equal ("*errors.errorString" , span .meta [ext .ErrorType ])
416- assert .NotEmpty (span .meta [ext .ErrorStack ])
416+ assert .NotEmpty (span .meta [ext .ErrorHandlingStack ])
417417
418418 span .SetTag (ext .Error , "something else" )
419419 assert .Equal (int32 (1 ), span .error )
@@ -523,7 +523,7 @@ func TestSpanSetTagError(t *testing.T) {
523523 t .Run ("on" , func (t * testing.T ) {
524524 span := newBasicSpan ("web.request" )
525525 span .setTagError (errors .New ("error value with trace" ), errorConfig {noDebugStack : false })
526- assert .NotEmpty (t , span .meta [ext .ErrorStack ])
526+ assert .NotEmpty (t , span .meta [ext .ErrorHandlingStack ])
527527 })
528528}
529529
@@ -793,10 +793,11 @@ func TestErrorStack(t *testing.T) {
793793 assert .Equal ("Something wrong" , span .meta [ext .ErrorMsg ])
794794 assert .Equal ("*errortrace.TracerError" , span .meta [ext .ErrorType ])
795795
796- stack := span .meta [ext .ErrorStack ]
796+ stack := span .meta [ext .ErrorHandlingStack ]
797797 assert .NotEqual ("" , stack )
798798 assert .Contains (stack , "tracer.TestErrorStack" )
799799 assert .Contains (stack , "tracer.createErrorTrace" )
800+
800801 span .Finish ()
801802 })
802803
@@ -813,10 +814,11 @@ func TestErrorStack(t *testing.T) {
813814 assert .Equal ("Something wrong" , span .meta [ext .ErrorMsg ])
814815 assert .Equal ("*errors.errorString" , span .meta [ext .ErrorType ])
815816
816- stack := span .meta [ext .ErrorStack ]
817+ stack := span .meta [ext .ErrorHandlingStack ]
817818 assert .NotEqual ("" , stack )
818819 assert .Contains (stack , "tracer.TestErrorStack" )
819- assert .NotContains (stack , "tracer.createTestError" ) // this checks our old behavior
820+ assert .NotContains (stack , "tracer.createTestError" )
821+
820822 span .Finish ()
821823 })
822824}
@@ -835,7 +837,7 @@ func TestSpanError(t *testing.T) {
835837 assert .Equal (int32 (1 ), span .error )
836838 assert .Equal ("Something wrong" , span .meta [ext .ErrorMsg ])
837839 assert .Equal ("*errors.errorString" , span .meta [ext .ErrorType ])
838- assert .NotEqual ("" , span .meta [ext .ErrorStack ])
840+ assert .NotEqual ("" , span .meta [ext .ErrorHandlingStack ])
839841 span .Finish ()
840842
841843 // operating on a finished span is a no-op
@@ -866,7 +868,7 @@ func TestSpanError_Typed(t *testing.T) {
866868 assert .Equal (int32 (1 ), span .error )
867869 assert .Equal ("boom" , span .meta [ext .ErrorMsg ])
868870 assert .Equal ("*tracer.boomError" , span .meta [ext .ErrorType ])
869- assert .NotEqual ("" , span .meta [ext .ErrorStack ])
871+ assert .NotEqual ("" , span .meta [ext .ErrorHandlingStack ])
870872}
871873
872874func TestSpanErrorNil (t * testing.T ) {
@@ -978,7 +980,6 @@ func TestSpanErrorStackMetrics(t *testing.T) {
978980 }
979981
980982 assert .Equal (0.0 , telemetryClient .Count (telemetry .NamespaceTracers , "errorstack.source" , []string {"source:takeStacktrace" }).Get ())
981- assert .Equal (0.0 , telemetryClient .Distribution (telemetry .NamespaceTracers , "errorstack.duration" , []string {"source:takeStacktrace" }).Get ())
982983
983984 assert .Equal (5.0 , telemetryClient .Count (telemetry .NamespaceTracers , "errorstack.source" , []string {"source:TracerError" }).Get ())
984985 if ! windows {
@@ -987,6 +988,24 @@ func TestSpanErrorStackMetrics(t *testing.T) {
987988 })
988989}
989990
991+ func TestSpanErrorNoStackTrace (t * testing.T ) {
992+ t .Run ("default" , func (t * testing.T ) {
993+ assert := assert .New (t )
994+ tracer , _ , _ , stop , err := startTestTracer (t , WithDebugStack (true ))
995+ assert .Nil (err )
996+ defer stop ()
997+
998+ span := tracer .StartSpan ("operation" )
999+ span .SetTag (ext .ErrorNoStackTrace , errors .New ("test" ))
1000+ span .Finish ()
1001+
1002+ assert .Equal (int32 (1 ), span .error )
1003+ assert .Equal ("" , span .meta [ext .ErrorStack ])
1004+ assert .Equal ("test" , span .meta [ext .ErrorMsg ])
1005+ assert .Equal ("*errors.errorString" , span .meta [ext .ErrorType ])
1006+ })
1007+ }
1008+
9901009func TestUniqueTagKeys (t * testing.T ) {
9911010 assert := assert .New (t )
9921011 span := newBasicSpan ("web.request" )
0 commit comments