tree: 5c91e8b0ea5df0b8c9d6070dea9fa7b29a3e0e12 [path history] [tgz]
  1. include/
  5. fdio_connect.cpp
  6. handler.cpp
  7. provider_impl.cpp
  8. provider_impl.h
  9. provider_with_fdio.cpp
  10. session.cpp
  11. session.h
  12. utils.cpp
  13. utils.h

Trace Provider Library

A static library for publishing a trace provider. The trace manager connects to trace providers to collect trace records from running programs.

To register the trace provider, the program must call trace_provider_create() at some point during its startup sequence. The trace provider will take care of starting and stopping the trace engine in response to requests from the trace manager.


This library exists for very special cases, and in general should not be used.

To use it, you will need to provide your own connection with trace-manager. This library does not come with the fdio support that the “normal” version of this library uses. See fdio_connect.cpp in this directory for boilerplate of what needs to be done. Then when you have the handle to trace-manager, call trace_provider_create_with_name_etc().

trace_provider_t* trace_provider_create_with_name_etc(
        zx_handle_t to_service_h, async_dispatcher_t* dispatcher,
        const char* name);

N.B. This function will get renamed to remove the _etc suffix when all callers have been updated to call trace_provider_create_with_name_fdio() instead of trace_provider_create_with_name(). PT-63.

You will need to add these dependencies to your file: