Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
069c05e
Port OTEP-4947 thread-context writer from custom-labels/js
szegedi May 27, 2026
d6be1bc
Add test:docker harness for running tests on Linux from any host
szegedi May 27, 2026
a991075
Rename CtxWrap::Bytes to DebugBytes
szegedi Jun 10, 2026
be20640
Propagate V8 pending exception on ToString failure instead of overwri…
szegedi Jun 11, 2026
1802a08
Compile addon on Node < 22 by guarding the V8 CPED offset lookup
szegedi Jun 11, 2026
e6b9d44
Compile addon against older V8 ABIs (Node 18 prebuild targets)
szegedi Jun 11, 2026
5adbdf5
Compile addon on Node 26 (V8 14.x V2 string API + Object::GetIsolate …
szegedi Jun 11, 2026
b3724e6
Fix TS lint: prettier formatting, strict equality, unused-vars
szegedi Jun 11, 2026
3680835
Make the addon compile on MSVC
szegedi Jun 11, 2026
ba65497
Skip OTEP-4947 thread context tests where the feature is unavailable
szegedi Jun 11, 2026
3306ca8
Surface the OTEP-4947 writer API on the package root
szegedi Jun 16, 2026
e74fe19
Expose CtxWrap as a first-class JS class; drop the implicit-storage h…
szegedi Jun 16, 2026
33db17b
Rename CtxWrap to ThreadContext in the JS API surface
szegedi Jun 16, 2026
04557a6
Update process-context schema-version and layout-key names
szegedi Jun 23, 2026
fa17b61
Note vendored-from-polarsignals provenance on OTEP-4947 files
szegedi Jun 23, 2026
bd1aa38
Restore upstream comment wording in vendored otel-thread-ctx.cc
szegedi Jun 23, 2026
488e656
Move setContext/runWithContext to ThreadContext.enter/run methods
szegedi Jun 24, 2026
c4e82e8
Drop makeNamedContext in favor of a top-level getProcessContextAttrib…
szegedi Jun 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 13 additions & 2 deletions binding.gyp
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,8 @@
"bindings/binding.cc",
"bindings/map-get.cc",
"bindings/allocation-profile.cc",
"bindings/allocation-profile-node.cc"
"bindings/allocation-profile-node.cc",
"bindings/otel-thread-ctx.cc"
],
"include_dirs": [
"bindings",
Expand All @@ -46,7 +47,8 @@
"bindings/translate-time-profile.cc",
"bindings/test/binding.cc",
"bindings/allocation-profile.cc",
"bindings/allocation-profile-node.cc"
"bindings/allocation-profile-node.cc",
"bindings/otel-thread-ctx.cc"
],
"include_dirs": [
"bindings",
Expand Down Expand Up @@ -81,6 +83,15 @@
["-Wno-deprecated-declarations"],
"cflags_cc!": ["-std=gnu++14", "-std=gnu++1y", "-std=gnu++20" ],
"cflags_cc": ["-std=gnu++2a"],
"conditions": [
# -mtls-dialect=gnu2 forces TLSDESC on x86_64 so the
# otel_thread_ctx_nodejs_v1 symbol is reachable per the
# OTEP-4947 spec. On arm64 TLSDESC is the only dynamic
# model, so no flag is needed there.
['target_arch == "x64"', {
"cflags": ["-mtls-dialect=gnu2"],
}],
],
}
],
["OS == 'mac'",
Expand Down
2 changes: 2 additions & 0 deletions bindings/binding.cc
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
#include <v8.h>

#include "allocation-profile-node.hh"
#include "otel-thread-ctx.hh"
#include "profilers/heap.hh"
#include "profilers/wall.hh"
#include "translate-time-profile.hh"
Expand Down Expand Up @@ -53,5 +54,6 @@ NODE_MODULE_INIT(/* exports, module, context */) {
dd::TimeProfileNodeView::Init(exports);
dd::HeapProfiler::Init(exports);
dd::WallProfiler::Init(exports);
dd::OtelThreadCtx::Init(exports);
Nan::SetMethod(exports, "getNativeThreadId", GetNativeThreadId);
}
Loading
Loading