Skip to content

v0.2.0

Latest

Choose a tag to compare

@ka1kqi ka1kqi released this 30 Jul 20:33
bd5778f

@traceroot-ai/traceroot 0.2.0

Internal export mode + trace-id forcing

  • initialize({ internalExport: { path, headers } }) — export spans to an internal ingest route instead of the public endpoint. Rejects a path without a leading / with a TypeError before any state is latched.
  • TraceRoot.isTracingActive() — whether this SDK's provider won global OTel registration; the signal consumers should latch on instead of probing.
  • observe({ traceId, projectId, ... }) / startSpan({ traceId, ... }) — force a caller-chosen (dashless, lowercase 32-hex) trace id; internal mode only.
  • Per-root project attribution: projectId on a root is stamped as traceroot.project_id on every span in its tree; spans that end unattributed are dropped rather than guessed, so one process can serve many projects over one exporter.

Compatibility note for existing users

When an environment is configured (init option or TRACEROOT_ENVIRONMENT), spans now carry traceroot.environment alongside the existing deployment.environment. No other behavior changes without internalExport configured.