From 1fa682e89cdb232388efef8d265c67396f539293 Mon Sep 17 00:00:00 2001 From: Gal Kleinman <33281963+galkleinman@users.noreply.github.com> Date: Sun, 27 Apr 2025 20:24:38 +0300 Subject: [PATCH 1/2] fix(tracing): introduce tracingEnabled option to support sdk initialization for standalone processor (#599) --- packages/sample-app/src/sample_otel_sdk.ts | 19 ++++++++++--------- .../src/lib/configuration/index.ts | 5 ++++- .../initialize-options.interface.ts | 6 ++++++ 3 files changed, 20 insertions(+), 10 deletions(-) diff --git a/packages/sample-app/src/sample_otel_sdk.ts b/packages/sample-app/src/sample_otel_sdk.ts index 37a0da1b..5ba9d564 100644 --- a/packages/sample-app/src/sample_otel_sdk.ts +++ b/packages/sample-app/src/sample_otel_sdk.ts @@ -1,15 +1,16 @@ import { NodeSDK } from "@opentelemetry/sdk-node"; import { Resource } from "@opentelemetry/resources"; import { ATTR_SERVICE_NAME } from "@opentelemetry/semantic-conventions"; -import { - createSpanProcessor, - withTask, - withWorkflow, -} from "@traceloop/node-server-sdk"; +import * as traceloop from "@traceloop/node-server-sdk"; import { trace } from "@opentelemetry/api"; import OpenAI from "openai"; -const traceloopSpanProcessor = createSpanProcessor({ +traceloop.initialize({ + tracingEnabled: false, + traceloopSyncEnabled: false, +}); + +const traceloopSpanProcessor = traceloop.createSpanProcessor({ apiKey: process.env.TRACELOOP_API_KEY, baseUrl: process.env.TRACELOOP_BASE_URL, disableBatch: true, @@ -45,9 +46,9 @@ async function main() { } async function chat() { - return await withWorkflow({ name: "sample_chat" }, async () => { - return await withTask({ name: "parent_task" }, async () => { - return await withTask({ name: "child_task" }, async () => { + return await traceloop.withWorkflow({ name: "sample_chat" }, async () => { + return await traceloop.withTask({ name: "parent_task" }, async () => { + return await traceloop.withTask({ name: "child_task" }, async () => { const chatCompletion = await openai.chat.completions.create({ messages: [ { role: "user", content: "Tell me a joke about OpenTelemetry" }, diff --git a/packages/traceloop-sdk/src/lib/configuration/index.ts b/packages/traceloop-sdk/src/lib/configuration/index.ts index b242a7a1..ade3f20c 100644 --- a/packages/traceloop-sdk/src/lib/configuration/index.ts +++ b/packages/traceloop-sdk/src/lib/configuration/index.ts @@ -86,7 +86,10 @@ export const initialize = (options: InitializeOptions) => { ); } - startTracing(_configuration); + if (options.tracingEnabled === undefined || options.tracingEnabled) { + startTracing(_configuration); + } + initializeRegistry(_configuration); if (options.apiKey) { _client = new TraceloopClient({ diff --git a/packages/traceloop-sdk/src/lib/interfaces/initialize-options.interface.ts b/packages/traceloop-sdk/src/lib/interfaces/initialize-options.interface.ts index 26f81d0c..ceaade58 100644 --- a/packages/traceloop-sdk/src/lib/interfaces/initialize-options.interface.ts +++ b/packages/traceloop-sdk/src/lib/interfaces/initialize-options.interface.ts @@ -142,4 +142,10 @@ export interface InitializeOptions { * Defaults to false. */ silenceInitializationMessage?: boolean; + + /** + * Whether to enable tracing. Optional. + * Defaults to true. + */ + tracingEnabled?: boolean; } From cf804fee3bc271d91d8519d61c1e4e864b92015a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 27 Apr 2025 17:34:51 +0000 Subject: [PATCH 2/2] v0.13.2 --- CHANGELOG.md | 6 ++++++ lerna.json | 2 +- package-lock.json | 2 +- packages/traceloop-sdk/CHANGELOG.md | 6 ++++++ packages/traceloop-sdk/package.json | 2 +- 5 files changed, 15 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 307049c2..ad5ad351 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,12 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.13.2](https://github.com/traceloop/openllmetry-js/compare/v0.13.1...v0.13.2) (2025-04-27) + +### Bug Fixes + +- **tracing:** introduce tracingEnabled option to support sdk initialization for standalone processor ([#599](https://github.com/traceloop/openllmetry-js/issues/599)) ([1fa682e](https://github.com/traceloop/openllmetry-js/commit/1fa682e89cdb232388efef8d265c67396f539293)) + ## [0.13.1](https://github.com/traceloop/openllmetry-js/compare/v0.13.0...v0.13.1) (2025-04-24) ### Bug Fixes diff --git a/lerna.json b/lerna.json index 90c5a479..476cca10 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "$schema": "node_modules/lerna/schemas/lerna-schema.json", - "version": "0.13.1", + "version": "0.13.2", "packages": ["packages/*"], "useNx": true } diff --git a/package-lock.json b/package-lock.json index e99a226d..8e81819c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -32805,7 +32805,7 @@ }, "packages/traceloop-sdk": { "name": "@traceloop/node-server-sdk", - "version": "0.13.1", + "version": "0.13.2", "license": "Apache-2.0", "dependencies": { "@opentelemetry/exporter-trace-otlp-proto": "^0.56.0", diff --git a/packages/traceloop-sdk/CHANGELOG.md b/packages/traceloop-sdk/CHANGELOG.md index 9d1eeb62..293f72ce 100644 --- a/packages/traceloop-sdk/CHANGELOG.md +++ b/packages/traceloop-sdk/CHANGELOG.md @@ -3,6 +3,12 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.13.2](https://github.com/traceloop/openllmetry-js/compare/v0.13.1...v0.13.2) (2025-04-27) + +### Bug Fixes + +- **tracing:** introduce tracingEnabled option to support sdk initialization for standalone processor ([#599](https://github.com/traceloop/openllmetry-js/issues/599)) ([1fa682e](https://github.com/traceloop/openllmetry-js/commit/1fa682e89cdb232388efef8d265c67396f539293)) + ## [0.13.1](https://github.com/traceloop/openllmetry-js/compare/v0.13.0...v0.13.1) (2025-04-24) ### Bug Fixes diff --git a/packages/traceloop-sdk/package.json b/packages/traceloop-sdk/package.json index 5d2110dc..e00d4da4 100644 --- a/packages/traceloop-sdk/package.json +++ b/packages/traceloop-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@traceloop/node-server-sdk", - "version": "0.13.1", + "version": "0.13.2", "description": "Traceloop Software Development Kit (SDK) for Node.js", "main": "dist/index.js", "module": "dist/index.mjs",