> A custom trace event class emits "begin" and "end" events in its > constructor and destructor respectively. So I do not think this is due to > conditional path.
If you can guarantee that the destructor is called, seems good to me. Do you see scenario where the "begin" event is missing ? > > Sequence of commands to capture a snapshot are: > lttng create --snapshot > lttng enable-event --userspace --all > lttng add-context --userspace -t vpid -t vtid > lttng start > lttng stop > lttng snapshot record Nothing out of the ordinary here. > > We create a new session for each snapshot to make sure that the buffer does > not have any left-over events from the previous session. But I am curious > if lttng shares buffers between sessions or re-uses buffers from an old > session without flushing? No sharing is done between sessions AFAIK. > > Note that I am using the default LTTNG_BUFFER_PER_UID mode. All processes > for our application run under one UID, and only one tracing session is > active at a time. Again, nothing out of the ordinary. Next step would be a small reproducer. Is the system under load? Is there any cpu affinity set? What kind of system are we talking about (x86_64? arm? 24+ cores? etc.) Cheers -- Jonathan Rajotte-Julien EfficiOS _______________________________________________ lttng-dev mailing list lttng-dev@lists.lttng.org https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev