Collects and displays high-resolution traces of what a process is doing
Library magic-trace.magic_trace_lib
type t

Offers configuration parameters for where to save a file and whether to serve it

val write_and_maybe_view : ?num_temp_strs:int -> t -> f:( Tracing_zero.Writer.t -> 'a Async.Deferred.Or_error.t ) -> 'a Async.Deferred.Or_error.t

After f writes a trace, either hosts a Perfetto UI server for the resulting file or just saves it and prints a message about how to view the resulting trace.

It is the responsibility of f to close the writer and Perfetto may fail to load the trace if the writer isn't closed.