Skip to content

Commit d29a1e7

Browse files
committed
add source and line number to sampler results
1 parent ddd0b67 commit d29a1e7

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

visualvm/sampler.truffle/src/org/graalvm/visualvm/sampler/truffle/cpu/CPUSamplerSupport.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,7 @@ public void run() {
233233
builder.setIgnoredThreads(samplingThreads);
234234
}
235235
}
236+
addSourceNames(infos);
236237
builder.addStacktrace(infos, timestamp);
237238

238239
currentLiveUpdate = timestamp / 1000000;
@@ -247,6 +248,20 @@ public void run() {
247248
}
248249
}
249250
}
251+
252+
private void addSourceNames(Map<String,Object>[] infoMap) {
253+
for (Map<String,Object> threadInfo : infoMap) {
254+
StackTraceElement[] stack = (StackTraceElement[]) threadInfo.get("stack"); // NOI18N
255+
256+
for (int i = 0; i <stack.length; i++) {
257+
StackTraceElement ste = stack[i];
258+
File file = new File(ste.getFileName());
259+
String fname = file.getName();
260+
String detailedName = ste.getMethodName()+"|(L"+fname+":"+ste.getLineNumber()+";)L;"; // NOI18N
261+
stack[i] = new StackTraceElement(ste.getClassName(), detailedName, ste.getFileName(), ste.getLineNumber());
262+
}
263+
}
264+
}
250265
}
251266

252267
public static abstract class ThreadDumper {

0 commit comments

Comments
 (0)