1
1
package com .datadog .debugger .probe ;
2
2
3
3
import static com .datadog .debugger .codeorigin .DebuggerConfiguration .isDebuggerEnabled ;
4
- import static datadog .trace .api .DDTags .DD_CODE_ORIGIN_SNAPSHOT_ID ;
5
4
import static datadog .trace .api .DDTags .DD_STACK_CODE_ORIGIN_FRAME ;
6
5
import static datadog .trace .api .DDTags .DD_STACK_CODE_ORIGIN_TYPE ;
7
6
import static java .lang .String .format ;
13
12
import com .datadog .debugger .instrumentation .InstrumentationResult ;
14
13
import com .datadog .debugger .sink .Snapshot ;
15
14
import com .datadog .debugger .util .ClassNameFiltering ;
16
- import datadog .trace .api .DDTags ;
17
15
import datadog .trace .bootstrap .debugger .CapturedContext ;
18
16
import datadog .trace .bootstrap .debugger .MethodLocation ;
19
17
import datadog .trace .bootstrap .debugger .ProbeId ;
@@ -91,28 +89,9 @@ public void commit(
91
89
92
90
private void applySpanOriginTags (AgentSpan span , String snapshotId ) {
93
91
List <StackTraceElement > entries = getUserStackFrames ();
94
- recordCodeOrigin (span , entries , snapshotId );
95
92
recordStackFrames (span , entries , snapshotId );
96
93
}
97
94
98
- private void recordCodeOrigin (
99
- AgentSpan span , List <StackTraceElement > entries , String snapshotId ) {
100
- if (entrySpanProbe && !entries .isEmpty ()) {
101
- StackTraceElement entry = entries .get (0 );
102
- List <AgentSpan > list = asList (span , span .getLocalRootSpan ());
103
- for (AgentSpan s : list ) {
104
- s .setTag (DDTags .DD_CODE_ORIGIN_FILE , toFileName (entry .getClassName ()));
105
- s .setTag (DDTags .DD_CODE_ORIGIN_METHOD , entry .getMethodName ());
106
- s .setTag (DDTags .DD_CODE_ORIGIN_LINE , entry .getLineNumber ());
107
- s .setTag (DDTags .DD_CODE_ORIGIN_TYPE , entry .getClassName ());
108
- s .setTag (DDTags .DD_CODE_ORIGIN_METHOD_SIGNATURE , signature );
109
- if (snapshotId != null ) {
110
- s .setTag (DD_CODE_ORIGIN_SNAPSHOT_ID , snapshotId );
111
- }
112
- }
113
- }
114
- }
115
-
116
95
private void recordStackFrames (
117
96
AgentSpan span , List <StackTraceElement > entries , String snapshotId ) {
118
97
List <AgentSpan > agentSpans =
@@ -127,6 +106,9 @@ private void recordStackFrames(
127
106
s .setTag (format (DD_STACK_CODE_ORIGIN_FRAME , i , "method" ), info .getMethodName ());
128
107
s .setTag (format (DD_STACK_CODE_ORIGIN_FRAME , i , "line" ), info .getLineNumber ());
129
108
s .setTag (format (DD_STACK_CODE_ORIGIN_FRAME , i , "type" ), info .getClassName ());
109
+ if (i == 0 && signature != null ) {
110
+ s .setTag (format (DD_STACK_CODE_ORIGIN_FRAME , i , "signature" ), signature );
111
+ }
130
112
if (i == 0 && snapshotId != null ) {
131
113
s .setTag (format (DD_STACK_CODE_ORIGIN_FRAME , i , "snapshot_id" ), snapshotId );
132
114
}
0 commit comments