Skip to content

tracing: etw/perf/lttng/etc multi-isolate support #18074

Description

@bnoordhuis

Continuing from nodejs/help#1031: src/node_counters.cc and its ilk need to have their initialization split out into a per-isolate and per-context step for embedding to work with them. Some thoughts:

  1. node.js won't know if initialization already happened if the isolate is created by the embedder, unless extra bookkeeping is added. Could hang off MultiIsolatePlatform::RegisterIsolate() - or could it?

  2. the tracing code itself isn't multi-isolate ready in the slightest, it's all globals that need to move to IsolateData and Environment

  3. some tracing flavors have (possibly inevitable) process-global state that should be protected by a uv_once_t or node::Mutex.

Metadata

Metadata

Assignees

No one assigned

    Labels

    embeddingIssues and PRs related to embedding Node.js in another project.help wantedIssues that need assistance from volunteers or PRs that need help to proceed.trace_eventsIssues and PRs related to trace events from V8, Node.js core, and user code.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions