I've started to use lttng dynamic tracing for analyzing function call durations during load tests. I'm collecting 'function_call' and function_return' tracepoints for that. My current problem is that if any loss of trace records happens (and it does happen at the peek of the system load), analyzing the call stack becomes difficult. Namely, if the function_return record gets lost, it'll look like the matching call was never returned, which will distort the tracing of the process stack. Also, there are calls like erlang:throw/1, that never return, by design.
Now, the 'depth' field, which I understand is there to show the stack depth, would help a lot, but it always seems to show '0' value, regardless of the actual stack depth. Any suggestions as to how to make 'depth' field work?