A traced plug-in records when PULP_TRACE_PATH is set in its host's environment, but an out-of-process host (AUHostingService, where Logic runs AU v2 plug-ins) inherits nothing from a shell or launchctl setenv. More...
#include <trace_session.hpp>
Public Attributes | |
| std::string | path |
| std::string | seconds |
| std::string | ring_kb |
A traced plug-in records when PULP_TRACE_PATH is set in its host's environment, but an out-of-process host (AUHostingService, where Logic runs AU v2 plug-ins) inherits nothing from a shell or launchctl setenv.
So a traced build also reads ~/.config/pulp/trace-autostart when the variable is unset: KEY=VALUE lines for PULP_TRACE_PATH, PULP_TRACE_SECONDS and PULP_TRACE_RING_KB (anything else, blank lines and # comments are ignored). A PULP_TRACE_PATH ending in / is a directory: each process writes <process>-<pid>.pftrace into it, so a host and its out-of-process service never overwrite one another. A leading $TMPDIR is the process's own temporary directory, the one place a sandboxed service can write; a directory the process cannot create falls back to it as well. The chosen path is logged (os_log on Apple: log show --predicate 'eventMessage CONTAINS "pulp-trace"'). Delete the file to stop recording.
| std::string pulp::runtime::detail::TraceAutostartConfig::path |
| std::string pulp::runtime::detail::TraceAutostartConfig::ring_kb |
| std::string pulp::runtime::detail::TraceAutostartConfig::seconds |