@xeonr/upload-pool-sdk 1.0.0 → 1.2.0

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/dist/index.d.ts CHANGED
@@ -8,7 +8,8 @@
8
8
  *
9
9
  * await createPool({
10
10
  * token: process.env.UPL_POOL_TOKEN!,
11
- * endpoint: process.env.UPL_API_URL!,
11
+ * apiEndpoint: process.env.UPL_API_URL!,
12
+ * pipelineEndpoint: process.env.UPL_PIPELINE_API_URL!,
12
13
  * handlers: {
13
14
  * "my-integration:invoice": async (ctx) => {
14
15
  * const buf = await ctx.downloadBuffer();
@@ -22,6 +23,8 @@ import { Pool } from "./pool.js";
22
23
  import type { PoolConfig } from "./types.js";
23
24
  export { Pool } from "./pool.js";
24
25
  export { NonRetryableError } from "./errors.js";
26
+ export { JsonLogger, noopLogger } from "./logger.js";
27
+ export type { Logger, LogLevel } from "./logger.js";
25
28
  export type { PoolConfig, JobContext, JobHandler, UploadMetaOpts, UploadMetadataPartial, UploadMetadataProto, FolderContext, PoolLifecycleEvents, PresignedUploadRequest, MetaUploadHandle, } from "./types.js";
26
29
  export declare function createPool(config: PoolConfig): Pool;
27
30
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,GAChB,MAAM,YAAY,CAAC;AAEpB,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAEnD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrD,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACpD,YAAY,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,GAChB,MAAM,YAAY,CAAC;AAEpB,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAEnD"}
package/dist/index.js CHANGED
@@ -8,7 +8,8 @@
8
8
  *
9
9
  * await createPool({
10
10
  * token: process.env.UPL_POOL_TOKEN!,
11
- * endpoint: process.env.UPL_API_URL!,
11
+ * apiEndpoint: process.env.UPL_API_URL!,
12
+ * pipelineEndpoint: process.env.UPL_PIPELINE_API_URL!,
12
13
  * handlers: {
13
14
  * "my-integration:invoice": async (ctx) => {
14
15
  * const buf = await ctx.downloadBuffer();
@@ -21,6 +22,7 @@
21
22
  import { Pool } from "./pool.js";
22
23
  export { Pool } from "./pool.js";
23
24
  export { NonRetryableError } from "./errors.js";
25
+ export { JsonLogger, noopLogger } from "./logger.js";
24
26
  export function createPool(config) {
25
27
  return new Pool(config);
26
28
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAchD,MAAM,UAAU,UAAU,CAAC,MAAkB;IAC5C,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAerD,MAAM,UAAU,UAAU,CAAC,MAAkB;IAC5C,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;AACzB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { RpcClients } from "./rpc-clients.js";
2
+ import type { Logger } from "./logger.js";
2
3
  import type { FolderContext, JobContext } from "./types.js";
3
4
  export interface JobEnvelope {
4
5
  jobId: string;
@@ -14,5 +15,5 @@ export interface JobEnvelope {
14
15
  };
15
16
  folderContext?: FolderContext;
16
17
  }
17
- export declare function createJobContext(envelope: JobEnvelope, rpc: RpcClients): JobContext;
18
+ export declare function createJobContext(envelope: JobEnvelope, rpc: RpcClients, logger: Logger): JobContext;
18
19
  //# sourceMappingURL=job-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"job-context.d.ts","sourceRoot":"","sources":["../src/job-context.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EACX,aAAa,EACb,UAAU,EAKV,MAAM,YAAY,CAAC;AAYpB,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,aAAa,CAAC,EAAE,aAAa,CAAC;CAC9B;AAED,wBAAgB,gBAAgB,CAC/B,QAAQ,EAAE,WAAW,EACrB,GAAG,EAAE,UAAU,GACb,UAAU,CA6KZ"}
1
+ {"version":3,"file":"job-context.d.ts","sourceRoot":"","sources":["../src/job-context.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EACX,aAAa,EACb,UAAU,EAKV,MAAM,YAAY,CAAC;AAYpB,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,aAAa,CAAC,EAAE,aAAa,CAAC;CAC9B;AAED,wBAAgB,gBAAgB,CAC/B,QAAQ,EAAE,WAAW,EACrB,GAAG,EAAE,UAAU,EACf,MAAM,EAAE,MAAM,GACZ,UAAU,CA6MZ"}
@@ -18,7 +18,7 @@ const META_TYPE_MAP = {
18
18
  AI_CONTENT: MetaUploadType.MetaUploadType_AI_CONTENT,
19
19
  RENDERER_CONFIG: MetaUploadType.MetaUploadType_RENDERER_CONFIG,
20
20
  };
21
- export function createJobContext(envelope, rpc) {
21
+ export function createJobContext(envelope, rpc, logger) {
22
22
  const ctx = {
23
23
  jobId: envelope.jobId,
24
24
  uploadId: envelope.uploadId,
@@ -34,25 +34,42 @@ export function createJobContext(envelope, rpc) {
34
34
  folderContext: envelope.folderContext,
35
35
  sourceUrl: envelope.sourceUrl,
36
36
  async download() {
37
+ logger.debug("source.download.start");
37
38
  const resp = await fetch(envelope.sourceUrl);
38
39
  if (!resp.ok || !resp.body) {
40
+ logger.error("source.download.failed", {
41
+ status: resp.status,
42
+ statusText: resp.statusText,
43
+ });
39
44
  throw new Error(`source download failed: ${resp.status} ${resp.statusText}`);
40
45
  }
41
46
  return resp.body;
42
47
  },
43
48
  async downloadBuffer() {
49
+ logger.debug("source.download.start", { mode: "buffer" });
44
50
  const resp = await fetch(envelope.sourceUrl);
45
51
  if (!resp.ok) {
52
+ logger.error("source.download.failed", {
53
+ status: resp.status,
54
+ statusText: resp.statusText,
55
+ });
46
56
  throw new Error(`source download failed: ${resp.status} ${resp.statusText}`);
47
57
  }
48
58
  const buf = await resp.arrayBuffer();
59
+ logger.debug("source.download.complete", { sizeBytes: buf.byteLength });
49
60
  return new Uint8Array(buf);
50
61
  },
51
62
  async downloadToFile(path) {
52
63
  const data = await ctx.downloadBuffer();
53
64
  await writeFile(path, data);
65
+ logger.debug("source.download.to_file", { path, sizeBytes: data.byteLength });
54
66
  },
55
67
  async uploadMeta(opts) {
68
+ logger.debug("meta.upload.start", {
69
+ type: opts.type,
70
+ instance: opts.instance,
71
+ filename: opts.filename,
72
+ });
56
73
  const protoType = META_TYPE_MAP[opts.type];
57
74
  const metaType = create(MetaTypeSchema, {
58
75
  type: protoType,
@@ -87,6 +104,10 @@ export function createJobContext(envelope, rpc) {
87
104
  updateToken: envelope.updateToken,
88
105
  metadataId: [meta.metadataId],
89
106
  }));
107
+ logger.info("meta.upload.complete", {
108
+ type: opts.type,
109
+ metadataId: meta.metadataId,
110
+ });
90
111
  },
91
112
  async setMetadata(metadata) {
92
113
  // Distinguish a pre-built proto from a partial: protos carry the
@@ -112,6 +133,7 @@ export function createJobContext(envelope, rpc) {
112
133
  metadata: protoMetadata,
113
134
  thumbnailGenerationVersion: thumbnailVersion,
114
135
  }));
136
+ logger.debug("metadata.set", { thumbnailVersion });
115
137
  },
116
138
  async markHasThumbnail(version) {
117
139
  await rpc.internalUploads.updateUpload(create(InternalUpdateUploadRequestSchema, {
@@ -119,6 +141,7 @@ export function createJobContext(envelope, rpc) {
119
141
  hasThumbnail: true,
120
142
  thumbnailGenerationVersion: version,
121
143
  }));
144
+ logger.info("thumbnail.marked", { version });
122
145
  },
123
146
  async setDescription(text, tags) {
124
147
  await rpc.internalUploads.updateUpload(create(InternalUpdateUploadRequestSchema, {
@@ -128,8 +151,16 @@ export function createJobContext(envelope, rpc) {
128
151
  generatedTags: tags ?? [],
129
152
  }),
130
153
  }));
154
+ logger.info("description.set", {
155
+ length: text.length,
156
+ tags: tags?.length ?? 0,
157
+ });
131
158
  },
132
159
  async withPresignedUploads(opts, callback) {
160
+ logger.debug("presigned.upload.request", {
161
+ count: opts.length,
162
+ types: opts.map((o) => o.type),
163
+ });
133
164
  const metaTypes = opts.map((opt) => create(MetaTypeSchema, {
134
165
  type: META_TYPE_MAP[opt.type],
135
166
  n: opt.instance,
@@ -155,6 +186,7 @@ export function createJobContext(envelope, rpc) {
155
186
  updateToken: envelope.updateToken,
156
187
  metadataId: requested.metaUploads.map((m) => m.metadataId),
157
188
  }));
189
+ logger.info("presigned.upload.complete", { count: handles.length });
158
190
  return result;
159
191
  },
160
192
  };
@@ -1 +1 @@
1
- {"version":3,"file":"job-context.js","sourceRoot":"","sources":["../src/job-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"job-context.js","sourceRoot":"","sources":["../src/job-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Logging interface for the SDK. Customers can plug in their own
3
+ * logger (pino, winston, console) by passing `logger` to createPool;
4
+ * by default we emit structured JSON lines to stdout/stderr so logs
5
+ * are grep-friendly in k8s.
6
+ *
7
+ * The shape mirrors the pipeline-api's logger contract for consistency
8
+ * across the upl.im stack.
9
+ */
10
+ export type LogLevel = "debug" | "info" | "warn" | "error";
11
+ export interface Logger {
12
+ debug(event: string, context?: Record<string, unknown>): void;
13
+ info(event: string, context?: Record<string, unknown>): void;
14
+ warn(event: string, context?: Record<string, unknown>): void;
15
+ error(event: string, context?: Record<string, unknown>): void;
16
+ /**
17
+ * Return a derived logger that merges these context fields into every
18
+ * subsequent log call. Used by Pool.handleDispatch to attach jobId /
19
+ * uploadId / urn to every line emitted during the job.
20
+ */
21
+ child(context: Record<string, unknown>): Logger;
22
+ }
23
+ /**
24
+ * Default JSON logger. Emits one line per call. `error` and `warn` go to
25
+ * stderr; `info` and `debug` go to stdout. Honors `UPL_LOG_LEVEL` env var
26
+ * (`debug` | `info` | `warn` | `error`) to filter out noise in prod.
27
+ */
28
+ export declare class JsonLogger implements Logger {
29
+ private readonly base;
30
+ private readonly minLevel;
31
+ constructor(base?: Record<string, unknown>, minLevel?: LogLevel);
32
+ child(context: Record<string, unknown>): Logger;
33
+ debug(event: string, context?: Record<string, unknown>): void;
34
+ info(event: string, context?: Record<string, unknown>): void;
35
+ warn(event: string, context?: Record<string, unknown>): void;
36
+ error(event: string, context?: Record<string, unknown>): void;
37
+ private shouldEmit;
38
+ private emit;
39
+ }
40
+ /**
41
+ * No-op logger for tests or callers who want silence. createPool ignores
42
+ * this if `logger` is unset and uses JsonLogger by default.
43
+ */
44
+ export declare const noopLogger: Logger;
45
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D,MAAM,WAAW,MAAM;IACtB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC9D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7D,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC9D;;;;OAIG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC;CAChD;AAmDD;;;;GAIG;AACH,qBAAa,UAAW,YAAW,MAAM;IACxC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA0B;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;gBAExB,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ;IAKnE,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM;IAI/C,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAG7D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAG5D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAG5D,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI7D,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,IAAI;CA6BZ;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,MAQxB,CAAC"}
package/dist/logger.js ADDED
@@ -0,0 +1,132 @@
1
+ /**
2
+ * Logging interface for the SDK. Customers can plug in their own
3
+ * logger (pino, winston, console) by passing `logger` to createPool;
4
+ * by default we emit structured JSON lines to stdout/stderr so logs
5
+ * are grep-friendly in k8s.
6
+ *
7
+ * The shape mirrors the pipeline-api's logger contract for consistency
8
+ * across the upl.im stack.
9
+ */
10
+ const SENSITIVE_KEYS = new Set([
11
+ "token",
12
+ "queueToken",
13
+ "queue_token",
14
+ "workerToken",
15
+ "worker_token",
16
+ "updateToken",
17
+ "update_token",
18
+ "authorization",
19
+ "Authorization",
20
+ ]);
21
+ /**
22
+ * Redact obvious secrets so a careless `logger.info("rpc.request", { headers })`
23
+ * doesn't leak the pool token to log aggregators. Best-effort; not a
24
+ * substitute for thinking about what you're logging.
25
+ */
26
+ function redact(value) {
27
+ if (value && typeof value === "object" && !Array.isArray(value)) {
28
+ const out = {};
29
+ for (const [k, v] of Object.entries(value)) {
30
+ if (SENSITIVE_KEYS.has(k)) {
31
+ out[k] = typeof v === "string" && v.length > 8
32
+ ? `${v.slice(0, 4)}…(${v.length - 4} redacted)`
33
+ : "[redacted]";
34
+ }
35
+ else if (v && typeof v === "object") {
36
+ out[k] = redact(v);
37
+ }
38
+ else {
39
+ out[k] = v;
40
+ }
41
+ }
42
+ return out;
43
+ }
44
+ if (Array.isArray(value))
45
+ return value.map(redact);
46
+ return value;
47
+ }
48
+ function serializeError(err) {
49
+ if (err instanceof Error) {
50
+ return {
51
+ name: err.name,
52
+ message: err.message,
53
+ stack: err.stack,
54
+ ...err,
55
+ };
56
+ }
57
+ return { value: String(err) };
58
+ }
59
+ /**
60
+ * Default JSON logger. Emits one line per call. `error` and `warn` go to
61
+ * stderr; `info` and `debug` go to stdout. Honors `UPL_LOG_LEVEL` env var
62
+ * (`debug` | `info` | `warn` | `error`) to filter out noise in prod.
63
+ */
64
+ export class JsonLogger {
65
+ base;
66
+ minLevel;
67
+ constructor(base = {}, minLevel) {
68
+ this.base = base;
69
+ this.minLevel = minLevel ?? process.env.UPL_LOG_LEVEL ?? "info";
70
+ }
71
+ child(context) {
72
+ return new JsonLogger({ ...this.base, ...context }, this.minLevel);
73
+ }
74
+ debug(event, context) {
75
+ this.emit("debug", event, context);
76
+ }
77
+ info(event, context) {
78
+ this.emit("info", event, context);
79
+ }
80
+ warn(event, context) {
81
+ this.emit("warn", event, context);
82
+ }
83
+ error(event, context) {
84
+ this.emit("error", event, context);
85
+ }
86
+ shouldEmit(level) {
87
+ const order = {
88
+ debug: 10,
89
+ info: 20,
90
+ warn: 30,
91
+ error: 40,
92
+ };
93
+ return order[level] >= order[this.minLevel];
94
+ }
95
+ emit(level, event, context) {
96
+ if (!this.shouldEmit(level))
97
+ return;
98
+ const merged = {
99
+ ...this.base,
100
+ ...(context ? redact(context) : {}),
101
+ };
102
+ if (merged.err !== undefined) {
103
+ merged.err = serializeError(merged.err);
104
+ }
105
+ if (merged.error !== undefined && merged.error instanceof Error) {
106
+ merged.error = serializeError(merged.error);
107
+ }
108
+ const line = JSON.stringify({
109
+ ts: new Date().toISOString(),
110
+ level,
111
+ logger: "@xeonr/upload-pool-sdk",
112
+ event,
113
+ ...merged,
114
+ });
115
+ // eslint-disable-next-line no-console
116
+ (level === "error" || level === "warn" ? console.error : console.log)(line);
117
+ }
118
+ }
119
+ /**
120
+ * No-op logger for tests or callers who want silence. createPool ignores
121
+ * this if `logger` is unset and uses JsonLogger by default.
122
+ */
123
+ export const noopLogger = {
124
+ debug() { },
125
+ info() { },
126
+ warn() { },
127
+ error() { },
128
+ child() {
129
+ return noopLogger;
130
+ },
131
+ };
132
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
package/dist/pool.d.ts CHANGED
@@ -3,6 +3,7 @@ export declare class Pool {
3
3
  private readonly config;
4
4
  private readonly rpc;
5
5
  private readonly sse;
6
+ private readonly logger;
6
7
  private inFlight;
7
8
  private readonly workerId;
8
9
  private readonly capabilities;
@@ -1 +1 @@
1
- {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAGX,UAAU,EACV,MAAM,YAAY,CAAC;AAEpB,qBAAa,IAAI;IAChB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAY;IAChC,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAW;gBAE5B,MAAM,EAAE,UAAU;IAwBxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAIb,cAAc;IA+C5B,OAAO,CAAC,cAAc;YAIR,WAAW;CAqBzB"}
1
+ {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAGX,UAAU,EACV,MAAM,YAAY,CAAC;AAEpB,qBAAa,IAAI;IAChB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAY;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAW;gBAE5B,MAAM,EAAE,UAAU;IA6CxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAKb,cAAc;IA2E5B,OAAO,CAAC,cAAc;YAIR,WAAW;CAwBzB"}
package/dist/pool.js CHANGED
@@ -3,6 +3,11 @@
3
3
  * to the pool's job stream, dispatches job:dispatch events to the right
4
4
  * handler keyed by content type URN, and orchestrates accept/complete/
5
5
  * report-error against IntegrationQueueService.
6
+ *
7
+ * Every transition emits a structured log line via the injected Logger
8
+ * so a worker's k8s logs surface SSE connection state, dispatched jobs,
9
+ * handler outcomes, and RPC errors without callers needing to wire up
10
+ * their own onError hook.
6
11
  */
7
12
  import { hostname } from "node:os";
8
13
  import { randomBytes } from "node:crypto";
@@ -12,52 +17,90 @@ import { createRpcClients } from "./rpc-clients.js";
12
17
  import { SseClient } from "./sse-client.js";
13
18
  import { createJobContext } from "./job-context.js";
14
19
  import { NonRetryableError } from "./errors.js";
20
+ import { JsonLogger } from "./logger.js";
15
21
  export class Pool {
16
22
  config;
17
23
  rpc;
18
24
  sse;
25
+ logger;
19
26
  inFlight = 0;
20
27
  workerId;
21
28
  capabilities;
22
29
  constructor(config) {
23
30
  this.config = {
24
31
  concurrency: 1,
25
- onError: defaultErrorHandler,
26
32
  ...config,
27
33
  };
28
34
  this.workerId = config.workerId ?? `${hostname()}-${randomBytes(4).toString("hex")}`;
29
35
  this.capabilities = Object.keys(config.handlers);
30
- this.rpc = createRpcClients(config.endpoint);
36
+ this.logger = (config.logger ?? new JsonLogger()).child({
37
+ workerId: this.workerId,
38
+ });
39
+ this.rpc = createRpcClients({
40
+ apiEndpoint: config.apiEndpoint,
41
+ pipelineEndpoint: config.pipelineEndpoint,
42
+ logger: this.logger,
43
+ });
31
44
  this.sse = new SseClient({
32
- endpoint: config.endpoint,
45
+ endpoint: config.pipelineEndpoint,
33
46
  token: config.token,
34
47
  workerId: this.workerId,
35
48
  capabilities: this.capabilities,
49
+ logger: this.logger.child({ component: "sse" }),
36
50
  onConnected: () => {
37
- /* lifecycle: future event emitter hook */
51
+ /* logged inside sse-client; callers can hook lifecycle here later */
38
52
  },
39
53
  onDisconnected: () => {
40
- /* lifecycle: future event emitter hook */
54
+ /* logged inside sse-client */
41
55
  },
42
56
  onJobDispatch: (payload) => this.handleDispatch(payload),
43
57
  });
58
+ this.logger.info("sdk.boot", {
59
+ apiEndpoint: config.apiEndpoint,
60
+ pipelineEndpoint: config.pipelineEndpoint,
61
+ capabilities: this.capabilities,
62
+ concurrency: this.config.concurrency,
63
+ version: SDK_VERSION,
64
+ });
65
+ if (this.capabilities.length === 0) {
66
+ this.logger.warn("sdk.boot.no_handlers", {
67
+ note: "no handlers registered — worker will not receive any jobs",
68
+ });
69
+ }
44
70
  }
45
71
  async start() {
72
+ this.logger.info("sdk.start");
46
73
  this.sse.start();
47
74
  }
48
75
  async stop() {
76
+ this.logger.info("sdk.stop", { inFlight: this.inFlight });
49
77
  this.sse.stop();
50
78
  }
51
79
  async handleDispatch(envelope) {
80
+ const jobLogger = this.logger.child({
81
+ jobId: envelope.jobId,
82
+ uploadId: envelope.uploadId,
83
+ urn: envelope.contentTypeContext.urn,
84
+ });
52
85
  if (this.inFlight >= (this.config.concurrency ?? 1)) {
53
86
  // Pipeline only dispatches to idle workers (zero in-flight), so
54
87
  // this branch is defensive — if it ever fires we silently
55
88
  // drop the dispatch and let the pipeline timeout requeue.
89
+ jobLogger.warn("job.dispatched.dropped_at_capacity", {
90
+ inFlight: this.inFlight,
91
+ concurrency: this.config.concurrency,
92
+ });
56
93
  return;
57
94
  }
58
95
  this.inFlight++;
96
+ jobLogger.info("job.dispatched", {
97
+ filename: envelope.filename,
98
+ mimeType: envelope.mimeType,
99
+ inFlight: this.inFlight,
100
+ });
59
101
  const handler = this.resolveHandler(envelope.contentTypeContext.urn);
60
- const ctx = createJobContext(envelope, this.rpc);
102
+ const ctx = createJobContext(envelope, this.rpc, jobLogger);
103
+ const startedAt = Date.now();
61
104
  try {
62
105
  // AcceptJob — clears the pipeline's accept-timeout.
63
106
  await this.rpc.integrationQueue.acceptJob(create(AcceptJobRequestSchema, {
@@ -65,8 +108,12 @@ export class Pool {
65
108
  workerId: this.workerId,
66
109
  queueToken: this.config.token,
67
110
  }));
111
+ jobLogger.info("job.accepted");
68
112
  if (!handler) {
69
- await this.reportError(envelope.jobId, ctx, new NonRetryableError(`no handler for URN ${envelope.contentTypeContext.urn}`));
113
+ jobLogger.warn("job.unhandled", {
114
+ availableHandlers: this.capabilities,
115
+ });
116
+ await this.reportError(envelope.jobId, ctx, jobLogger, new NonRetryableError(`no handler for URN ${envelope.contentTypeContext.urn}`));
70
117
  return;
71
118
  }
72
119
  await handler(ctx);
@@ -75,9 +122,16 @@ export class Pool {
75
122
  workerId: this.workerId,
76
123
  queueToken: this.config.token,
77
124
  }));
125
+ jobLogger.info("job.completed", {
126
+ durationMs: Date.now() - startedAt,
127
+ });
78
128
  }
79
129
  catch (err) {
80
- await this.reportError(envelope.jobId, ctx, err);
130
+ jobLogger.error("job.failed", {
131
+ err,
132
+ durationMs: Date.now() - startedAt,
133
+ });
134
+ await this.reportError(envelope.jobId, ctx, jobLogger, err);
81
135
  }
82
136
  finally {
83
137
  this.inFlight--;
@@ -86,7 +140,7 @@ export class Pool {
86
140
  resolveHandler(urn) {
87
141
  return this.config.handlers[urn] ?? this.config.onUnhandled;
88
142
  }
89
- async reportError(jobId, ctx, err) {
143
+ async reportError(jobId, ctx, jobLogger, err) {
90
144
  const retry = !(err instanceof NonRetryableError);
91
145
  this.config.onError?.(err, ctx);
92
146
  try {
@@ -97,15 +151,13 @@ export class Pool {
97
151
  error: err.message,
98
152
  retry,
99
153
  }));
154
+ jobLogger.info("job.error_reported", { retry });
100
155
  }
101
156
  catch (rptErr) {
157
+ jobLogger.error("job.error_report_failed", { err: rptErr });
102
158
  this.config.onError?.(rptErr, ctx);
103
159
  }
104
160
  }
105
161
  }
106
- function defaultErrorHandler(err, ctx) {
107
- const where = ctx ? `job ${ctx.jobId} (${ctx.contentType.urn})` : "pool";
108
- // eslint-disable-next-line no-console
109
- console.error(`[@xeonr/upload-pool-sdk] ${where}: ${err.message}`);
110
- }
162
+ const SDK_VERSION = "1.2.0";
111
163
  //# sourceMappingURL=pool.js.map
package/dist/pool.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pool.js","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pool.js","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,15 @@
1
1
  import { type Client } from "@connectrpc/connect";
2
2
  import { InternalUploadsService } from "./protocol/uplim/api/v1/uploads_pb.js";
3
3
  import { IntegrationQueueService } from "./protocol/uplim/workflow/v1/integration_queue_pb.js";
4
+ import type { Logger } from "./logger.js";
4
5
  export interface RpcClients {
5
6
  internalUploads: Client<typeof InternalUploadsService>;
6
7
  integrationQueue: Client<typeof IntegrationQueueService>;
7
8
  }
8
- export declare function createRpcClients(endpoint: string): RpcClients;
9
+ export interface RpcClientsConfig {
10
+ apiEndpoint: string;
11
+ pipelineEndpoint: string;
12
+ logger: Logger;
13
+ }
14
+ export declare function createRpcClients(config: RpcClientsConfig): RpcClients;
9
15
  //# sourceMappingURL=rpc-clients.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rpc-clients.d.ts","sourceRoot":"","sources":["../src/rpc-clients.ts"],"names":[],"mappings":"AAUA,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,sDAAsD,CAAC;AAE/F,MAAM,WAAW,UAAU;IAC1B,eAAe,EAAE,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;IACvD,gBAAgB,EAAE,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;CACzD;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAS7D"}
1
+ {"version":3,"file":"rpc-clients.d.ts","sourceRoot":"","sources":["../src/rpc-clients.ts"],"names":[],"mappings":"AAqBA,OAAO,EAEN,KAAK,MAAM,EAIX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,sDAAsD,CAAC;AAC/F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,UAAU;IAC1B,eAAe,EAAE,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;IACvD,gBAAgB,EAAE,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;CACzD;AA+BD,MAAM,WAAW,gBAAgB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,UAAU,CAiBrE"}