@owlpane/node 0.1.8 → 0.1.10

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 CHANGED
@@ -33,7 +33,7 @@ Track a background job: `await owlpane.job("nightly-report", "cron", {}, async (
33
33
 
34
34
  ## IoT device fleets
35
35
 
36
- Emit logs (or metrics) with attributes `owlpane.device.id` and `owlpane.device_fleet.id`, register the device in **Device fleets**, then run the observability scorecard. Example: `sdk/examples/apps/iot-device-simulator`.
36
+ Emit logs (or metrics) with attributes `owlpane.device.id` and `owlpane.device_fleet.id`, register the device in **Device fleets**, then run the observability scorecard. Example: [owlpane-sdk-examples/apps/iot-device-simulator](https://github.com/OwlPane/owlpane-sdk-examples/tree/main/apps/iot-device-simulator).
37
37
  Tag the signed-in user (opaque id only): `owlpane.setUser(user.id)`. Email and name are **not** recorded unless you opt in with `traceUserProfile: true` or `OWLPANE_TRACE_USER_PROFILE=1` (discouraged for production).
38
38
 
39
39
  ## Live debugger (opt-in)
@@ -40,6 +40,8 @@ export declare class LiveDebuggerAgent {
40
40
  private byBreakpoint;
41
41
  /** Every breakpoint this agent ever set. A pause already on its way when one is removed must still be resumed, or the thread stays stopped. */
42
42
  private readonly everSet;
43
+ /** Probes whose capture budget is already spent. A later poll must not put them back while the API still lists the old budget. */
44
+ private readonly spent;
43
45
  private readonly scripts;
44
46
  private queue;
45
47
  private recent;
@@ -24,6 +24,8 @@ class LiveDebuggerAgent {
24
24
  byBreakpoint = new Map();
25
25
  /** Every breakpoint this agent ever set. A pause already on its way when one is removed must still be resumed, or the thread stays stopped. */
26
26
  everSet = new Set();
27
+ /** Probes whose capture budget is already spent. A later poll must not put them back while the API still lists the old budget. */
28
+ spent = new Set();
27
29
  scripts = new Map();
28
30
  queue = [];
29
31
  recent = [];
@@ -96,11 +98,14 @@ class LiveDebuggerAgent {
96
98
  const body = (await res.json());
97
99
  const probes = Array.isArray(body.probes) ? body.probes : [];
98
100
  const wanted = new Map(probes.map((p) => [p.id, p]));
101
+ for (const id of this.spent)
102
+ if (!wanted.has(id))
103
+ this.spent.delete(id);
99
104
  for (const a of [...this.active.values()])
100
105
  if (!wanted.has(a.spec.id))
101
106
  await this.remove(a);
102
107
  for (const p of probes)
103
- if (!this.active.has(p.id))
108
+ if (!this.active.has(p.id) && !this.spent.has(p.id))
104
109
  await this.add(p);
105
110
  await this.setEnabled(this.active.size > 0);
106
111
  return Math.min(300_000, Math.max(this.o.pollFloorMs ?? 5_000, (Number(body.pollAfterSeconds) || 15) * 1000));
@@ -177,6 +182,21 @@ class LiveDebuggerAgent {
177
182
  this.skipped[reason]++;
178
183
  else
179
184
  snapshot = await this.guarded(this.capture(a, p.callFrames ?? [], started), this.o.budgetMs * 2);
185
+ if (snapshot) {
186
+ // Spend the budget before resume. The app can hit the same line again as soon as the thread runs, and a poll can
187
+ // still be listing the old remaining count until the snapshot post lands.
188
+ a.remaining--;
189
+ a.lastAt = started;
190
+ this.recent.push(started);
191
+ if (this.queue.length < MAX_QUEUE)
192
+ this.queue.push(snapshot);
193
+ if (a.remaining <= 0) {
194
+ this.spent.add(a.spec.id);
195
+ await this.remove(a);
196
+ await this.setEnabled(this.active.size > 0);
197
+ }
198
+ void this.sendQueued();
199
+ }
180
200
  }
181
201
  catch (e) {
182
202
  this.log(`capture failed: ${e.message}`);
@@ -184,18 +204,6 @@ class LiveDebuggerAgent {
184
204
  finally {
185
205
  await this.resume();
186
206
  }
187
- if (snapshot) {
188
- a.remaining--;
189
- a.lastAt = started;
190
- this.recent.push(started);
191
- if (this.queue.length < MAX_QUEUE)
192
- this.queue.push(snapshot);
193
- if (a.remaining <= 0) {
194
- await this.remove(a);
195
- await this.setEnabled(this.active.size > 0);
196
- }
197
- void this.sendQueued();
198
- }
199
207
  }
200
208
  /** Gives up on a read that is taking far longer than its budget, so the thread is resumed whatever the inspector is doing. */
201
209
  guarded(work, ms) {
@@ -1 +1 @@
1
- {"version":3,"file":"debugger-agent.js","sourceRoot":"","sources":["../src/debugger-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debugger-agent.js","sourceRoot":"","sources":["../src/debugger-agent.ts"],"names":[],"mappings":"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"}
package/dist/debugger.js CHANGED
@@ -16,6 +16,7 @@ const node_os_1 = require("node:os");
16
16
  const node_path_1 = require("node:path");
17
17
  const node_inspector_1 = require("node:inspector");
18
18
  const node_worker_threads_1 = require("node:worker_threads");
19
+ const endpoint_1 = require("./endpoint");
19
20
  function startLiveDebugger(options) {
20
21
  const log = options.log ?? (() => undefined);
21
22
  const apiUrl = (options.apiUrl ?? process.env.OWLPANE_API_URL ?? "").trim();
@@ -23,6 +24,10 @@ function startLiveDebugger(options) {
23
24
  log("live debugger not started: set apiUrl (or OWLPANE_API_URL) to the Owlpane API");
24
25
  return undefined;
25
26
  }
27
+ if (!(0, endpoint_1.isKeySafeEndpoint)(apiUrl)) {
28
+ log("live debugger not started: the API URL must use https (plain http only for localhost), because the ingest key is sent to it");
29
+ return undefined;
30
+ }
26
31
  if ((0, node_inspector_1.url)()) {
27
32
  log("live debugger not started: an inspector is open (node --inspect), and the two would share one pause state");
28
33
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"debugger.js","sourceRoot":"","sources":["../src/debugger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debugger.js","sourceRoot":"","sources":["../src/debugger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /** An ingest key may only travel over https, or over http to the local machine (development). */
2
+ export declare function isKeySafeEndpoint(endpoint: string): boolean;
3
+ /**
4
+ * Authorization header for an ingest endpoint, or undefined when the key would travel in cleartext. Traces still flow to a
5
+ * plain-http collector (an in-cluster agent, for example); only the credential is withheld. OWLPANE_ALLOW_INSECURE_ENDPOINT=1 opts out.
6
+ */
7
+ export declare function ingestHeaders(endpoint: string, ingestKey: string | undefined, warn?: (msg: string) => void): Record<string, string> | undefined;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isKeySafeEndpoint = isKeySafeEndpoint;
4
+ exports.ingestHeaders = ingestHeaders;
5
+ /** An ingest key may only travel over https, or over http to the local machine (development). */
6
+ function isKeySafeEndpoint(endpoint) {
7
+ try {
8
+ const u = new URL(endpoint);
9
+ if (u.protocol === "https:")
10
+ return true;
11
+ return u.protocol === "http:" && (u.hostname === "localhost" || u.hostname === "127.0.0.1" || u.hostname === "[::1]" || u.hostname.endsWith(".localhost"));
12
+ }
13
+ catch {
14
+ return false;
15
+ }
16
+ }
17
+ /**
18
+ * Authorization header for an ingest endpoint, or undefined when the key would travel in cleartext. Traces still flow to a
19
+ * plain-http collector (an in-cluster agent, for example); only the credential is withheld. OWLPANE_ALLOW_INSECURE_ENDPOINT=1 opts out.
20
+ */
21
+ function ingestHeaders(endpoint, ingestKey, warn = console.warn) {
22
+ if (!ingestKey)
23
+ return undefined;
24
+ const optOut = ["1", "true", "yes"].includes((process.env.OWLPANE_ALLOW_INSECURE_ENDPOINT ?? "").trim().toLowerCase());
25
+ if (isKeySafeEndpoint(endpoint) || optOut)
26
+ return { Authorization: `Bearer ${ingestKey}` };
27
+ warn("[owlpane] the ingest key was not sent: the endpoint is not https. Use https, or set OWLPANE_ALLOW_INSECURE_ENDPOINT=1 to override.");
28
+ return undefined;
29
+ }
30
+ //# sourceMappingURL=endpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../src/endpoint.ts"],"names":[],"mappings":";;AACA,8CAQC;AAMD,sCAMC;AArBD,iGAAiG;AACjG,SAAgB,iBAAiB,CAAC,QAAgB;IAChD,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5B,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACzC,OAAO,CAAC,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,IAAI,CAAC,CAAC,QAAQ,KAAK,WAAW,IAAI,CAAC,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;IAC7J,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAAC,QAAgB,EAAE,SAA6B,EAAE,OAA8B,OAAO,CAAC,IAAI;IACvH,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IACjC,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IACvH,IAAI,iBAAiB,CAAC,QAAQ,CAAC,IAAI,MAAM;QAAE,OAAO,EAAE,aAAa,EAAE,UAAU,SAAS,EAAE,EAAE,CAAC;IAC3F,IAAI,CAAC,oIAAoI,CAAC,CAAC;IAC3I,OAAO,SAAS,CAAC;AACnB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -13,11 +13,15 @@
13
13
  * interceptor) are at "@owlpane/node/nest" so this entry point has no framework dependency.
14
14
  */
15
15
  import { api } from "@opentelemetry/sdk-node";
16
+ import { trace, metrics as otelMetrics, SpanKind, SpanStatusCode, context } from "@opentelemetry/api";
16
17
  import { type LiveDebuggerOptions } from "./debugger";
17
18
  import { mobileResource, setExperiment, setFeatureFlag, testCase, pipeline, recordFinding, FINDING_KINDS } from "./signals";
18
19
  import { setDeviceContext, getDeviceContext, deviceLogAttributes, deviceResourceAttributes, emitDeviceLog, mergeDeviceResource, type DeviceContext } from "./device";
19
20
  export { mobileResource, setExperiment, setFeatureFlag, testCase, pipeline, recordFinding, FINDING_KINDS, setDeviceContext, getDeviceContext, deviceLogAttributes, deviceResourceAttributes, emitDeviceLog, mergeDeviceResource, };
20
21
  export type { DeviceContext };
22
+ /** Re-export OTel API from the same dependency tree as the SDK (avoids duplicate `@opentelemetry/api` in dogfood CLIs). */
23
+ export { trace, otelMetrics as metrics, SpanKind, SpanStatusCode, context };
24
+ export { logs, SeverityNumber } from "@opentelemetry/api-logs";
21
25
  export type { FindingKind, MobilePlatform } from "./signals";
22
26
  export type { LiveDebuggerOptions } from "./debugger";
23
27
  export type InitOptions = {
@@ -50,6 +54,8 @@ export type InitOptions = {
50
54
  * OWLPANE_LIVE_DEBUGGER=1 with OWLPANE_API_URL. See debugger.ts for what it does and refuses to do.
51
55
  */
52
56
  liveDebugger?: boolean | LiveDebuggerOptions;
57
+ /** Keep query strings in recorded URLs (url.full, url.query, http.target). Off by default; also OWLPANE_CAPTURE_URL_QUERY=1. */
58
+ captureUrlQuery?: boolean;
53
59
  };
54
60
  /** Whether setUser may attach email/name (requires start({ traceUserProfile: true }) or OWLPANE_TRACE_USER_PROFILE=1). */
55
61
  export declare function traceUserProfileEnabled(): boolean;
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.owlpane = exports.mergeDeviceResource = exports.emitDeviceLog = exports.deviceResourceAttributes = exports.deviceLogAttributes = exports.getDeviceContext = exports.setDeviceContext = exports.FINDING_KINDS = exports.recordFinding = exports.pipeline = exports.testCase = exports.setFeatureFlag = exports.setExperiment = exports.mobileResource = void 0;
3
+ exports.owlpane = exports.SeverityNumber = exports.logs = exports.context = exports.SpanStatusCode = exports.SpanKind = exports.metrics = exports.trace = exports.mergeDeviceResource = exports.emitDeviceLog = exports.deviceResourceAttributes = exports.deviceLogAttributes = exports.getDeviceContext = exports.setDeviceContext = exports.FINDING_KINDS = exports.recordFinding = exports.pipeline = exports.testCase = exports.setFeatureFlag = exports.setExperiment = exports.mobileResource = void 0;
4
4
  exports.traceUserProfileEnabled = traceUserProfileEnabled;
5
5
  exports.isEnabled = isEnabled;
6
6
  exports.start = start;
@@ -28,8 +28,16 @@ const auto_instrumentations_node_1 = require("@opentelemetry/auto-instrumentatio
28
28
  const instrumentation_openai_1 = require("@opentelemetry/instrumentation-openai");
29
29
  const exporter_trace_otlp_http_1 = require("@opentelemetry/exporter-trace-otlp-http");
30
30
  const api_logs_1 = require("@opentelemetry/api-logs");
31
+ const api_1 = require("@opentelemetry/api");
32
+ Object.defineProperty(exports, "trace", { enumerable: true, get: function () { return api_1.trace; } });
33
+ Object.defineProperty(exports, "metrics", { enumerable: true, get: function () { return api_1.metrics; } });
34
+ Object.defineProperty(exports, "SpanKind", { enumerable: true, get: function () { return api_1.SpanKind; } });
35
+ Object.defineProperty(exports, "SpanStatusCode", { enumerable: true, get: function () { return api_1.SpanStatusCode; } });
36
+ Object.defineProperty(exports, "context", { enumerable: true, get: function () { return api_1.context; } });
31
37
  const sdk_logs_1 = require("@opentelemetry/sdk-logs");
32
38
  const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
39
+ const endpoint_1 = require("./endpoint");
40
+ const redact_1 = require("./redact");
33
41
  const profiler_1 = require("./profiler");
34
42
  const debugger_1 = require("./debugger");
35
43
  const signals_1 = require("./signals");
@@ -47,9 +55,13 @@ Object.defineProperty(exports, "deviceLogAttributes", { enumerable: true, get: f
47
55
  Object.defineProperty(exports, "deviceResourceAttributes", { enumerable: true, get: function () { return device_1.deviceResourceAttributes; } });
48
56
  Object.defineProperty(exports, "emitDeviceLog", { enumerable: true, get: function () { return device_1.emitDeviceLog; } });
49
57
  Object.defineProperty(exports, "mergeDeviceResource", { enumerable: true, get: function () { return device_1.mergeDeviceResource; } });
50
- const { BatchSpanProcessor, ParentBasedSampler, TraceIdRatioBasedSampler } = sdk_node_1.tracing;
58
+ var api_logs_2 = require("@opentelemetry/api-logs");
59
+ Object.defineProperty(exports, "logs", { enumerable: true, get: function () { return api_logs_2.logs; } });
60
+ Object.defineProperty(exports, "SeverityNumber", { enumerable: true, get: function () { return api_logs_2.SeverityNumber; } });
61
+ const { BatchSpanProcessor, SimpleSpanProcessor, ParentBasedSampler, TraceIdRatioBasedSampler } = sdk_node_1.tracing;
51
62
  const { resourceFromAttributes } = sdk_node_1.resources;
52
63
  let sdk;
64
+ let spanProcessor;
53
65
  let logProvider;
54
66
  let traceUserProfile = false;
55
67
  let profiler;
@@ -104,10 +116,16 @@ function start(options = {}) {
104
116
  process.env.NODE_ENV?.trim() ||
105
117
  "development";
106
118
  const ingestKey = options.ingestKey?.trim() || process.env.OWLPANE_INGEST_KEY?.trim();
107
- const headers = ingestKey ? { Authorization: `Bearer ${ingestKey}` } : undefined;
108
119
  const baseUrl = endpoint.replace(/\/+$/, "");
109
- const exportProcessor = new BatchSpanProcessor(new exporter_trace_otlp_http_1.OTLPTraceExporter({ url: `${baseUrl}/v1/traces`, headers }));
120
+ // The ingest key never travels in cleartext: it is withheld from a non-https, non-loopback endpoint.
121
+ const headers = (0, endpoint_1.ingestHeaders)(baseUrl, ingestKey);
122
+ const traceExporter = new exporter_trace_otlp_http_1.OTLPTraceExporter({ url: `${baseUrl}/v1/traces`, headers });
123
+ const oneShotDogfood = ["1", "true", "yes"].includes((process.env.OWLPANE_DOGFOOD_ONE_SHOT ?? "").trim().toLowerCase());
124
+ spanProcessor = oneShotDogfood
125
+ ? new SimpleSpanProcessor(traceExporter)
126
+ : new BatchSpanProcessor(traceExporter);
110
127
  const ratio = sampleRatio(options);
128
+ const keepUrlQuery = (0, redact_1.captureUrlQueryEnabled)(options.captureUrlQuery);
111
129
  const disabled = new Set(options.disableInstrumentations ?? []);
112
130
  const off = (name) => ({ enabled: !disabled.has(name) });
113
131
  const resource = resourceFromAttributes({
@@ -128,7 +146,7 @@ function start(options = {}) {
128
146
  api_logs_1.logs.setGlobalLoggerProvider(logProvider);
129
147
  sdk = new sdk_node_1.NodeSDK({
130
148
  resource,
131
- spanProcessors: [exportProcessor],
149
+ spanProcessors: [spanProcessor],
132
150
  // Metrics go to the same gateway with the same key; left to environment defaults they would be
133
151
  // sent without the credential and refused.
134
152
  metricReaders: [
@@ -145,6 +163,8 @@ function start(options = {}) {
145
163
  "@opentelemetry/instrumentation-http": {
146
164
  ...off("@opentelemetry/instrumentation-http"),
147
165
  applyCustomAttributesOnSpan: (span, request, response) => {
166
+ if (!keepUrlQuery)
167
+ (0, redact_1.redactSpanUrls)(span);
148
168
  if (!isIncomingMessage(request))
149
169
  return;
150
170
  const attrs = span.attributes ?? {};
@@ -174,10 +194,16 @@ function start(options = {}) {
174
194
  "@opentelemetry/instrumentation-pg": { requireParentSpan: true, ...off("@opentelemetry/instrumentation-pg") },
175
195
  // nestjs-pino → OTLP logs (Owlpane Logs page) with trace correlation when a span is active.
176
196
  "@opentelemetry/instrumentation-pino": off("@opentelemetry/instrumentation-pino"),
197
+ // Cache keys and values can hold user data: record the command name only.
198
+ "@opentelemetry/instrumentation-ioredis": { dbStatementSerializer: (cmdName) => cmdName, ...off("@opentelemetry/instrumentation-ioredis") },
199
+ "@opentelemetry/instrumentation-redis": { dbStatementSerializer: (cmdName) => cmdName, ...off("@opentelemetry/instrumentation-redis") },
200
+ // Heap spaces and event-loop delay/utilization. On unless the caller disables it.
201
+ "@opentelemetry/instrumentation-runtime-node": off("@opentelemetry/instrumentation-runtime-node"),
177
202
  }),
178
203
  ...(disabled.has("@opentelemetry/instrumentation-openai")
179
204
  ? []
180
- : [new instrumentation_openai_1.OpenAIInstrumentation()]),
205
+ // Prompt and completion text stay out of spans unless OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT=true is set.
206
+ : [new instrumentation_openai_1.OpenAIInstrumentation({ captureMessageContent: false })]),
181
207
  ],
182
208
  });
183
209
  sdk.start();
@@ -191,16 +217,26 @@ function start(options = {}) {
191
217
  }
192
218
  }
193
219
  /** Flushes and stops the pipeline. Call on shutdown so the last batch of spans isn't dropped. */
194
- function shutdown() {
220
+ async function shutdown() {
195
221
  const s = sdk;
222
+ const spans = spanProcessor;
196
223
  const logs = logProvider;
197
224
  const prof = profiler;
198
225
  const dbg = liveDebugger;
199
226
  liveDebugger = undefined;
200
227
  sdk = undefined;
228
+ spanProcessor = undefined;
201
229
  logProvider = undefined;
202
230
  profiler = undefined;
203
- return Promise.all([s?.shutdown(), logs?.shutdown(), prof?.stop(), dbg?.stop()]).then(() => undefined);
231
+ const flush = async (p) => {
232
+ if (p && typeof p === "object" && "forceFlush" in p && typeof p.forceFlush === "function") {
233
+ await p.forceFlush().catch(() => undefined);
234
+ }
235
+ };
236
+ await flush(spans);
237
+ await flush(logs);
238
+ await flush(s);
239
+ await Promise.all([s?.shutdown(), logs?.shutdown(), prof?.stop(), dbg?.stop()]).then(() => undefined);
204
240
  }
205
241
  // ---------- HTTP request counter (unsampled) ----------
206
242
  /**
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /** Drops the query string and fragment from a URL or request target, and any credentials in a URL. */
2
+ export declare function stripUrlQuery(value: string): string;
3
+ /** Removes query strings from the recorded URL attributes unless the app opted in to keeping them. */
4
+ export declare function redactSpanUrls(span: unknown): void;
5
+ export declare function captureUrlQueryEnabled(option: boolean | undefined): boolean;
package/dist/redact.js ADDED
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stripUrlQuery = stripUrlQuery;
4
+ exports.redactSpanUrls = redactSpanUrls;
5
+ exports.captureUrlQueryEnabled = captureUrlQueryEnabled;
6
+ /** URL attributes the HTTP instrumentation records; each can carry a query string with tokens, emails or ids. */
7
+ const URL_ATTRS = ["url.full", "url.query", "http.url", "http.target"];
8
+ /** Drops the query string and fragment from a URL or request target, and any credentials in a URL. */
9
+ function stripUrlQuery(value) {
10
+ const cut = value.search(/[?#]/);
11
+ const base = cut === -1 ? value : value.slice(0, cut);
12
+ return base.replace(/^([a-z][a-z0-9+.-]*:\/\/)[^/@]*@/i, "$1");
13
+ }
14
+ /** Removes query strings from the recorded URL attributes unless the app opted in to keeping them. */
15
+ function redactSpanUrls(span) {
16
+ const s = span;
17
+ const attrs = s.attributes ?? {};
18
+ for (const key of URL_ATTRS) {
19
+ const v = attrs[key];
20
+ if (typeof v !== "string")
21
+ continue;
22
+ if (key === "url.query")
23
+ s.setAttribute(key, "");
24
+ else {
25
+ const stripped = stripUrlQuery(v);
26
+ if (stripped !== v)
27
+ s.setAttribute(key, stripped);
28
+ }
29
+ }
30
+ }
31
+ function captureUrlQueryEnabled(option) {
32
+ return option === true || ["1", "true", "yes"].includes((process.env.OWLPANE_CAPTURE_URL_QUERY ?? "").trim().toLowerCase());
33
+ }
34
+ //# sourceMappingURL=redact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redact.js","sourceRoot":"","sources":["../src/redact.ts"],"names":[],"mappings":";;AAIA,sCAIC;AAKD,wCAYC;AAED,wDAEC;AA7BD,iHAAiH;AACjH,MAAM,SAAS,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,CAAU,CAAC;AAEhF,sGAAsG;AACtG,SAAgB,aAAa,CAAC,KAAa;IACzC,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACtD,OAAO,IAAI,CAAC,OAAO,CAAC,mCAAmC,EAAE,IAAI,CAAC,CAAC;AACjE,CAAC;AAID,sGAAsG;AACtG,SAAgB,cAAc,CAAC,IAAa;IAC1C,MAAM,CAAC,GAAG,IAAgB,CAAC;IAC3B,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC;IACjC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACrB,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,SAAS;QACpC,IAAI,GAAG,KAAK,WAAW;YAAE,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;aAC5C,CAAC;YACJ,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,QAAQ,KAAK,CAAC;gBAAE,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAgB,sBAAsB,CAAC,MAA2B;IAChE,OAAO,MAAM,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;AAC9H,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@owlpane/node",
3
- "version": "0.1.8",
3
+ "version": "0.1.10",
4
4
  "description": "Owlpane telemetry SDK for Node.js: one-line OpenTelemetry setup, job tracing, and user tagging. Optional NestJS helpers at @owlpane/node/nest.",
5
5
  "license": "MIT",
6
6
  "repository": {