123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657(** Subscriber that emits events *)openTrace_coreopenEventtypeevent_consumer={on_event:Event.t->unit}[@@unboxed](** Callback for events. *)moduleCallbacks:Sub.Callbacks.Swithtypest=event_consumer=structtypest=event_consumerleton_init(self:st)~time_ns=self.on_event(E_init{time_ns})leton_shutdown(self:st)~time_ns=self.on_event(E_shutdown{time_ns})leton_name_process(self:st)~time_ns:_~tid:_~name:unit=self.on_event@@E_name_process{name}leton_name_thread(self:st)~time_ns:_~tid~name:unit=self.on_event@@E_name_thread{tid;name}let[@inline]on_enter_span(self:st)~__FUNCTION__:fun_name~__FILE__:_~__LINE__:_~time_ns~tid~data~namespan:unit=self.on_event@@E_define_span{tid;name;time_ns;id=span;fun_name;data}leton_exit_span(self:st)~time_ns~tid:_span:unit=self.on_event@@E_exit_span{id=span;time_ns}leton_add_data(self:st)~dataspan=ifdata<>[]thenself.on_event@@E_add_data{id=span;data}leton_message(self:st)~time_ns~tid~span:_~datamsg:unit=self.on_event@@E_message{tid;time_ns;msg;data}leton_counter(self:st)~time_ns~tid~data:_~namef:unit=self.on_event@@E_counter{name;n=f;time_ns;tid}leton_enter_manual_span(self:st)~__FUNCTION__:fun_name~__FILE__:_~__LINE__:_~time_ns~tid~parent:_~data~name~flavor~trace_id_span:unit=self.on_event@@E_enter_manual_span{id=trace_id;time_ns;tid;data;name;fun_name;flavor}leton_exit_manual_span(self:st)~time_ns~tid~name~data~flavor~trace_id(_:span):unit=self.on_event@@E_exit_manual_span{tid;id=trace_id;name;time_ns;data;flavor}leton_extension_event(self:st)~time_ns~tidext:unit=self.on_event@@E_extension_event{tid;time_ns;ext}end(** A subscriber that turns calls into events that are passed to the
{! event_consumer} *)letsubscriber(consumer:event_consumer):Sub.t=Sub.Subscriber.Sub{st=consumer;callbacks=(moduleCallbacks)}