neatlogs 1.1.19 → 1.1.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -2
- package/dist/ai-sdk.cjs +186 -11
- package/dist/ai-sdk.cjs.map +1 -1
- package/dist/ai-sdk.d.ts +17 -7
- package/dist/ai-sdk.mjs +189 -12
- package/dist/ai-sdk.mjs.map +1 -1
- package/dist/anthropic.cjs +31 -14
- package/dist/anthropic.cjs.map +1 -1
- package/dist/anthropic.mjs +31 -14
- package/dist/anthropic.mjs.map +1 -1
- package/dist/azure-openai.cjs +31 -14
- package/dist/azure-openai.cjs.map +1 -1
- package/dist/azure-openai.mjs +31 -14
- package/dist/azure-openai.mjs.map +1 -1
- package/dist/bedrock.cjs +31 -14
- package/dist/bedrock.cjs.map +1 -1
- package/dist/bedrock.mjs +31 -14
- package/dist/bedrock.mjs.map +1 -1
- package/dist/browser.cjs +26 -1
- package/dist/browser.cjs.map +1 -1
- package/dist/browser.d.ts +1 -1
- package/dist/browser.mjs +26 -1
- package/dist/browser.mjs.map +1 -1
- package/dist/claude-agent-sdk.cjs +2 -2
- package/dist/claude-agent-sdk.cjs.map +1 -1
- package/dist/claude-agent-sdk.mjs +2 -2
- package/dist/claude-agent-sdk.mjs.map +1 -1
- package/dist/cli.cjs +452 -200
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.mjs +427 -173
- package/dist/cli.mjs.map +1 -1
- package/dist/google-genai.cjs +31 -14
- package/dist/google-genai.cjs.map +1 -1
- package/dist/google-genai.mjs +31 -14
- package/dist/google-genai.mjs.map +1 -1
- package/dist/index.cjs +652 -333
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +15 -6
- package/dist/index.mjs +505 -184
- package/dist/index.mjs.map +1 -1
- package/dist/langchain.cjs +3 -3
- package/dist/langchain.cjs.map +1 -1
- package/dist/langchain.mjs +3 -3
- package/dist/langchain.mjs.map +1 -1
- package/dist/mastra-wrap.cjs +2 -2
- package/dist/mastra-wrap.cjs.map +1 -1
- package/dist/mastra-wrap.mjs +2 -2
- package/dist/mastra-wrap.mjs.map +1 -1
- package/dist/openai-agents.cjs.map +1 -1
- package/dist/openai-agents.mjs.map +1 -1
- package/dist/openai.cjs +31 -14
- package/dist/openai.cjs.map +1 -1
- package/dist/openai.mjs +31 -14
- package/dist/openai.mjs.map +1 -1
- package/dist/opencode-plugin.cjs +1 -1
- package/dist/opencode-plugin.cjs.map +1 -1
- package/dist/opencode-plugin.mjs +1 -1
- package/dist/opencode-plugin.mjs.map +1 -1
- package/dist/openrouter-agent.cjs +31 -14
- package/dist/openrouter-agent.cjs.map +1 -1
- package/dist/openrouter-agent.mjs +31 -14
- package/dist/openrouter-agent.mjs.map +1 -1
- package/dist/pi-agent.cjs.map +1 -1
- package/dist/pi-agent.mjs.map +1 -1
- package/dist/vertex-ai.cjs +31 -14
- package/dist/vertex-ai.cjs.map +1 -1
- package/dist/vertex-ai.mjs +31 -14
- package/dist/vertex-ai.mjs.map +1 -1
- package/package.json +1 -1
package/dist/vertex-ai.mjs
CHANGED
|
@@ -166,11 +166,11 @@ function getActiveNeatlogsSpan() {
|
|
|
166
166
|
function getNeatlogsParentContext(baseContext) {
|
|
167
167
|
return baseContext ?? getNeatlogsActiveContext();
|
|
168
168
|
}
|
|
169
|
-
function withNeatlogsSpan(span, fn, baseContext) {
|
|
169
|
+
function withNeatlogsSpan(span, fn, baseContext, rootSpan) {
|
|
170
170
|
const base = baseContext ?? getNeatlogsActiveContext();
|
|
171
171
|
let ctx = otelTrace.setSpan(base, span);
|
|
172
172
|
if (base.getValue(NEATLOGS_ROOT_SPAN_KEY) === void 0) {
|
|
173
|
-
ctx = ctx.setValue(NEATLOGS_ROOT_SPAN_KEY, span);
|
|
173
|
+
ctx = ctx.setValue(NEATLOGS_ROOT_SPAN_KEY, rootSpan ?? span);
|
|
174
174
|
}
|
|
175
175
|
return privateContextStorage.run(ctx, fn);
|
|
176
176
|
}
|
|
@@ -907,7 +907,8 @@ var USER_PROMPT_TEMPLATE_KEY = createContextKey2("neatlogs.user_prompt_template"
|
|
|
907
907
|
var USER_PROMPT_VARIABLES_KEY = createContextKey2("neatlogs.user_prompt_variables");
|
|
908
908
|
|
|
909
909
|
// src/core/auto-root.ts
|
|
910
|
-
var
|
|
910
|
+
var boundAutoRoots = /* @__PURE__ */ new WeakMap();
|
|
911
|
+
var ROOT_KINDS = /* @__PURE__ */ new Set(["workflow", "chain", "agent", "mcp_tool", "llm"]);
|
|
911
912
|
function autoRootEnabled() {
|
|
912
913
|
const val = (process.env.NEATLOGS_AUTO_ROOT ?? "").trim().toLowerCase();
|
|
913
914
|
return !["false", "0", "no", "off"].includes(val);
|
|
@@ -922,11 +923,12 @@ function resolveRootWorkflowName() {
|
|
|
922
923
|
}
|
|
923
924
|
return "workflow";
|
|
924
925
|
}
|
|
925
|
-
function
|
|
926
|
+
function stampRootIdentity(root) {
|
|
926
927
|
applySessionAttributes(root, void 0, true);
|
|
927
928
|
applyEndUserAttributes(root, void 0, void 0, true);
|
|
928
929
|
}
|
|
929
|
-
function
|
|
930
|
+
function bindSpanToAutoRoot(child, root) {
|
|
931
|
+
if (!root) return child;
|
|
930
932
|
let ended = false;
|
|
931
933
|
const proxy = new Proxy(child, {
|
|
932
934
|
get(target, prop, _receiver) {
|
|
@@ -948,6 +950,7 @@ function wrapSpanWithRoot(child, root) {
|
|
|
948
950
|
return typeof value === "function" ? value.bind(target) : value;
|
|
949
951
|
}
|
|
950
952
|
});
|
|
953
|
+
boundAutoRoots.set(proxy, root);
|
|
951
954
|
aliasMediaCaptureSpan(proxy, child);
|
|
952
955
|
return proxy;
|
|
953
956
|
}
|
|
@@ -960,27 +963,41 @@ var AutoRootTracer = class {
|
|
|
960
963
|
const kind = String(
|
|
961
964
|
options?.attributes?.["neatlogs.span.kind"] ?? ""
|
|
962
965
|
).toLowerCase();
|
|
966
|
+
const hasExplicitContext = context !== void 0;
|
|
963
967
|
const ctx = context ?? getNeatlogsParentContext();
|
|
964
968
|
const parent = getActiveNeatlogsSpan();
|
|
965
|
-
const
|
|
969
|
+
const isParentless = !hasExplicitContext && !(parent !== void 0 && parent.isRecording());
|
|
970
|
+
const needsRoot = autoRootEnabled() && !ROOT_KINDS.has(kind) && isParentless;
|
|
966
971
|
if (!needsRoot) {
|
|
967
|
-
|
|
972
|
+
const span = this._tracer.startSpan(name, options, ctx);
|
|
973
|
+
if (isParentless && ROOT_KINDS.has(kind)) stampRootIdentity(span);
|
|
974
|
+
return span;
|
|
968
975
|
}
|
|
969
976
|
const root = this._tracer.startSpan(
|
|
970
977
|
resolveRootWorkflowName(),
|
|
971
978
|
{ attributes: { "neatlogs.span.kind": "workflow", "neatlogs.auto_root": true } },
|
|
972
979
|
ctx
|
|
973
980
|
);
|
|
974
|
-
|
|
981
|
+
stampRootIdentity(root);
|
|
975
982
|
const childCtx = otelTrace3.setSpan(ctx, root);
|
|
976
983
|
const child = this._tracer.startSpan(name, options, childCtx);
|
|
977
|
-
return
|
|
984
|
+
return bindSpanToAutoRoot(child, root);
|
|
978
985
|
}
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
986
|
+
startActiveSpan = ((name, ...args) => {
|
|
987
|
+
const callback = args.at(-1);
|
|
988
|
+
if (typeof callback !== "function") {
|
|
989
|
+
throw new TypeError("startActiveSpan requires a callback");
|
|
990
|
+
}
|
|
991
|
+
const options = args.length >= 2 ? args[0] : void 0;
|
|
992
|
+
const parentContext = args.length >= 3 ? args[1] : getNeatlogsParentContext();
|
|
993
|
+
const span = args.length >= 3 ? this.startSpan(name, options, parentContext) : this.startSpan(name, options);
|
|
994
|
+
return withNeatlogsSpan(
|
|
995
|
+
span,
|
|
996
|
+
() => callback(span),
|
|
997
|
+
parentContext,
|
|
998
|
+
boundAutoRoots.get(span)
|
|
999
|
+
);
|
|
1000
|
+
});
|
|
984
1001
|
};
|
|
985
1002
|
function getProviderTracer(name) {
|
|
986
1003
|
return new AutoRootTracer(getNeatlogsTracer(name));
|