Convenience macro for the async_enter function, which can be used to trace the duration of a
scope containing async code. This macro returns the drop guard, which the caller may then
choose to manage.
Convenience macro for the duration function that can be used to trace
the duration of a scope. If you need finer grained control over when a
duration starts and stops, see duration_begin and duration_end.
Macro for constructing TraceFutureArgs. The trace arguments won’t be constructed if the
category is not enabled. If the category becomes enabled while the TraceFuture is still alive
then the duration events will still be written but without the trace arguments.
Wraps a Future and writes duration events when the future is created, dropped, and every time
it’s polled. The duration events are connected by flow events.
Writes an async begin event. This event must be matched by an async end event with the same
id, category, and name. This function is intended to be called through use of the
async_enter! macro.
Writes an async end event. This event must be associated with a prior async begin event
with the same id, category, and name. This function is intended to be called implicitly
when the AsyncScope object created through use of the async_enter! macro is dropped.
Writes a flow begin event with the specified id.
This event may be followed by flow steps events and must be matched by
a flow end event with the same category, name, and id.