@ductape/sdk 0.0.4-v106 → 0.0.4-v108
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/api/services/processorApi.service.d.ts +316 -0
- package/dist/api/services/processorApi.service.js +222 -0
- package/dist/api/services/processorApi.service.js.map +1 -1
- package/dist/api/services/productsApi.service.js +17 -2
- package/dist/api/services/productsApi.service.js.map +1 -1
- package/dist/api/urls.d.ts +16 -0
- package/dist/api/urls.js +20 -3
- package/dist/api/urls.js.map +1 -1
- package/dist/brokers/brokers.service.d.ts +17 -2
- package/dist/brokers/brokers.service.js +236 -29
- package/dist/brokers/brokers.service.js.map +1 -1
- package/dist/brokers/types/index.d.ts +249 -0
- package/dist/brokers/utils/providers/rabbitmq.service.js +1 -0
- package/dist/brokers/utils/providers/rabbitmq.service.js.map +1 -1
- package/dist/graph/graphs.service.d.ts +1 -1
- package/dist/graph/graphs.service.js +37 -5
- package/dist/graph/graphs.service.js.map +1 -1
- package/dist/index.d.ts +13 -1
- package/dist/index.js +39 -3
- package/dist/index.js.map +1 -1
- package/dist/logs/logs.types.d.ts +2 -0
- package/dist/logs/logs.types.js +2 -0
- package/dist/logs/logs.types.js.map +1 -1
- package/dist/products/services/products.service.js +27 -11
- package/dist/products/services/products.service.js.map +1 -1
- package/dist/products/validators/joi-validators/create.productMessageBrokerTopic.validator.js +1 -0
- package/dist/products/validators/joi-validators/create.productMessageBrokerTopic.validator.js.map +1 -1
- package/dist/secrets/secrets.resolver.js +3 -0
- package/dist/secrets/secrets.resolver.js.map +1 -1
- package/dist/sessions/index.d.ts +1 -1
- package/dist/sessions/index.js +4 -1
- package/dist/sessions/index.js.map +1 -1
- package/dist/sessions/sessions.resolver.d.ts +31 -0
- package/dist/sessions/sessions.resolver.js +230 -1
- package/dist/sessions/sessions.resolver.js.map +1 -1
- package/dist/sessions/sessions.service.d.ts +15 -1
- package/dist/sessions/sessions.service.js +40 -1
- package/dist/sessions/sessions.service.js.map +1 -1
- package/dist/sessions/types/index.d.ts +24 -0
- package/dist/types/processor.types.d.ts +1 -0
- package/package.json +3 -1
|
@@ -22,6 +22,8 @@ const processorApi_service_1 = require("../api/services/processorApi.service");
|
|
|
22
22
|
const secrets_1 = require("../secrets");
|
|
23
23
|
const cache_manager_1 = require("../cache/cache.manager");
|
|
24
24
|
const sessions_1 = require("../sessions");
|
|
25
|
+
/** Log prefix for broker operations */
|
|
26
|
+
const LOG_PREFIX = '[BrokersService]';
|
|
25
27
|
/**
|
|
26
28
|
* Error class for broker operations
|
|
27
29
|
*/
|
|
@@ -80,6 +82,14 @@ class BrokersService {
|
|
|
80
82
|
this.cacheManager = null;
|
|
81
83
|
/** Private keys per product for cache encryption */
|
|
82
84
|
this.privateKeys = new Map();
|
|
85
|
+
/** Connection pool for broker services - keyed by broker type + config hash */
|
|
86
|
+
this.brokerServicePool = new Map();
|
|
87
|
+
/** Cache for initialized broker configs - keyed by "productTag:brokerTag:envSlug" */
|
|
88
|
+
this.initializedBrokerCache = new Map();
|
|
89
|
+
/** Cache for initialized products - keyed by productTag */
|
|
90
|
+
this.initializedProducts = new Set();
|
|
91
|
+
console.log(`${LOG_PREFIX} Initializing BrokersService...`);
|
|
92
|
+
console.log(`${LOG_PREFIX} Config: workspace_id=${config.workspace_id}, user_id=${config.user_id}, env_type=${config.env_type}, has_access_key=${!!config.access_key}, has_token=${!!config.token}`);
|
|
83
93
|
this.config = config;
|
|
84
94
|
this.productBuilderService = new products_service_1.default({
|
|
85
95
|
workspace_id: config.workspace_id,
|
|
@@ -88,8 +98,11 @@ class BrokersService {
|
|
|
88
98
|
token: config.token,
|
|
89
99
|
env_type: config.env_type,
|
|
90
100
|
redis_client: config.redis_client,
|
|
101
|
+
access_key: config.access_key,
|
|
91
102
|
});
|
|
103
|
+
console.log(`${LOG_PREFIX} ProductsBuilderService initialized`);
|
|
92
104
|
this.processorApiService = new processorApi_service_1.ProcessorApiService(config.env_type);
|
|
105
|
+
console.log(`${LOG_PREFIX} ProcessorApiService initialized`);
|
|
93
106
|
// Initialize CacheManager if Redis client is provided
|
|
94
107
|
if (config.redis_client) {
|
|
95
108
|
this.cacheManager = new cache_manager_1.CacheManager({
|
|
@@ -100,7 +113,9 @@ class BrokersService {
|
|
|
100
113
|
env_type: config.env_type || '',
|
|
101
114
|
redis_client: config.redis_client,
|
|
102
115
|
});
|
|
116
|
+
console.log(`${LOG_PREFIX} CacheManager initialized with Redis client`);
|
|
103
117
|
}
|
|
118
|
+
console.log(`${LOG_PREFIX} BrokersService initialization complete`);
|
|
104
119
|
}
|
|
105
120
|
/**
|
|
106
121
|
* Get user access credentials
|
|
@@ -114,13 +129,38 @@ class BrokersService {
|
|
|
114
129
|
};
|
|
115
130
|
}
|
|
116
131
|
/**
|
|
117
|
-
* Initialize product and get broker configuration
|
|
132
|
+
* Initialize product and get broker configuration (with caching)
|
|
118
133
|
*/
|
|
119
|
-
async initializeBroker(productTag, envSlug, event) {
|
|
134
|
+
async initializeBroker(productTag, envSlug, event, message) {
|
|
135
|
+
var _a, _b;
|
|
120
136
|
// Parse event to get broker and topic tags
|
|
121
137
|
const { brokerTag, topicTag } = (0, broker_util_1.parseEventString)(event);
|
|
122
|
-
//
|
|
123
|
-
|
|
138
|
+
// Check cache first (keyed by product:broker:env)
|
|
139
|
+
const cacheKey = `${productTag}:${brokerTag}:${envSlug}`;
|
|
140
|
+
const cached = this.initializedBrokerCache.get(cacheKey);
|
|
141
|
+
if (cached) {
|
|
142
|
+
console.log(`${LOG_PREFIX} initializeBroker() - using cached config for ${cacheKey}`);
|
|
143
|
+
// For cached brokers, just check if topic exists (might be new topic)
|
|
144
|
+
let topic = (_a = cached.broker.topics) === null || _a === void 0 ? void 0 : _a.find(t => t.tag === topicTag);
|
|
145
|
+
if (!topic) {
|
|
146
|
+
if (message) {
|
|
147
|
+
this.ensureTopicRegistered(brokerTag, topicTag, message);
|
|
148
|
+
}
|
|
149
|
+
topic = { tag: topicTag, name: topicTag, sample: message || {} };
|
|
150
|
+
}
|
|
151
|
+
// Determine topic URL
|
|
152
|
+
let topicUrl = topic.name;
|
|
153
|
+
if (cached.brokerEnv.type === types_1.MessageBrokerTypes.AWS_SQS) {
|
|
154
|
+
topicUrl = (0, broker_util_1.getSqsQueueUrl)(topic, envSlug);
|
|
155
|
+
}
|
|
156
|
+
return Object.assign(Object.assign({}, cached), { topic, topicUrl });
|
|
157
|
+
}
|
|
158
|
+
console.log(`${LOG_PREFIX} initializeBroker() - fresh initialization for ${cacheKey}`);
|
|
159
|
+
// Initialize product only if not already done
|
|
160
|
+
if (!this.initializedProducts.has(productTag)) {
|
|
161
|
+
await this.productBuilderService.initializeProductByTag(productTag);
|
|
162
|
+
this.initializedProducts.add(productTag);
|
|
163
|
+
}
|
|
124
164
|
this.productTag = productTag;
|
|
125
165
|
this.productId = this.productBuilderService.fetchProductId() || '';
|
|
126
166
|
this.privateKey = this.productBuilderService.fetchPrivateKey();
|
|
@@ -129,15 +169,21 @@ class BrokersService {
|
|
|
129
169
|
if (!broker) {
|
|
130
170
|
throw new BrokerError(`Message Broker ${brokerTag} not found`, 'BROKER_NOT_FOUND');
|
|
131
171
|
}
|
|
172
|
+
if (!broker.envs || !Array.isArray(broker.envs)) {
|
|
173
|
+
throw new BrokerError(`Message Broker ${brokerTag} has no environments configured`, 'BROKER_NO_ENVS');
|
|
174
|
+
}
|
|
132
175
|
// Get environment-specific broker config
|
|
133
176
|
const brokerEnv = broker.envs.find((el) => el.slug === envSlug);
|
|
134
177
|
if (!brokerEnv) {
|
|
135
178
|
throw new BrokerError(`Broker environment for ${envSlug} not found`, 'BROKER_ENV_NOT_FOUND');
|
|
136
179
|
}
|
|
137
|
-
//
|
|
138
|
-
|
|
180
|
+
// Check if topic exists in broker's topics array
|
|
181
|
+
let topic = (_b = broker.topics) === null || _b === void 0 ? void 0 : _b.find(t => t.tag === topicTag);
|
|
139
182
|
if (!topic) {
|
|
140
|
-
|
|
183
|
+
if (message) {
|
|
184
|
+
this.ensureTopicRegistered(brokerTag, topicTag, message);
|
|
185
|
+
}
|
|
186
|
+
topic = { tag: topicTag, name: topicTag, sample: message || {} };
|
|
141
187
|
}
|
|
142
188
|
// Resolve any secret references in broker config
|
|
143
189
|
let resolvedConfig = brokerEnv.config;
|
|
@@ -148,18 +194,24 @@ class BrokersService {
|
|
|
148
194
|
resolvedConfig = resolved.value;
|
|
149
195
|
}
|
|
150
196
|
else {
|
|
151
|
-
throw new BrokerError(`Broker configuration contains secret references but secrets service is not initialized
|
|
152
|
-
`Please ensure the Ductape client is properly initialized.`, 'SECRETS_NOT_INITIALIZED');
|
|
197
|
+
throw new BrokerError(`Broker configuration contains secret references but secrets service is not initialized.`, 'SECRETS_NOT_INITIALIZED');
|
|
153
198
|
}
|
|
154
199
|
}
|
|
155
|
-
// Create
|
|
200
|
+
// Create resolved broker env
|
|
156
201
|
const resolvedBrokerEnv = Object.assign(Object.assign({}, brokerEnv), { config: resolvedConfig });
|
|
157
202
|
// Determine the topic URL/name
|
|
158
203
|
let topicUrl = topic.name;
|
|
159
|
-
// Special handling for AWS SQS which requires queue URLs
|
|
160
204
|
if (brokerEnv.type === types_1.MessageBrokerTypes.AWS_SQS) {
|
|
161
205
|
topicUrl = (0, broker_util_1.getSqsQueueUrl)(topic, envSlug);
|
|
162
206
|
}
|
|
207
|
+
// Cache the result (without topic, as topics may vary per call)
|
|
208
|
+
this.initializedBrokerCache.set(cacheKey, {
|
|
209
|
+
broker,
|
|
210
|
+
topic, // Store last topic, but will be re-evaluated on cache hit
|
|
211
|
+
brokerEnv: resolvedBrokerEnv,
|
|
212
|
+
topicUrl,
|
|
213
|
+
});
|
|
214
|
+
console.log(`${LOG_PREFIX} initializeBroker() complete - cached for future calls`);
|
|
163
215
|
return { broker, topic, brokerEnv: resolvedBrokerEnv, topicUrl };
|
|
164
216
|
}
|
|
165
217
|
/**
|
|
@@ -188,17 +240,58 @@ class BrokersService {
|
|
|
188
240
|
return { expiry: cache.expiry };
|
|
189
241
|
}
|
|
190
242
|
/**
|
|
191
|
-
*
|
|
243
|
+
* Generate a cache key for the broker service pool
|
|
244
|
+
*/
|
|
245
|
+
getBrokerPoolKey(type, config) {
|
|
246
|
+
var _a;
|
|
247
|
+
// Use type + url/host as the key (url for RabbitMQ, host for others)
|
|
248
|
+
const configKey = (config === null || config === void 0 ? void 0 : config.url) || (config === null || config === void 0 ? void 0 : config.host) || ((_a = config === null || config === void 0 ? void 0 : config.brokers) === null || _a === void 0 ? void 0 : _a[0]) || JSON.stringify(config);
|
|
249
|
+
return `${type}:${configKey}`;
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Get or create broker service instance (with connection pooling)
|
|
192
253
|
*/
|
|
193
254
|
async getBrokerService(type, config) {
|
|
194
255
|
if ((0, broker_util_1.isBrowser)()) {
|
|
195
256
|
throw new BrokerError('Broker operations are not supported in browser environment', 'BROWSER_NOT_SUPPORTED');
|
|
196
257
|
}
|
|
258
|
+
// Check if we have a cached connection
|
|
259
|
+
const poolKey = this.getBrokerPoolKey(type, config);
|
|
260
|
+
const existingService = this.brokerServicePool.get(poolKey);
|
|
261
|
+
if (existingService) {
|
|
262
|
+
console.log(`${LOG_PREFIX} Reusing existing broker connection from pool`);
|
|
263
|
+
return existingService;
|
|
264
|
+
}
|
|
265
|
+
console.log(`${LOG_PREFIX} Creating new broker connection (pool key: ${poolKey.substring(0, 50)}...)`);
|
|
197
266
|
const createBrokerService = await (0, broker_util_1.loadBrokerService)();
|
|
198
267
|
if (!createBrokerService) {
|
|
199
268
|
throw new BrokerError('Failed to load broker service', 'BROKER_SERVICE_LOAD_FAILED');
|
|
200
269
|
}
|
|
201
|
-
|
|
270
|
+
const service = createBrokerService(type, config);
|
|
271
|
+
// Store in pool for reuse
|
|
272
|
+
this.brokerServicePool.set(poolKey, service);
|
|
273
|
+
return service;
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Auto-register a topic in the background (fire-and-forget)
|
|
277
|
+
* This is intentionally lightweight - no pre-check, no post-fetch
|
|
278
|
+
*/
|
|
279
|
+
ensureTopicRegistered(brokerTag, topicTag, message) {
|
|
280
|
+
const fullTag = `${brokerTag}:${topicTag}`;
|
|
281
|
+
// Fire-and-forget: don't await, let it run in background
|
|
282
|
+
this.productBuilderService.createMessageBrokerTopic({
|
|
283
|
+
tag: fullTag,
|
|
284
|
+
name: topicTag,
|
|
285
|
+
description: `Auto-registered topic for ${fullTag}`,
|
|
286
|
+
sample: JSON.stringify(message || {}),
|
|
287
|
+
idempotent: false,
|
|
288
|
+
}).then(() => {
|
|
289
|
+
console.log(`${LOG_PREFIX} ensureTopicRegistered: topic ${fullTag} registered`);
|
|
290
|
+
}).catch((error) => {
|
|
291
|
+
// Silently ignore - topic might already exist or registration failed
|
|
292
|
+
// Either way, the publish should proceed
|
|
293
|
+
console.log(`${LOG_PREFIX} ensureTopicRegistered: ${fullTag} registration skipped (${(error === null || error === void 0 ? void 0 : error.message) || 'already exists'})`);
|
|
294
|
+
});
|
|
202
295
|
}
|
|
203
296
|
/**
|
|
204
297
|
* Auto-register a producer if it doesn't exist
|
|
@@ -244,21 +337,34 @@ class BrokersService {
|
|
|
244
337
|
* Publish a message to a broker topic
|
|
245
338
|
*/
|
|
246
339
|
async publish(options) {
|
|
247
|
-
var _a, _b;
|
|
340
|
+
var _a, _b, _c, _d, _e;
|
|
248
341
|
const process_id = (0, processor_utils_1.generateObjectId)();
|
|
249
342
|
const start = Date.now();
|
|
250
343
|
const { cache } = options;
|
|
251
344
|
let sessionLogFields = {};
|
|
252
345
|
let resolvedMessage = options.message;
|
|
346
|
+
console.log(`${LOG_PREFIX} publish() called`);
|
|
347
|
+
console.log(`${LOG_PREFIX} product: ${options.product}`);
|
|
348
|
+
console.log(`${LOG_PREFIX} env: ${options.env}`);
|
|
349
|
+
console.log(`${LOG_PREFIX} event: ${options.event}`);
|
|
350
|
+
console.log(`${LOG_PREFIX} hasSession: ${!!options.session}`);
|
|
351
|
+
console.log(`${LOG_PREFIX} hasCache: ${!!cache}`);
|
|
352
|
+
console.log(`${LOG_PREFIX} process_id: ${process_id}`);
|
|
353
|
+
// Parse event string early to have broker/topic tags available for error logging
|
|
354
|
+
const { brokerTag, topicTag } = (0, broker_util_1.parseEventString)(options.event);
|
|
355
|
+
console.log(`${LOG_PREFIX} Parsed -> brokerTag: ${brokerTag}, topicTag: ${topicTag}`);
|
|
253
356
|
try {
|
|
254
|
-
|
|
255
|
-
const {
|
|
357
|
+
console.log(`${LOG_PREFIX} Calling initializeBroker...`);
|
|
358
|
+
const { broker, topic, brokerEnv, topicUrl } = await this.initializeBroker(options.product, options.env, options.event, options.message);
|
|
359
|
+
console.log(`${LOG_PREFIX} initializeBroker completed successfully`);
|
|
360
|
+
console.log(`${LOG_PREFIX} broker.tag: ${broker.tag}, brokerEnv.type: ${brokerEnv.type}, topicUrl: ${topicUrl}`);
|
|
256
361
|
// Store private key for cache operations
|
|
257
362
|
if (this.privateKey) {
|
|
258
363
|
this.privateKeys.set(options.product, this.privateKey);
|
|
259
364
|
}
|
|
260
365
|
// Process session if provided - verify and resolve $Session{} references
|
|
261
366
|
if (options.session && this.privateKey) {
|
|
367
|
+
console.log(`${LOG_PREFIX} Processing session...`);
|
|
262
368
|
// Convert session object { tag, token } to string format "tag:token"
|
|
263
369
|
const sessionToken = `${options.session.tag}:${options.session.token}`;
|
|
264
370
|
const sessionResult = await (0, sessions_1.processSessionForExecution)(sessionToken, this.privateKey, { message: options.message }, options.env, {
|
|
@@ -268,18 +374,25 @@ class BrokersService {
|
|
|
268
374
|
},
|
|
269
375
|
});
|
|
270
376
|
if (sessionResult.error) {
|
|
377
|
+
console.error(`${LOG_PREFIX} Session validation failed: ${sessionResult.error}`);
|
|
271
378
|
throw new BrokerError(`Session validation failed: ${sessionResult.error}`, 'SESSION_INVALID');
|
|
272
379
|
}
|
|
273
380
|
sessionLogFields = sessionResult.logFields;
|
|
274
381
|
resolvedMessage = sessionResult.input.message;
|
|
382
|
+
console.log(`${LOG_PREFIX} Session processed successfully`);
|
|
275
383
|
}
|
|
276
384
|
// Auto-register producer if not exists
|
|
385
|
+
console.log(`${LOG_PREFIX} Ensuring producer is registered...`);
|
|
277
386
|
await this.ensureProducerRegistered(brokerTag, topicTag, options.producer);
|
|
387
|
+
console.log(`${LOG_PREFIX} Producer registration check complete`);
|
|
388
|
+
console.log(`${LOG_PREFIX} Initializing log service...`);
|
|
278
389
|
this.initializeLogService();
|
|
279
|
-
const baseLogs = Object.assign({ product_tag: options.product, product_id: this.productId, workspace_id: this.config.workspace_id, env: options.env, process_id, type: types_2.LogEventTypes.
|
|
390
|
+
const baseLogs = Object.assign({ product_tag: options.product, product_id: this.productId, workspace_id: this.config.workspace_id, env: options.env, process_id, type: types_2.LogEventTypes.PRODUCER, parent_tag: brokerTag, child_tag: topicTag, data: { event: options.event } }, sessionLogFields);
|
|
280
391
|
this.logService.add(Object.assign(Object.assign({}, baseLogs), { start, message: 'Publish to broker - initiated', status: types_2.LogEventStatus.PROCESSING }));
|
|
392
|
+
console.log(`${LOG_PREFIX} Log entry added: initiated`);
|
|
281
393
|
// Check cache for idempotency (prevent duplicate publishes with same data)
|
|
282
394
|
if (cache && this.cacheManager && this.privateKey) {
|
|
395
|
+
console.log(`${LOG_PREFIX} Checking cache for idempotency...`);
|
|
283
396
|
const cacheConfig = await this.validateCache(cache);
|
|
284
397
|
const cacheOptions = {
|
|
285
398
|
cache_tag: cache,
|
|
@@ -293,22 +406,58 @@ class BrokersService {
|
|
|
293
406
|
};
|
|
294
407
|
const cached = await this.cacheManager.fetch(cacheOptions);
|
|
295
408
|
if (cached.hit && cached.data) {
|
|
409
|
+
console.log(`${LOG_PREFIX} Cache HIT - returning cached result`);
|
|
296
410
|
const end = Date.now();
|
|
297
411
|
this.logService.add(Object.assign(Object.assign({}, baseLogs), { start,
|
|
298
412
|
end, message: `Publish to broker - cache hit (${cached.source})`, successful_execution: true, status: types_2.LogEventStatus.SUCCESS, data: { event: options.event, cache_source: cached.source } }));
|
|
299
413
|
this.logService.publish();
|
|
300
414
|
return cached.data;
|
|
301
415
|
}
|
|
416
|
+
console.log(`${LOG_PREFIX} Cache MISS - proceeding with publish`);
|
|
417
|
+
}
|
|
418
|
+
// Track the message in the database BEFORE publishing so we have the message_id
|
|
419
|
+
let trackedMessage = null;
|
|
420
|
+
const producerTag = ((_a = options.producer) === null || _a === void 0 ? void 0 : _a.tag) || `producer-${brokerTag}-${topicTag}`;
|
|
421
|
+
try {
|
|
422
|
+
console.log(`${LOG_PREFIX} Tracking message in database...`);
|
|
423
|
+
trackedMessage = await this.processorApiService.trackBrokerMessage({
|
|
424
|
+
workspace_id: this.config.workspace_id,
|
|
425
|
+
product_id: this.productId,
|
|
426
|
+
product_tag: options.product,
|
|
427
|
+
env: options.env,
|
|
428
|
+
broker_tag: brokerTag,
|
|
429
|
+
topic_tag: topicTag,
|
|
430
|
+
event: options.event,
|
|
431
|
+
producer_tag: producerTag,
|
|
432
|
+
message: resolvedMessage,
|
|
433
|
+
private_key: this.privateKey,
|
|
434
|
+
process_id,
|
|
435
|
+
session_tag: (_b = options.session) === null || _b === void 0 ? void 0 : _b.tag,
|
|
436
|
+
metadata: { cache: options.cache },
|
|
437
|
+
}, this.getUserAccess());
|
|
438
|
+
console.log(`${LOG_PREFIX} Message tracked with ID: ${trackedMessage === null || trackedMessage === void 0 ? void 0 : trackedMessage.message_id}`);
|
|
439
|
+
}
|
|
440
|
+
catch (trackError) {
|
|
441
|
+
// Non-blocking: log error but continue with the publish
|
|
442
|
+
console.warn(`${LOG_PREFIX} Failed to track message (non-blocking): ${trackError}`);
|
|
302
443
|
}
|
|
444
|
+
// Add the message_id to the message so consumers can track it
|
|
445
|
+
const messageWithTracking = Object.assign(Object.assign({}, resolvedMessage), { __ductape_message_id: trackedMessage === null || trackedMessage === void 0 ? void 0 : trackedMessage.message_id });
|
|
303
446
|
// Get broker service and publish
|
|
447
|
+
console.log(`${LOG_PREFIX} Getting broker service for type: ${brokerEnv.type}`);
|
|
448
|
+
console.log(`${LOG_PREFIX} Broker config keys: ${Object.keys(brokerEnv.config || {}).join(', ') || 'EMPTY'}`);
|
|
449
|
+
console.log(`${LOG_PREFIX} Broker config.url exists: ${!!((_c = brokerEnv.config) === null || _c === void 0 ? void 0 : _c.url)}`);
|
|
304
450
|
const brokerService = await this.getBrokerService(brokerEnv.type, brokerEnv.config);
|
|
305
|
-
|
|
451
|
+
console.log(`${LOG_PREFIX} Publishing to topic: ${topicUrl}`);
|
|
452
|
+
await brokerService.publish(topicUrl, messageWithTracking);
|
|
453
|
+
console.log(`${LOG_PREFIX} Message published successfully`);
|
|
306
454
|
const result = {
|
|
307
455
|
success: true,
|
|
308
456
|
process_id,
|
|
309
457
|
};
|
|
310
458
|
// Store in cache for idempotency
|
|
311
459
|
if (cache && this.cacheManager && this.privateKey) {
|
|
460
|
+
console.log(`${LOG_PREFIX} Storing result in cache...`);
|
|
312
461
|
const cacheConfig = await this.validateCache(cache);
|
|
313
462
|
await this.cacheManager.store({
|
|
314
463
|
cache_tag: cache,
|
|
@@ -320,20 +469,24 @@ class BrokersService {
|
|
|
320
469
|
privateKey: this.privateKey,
|
|
321
470
|
expiry: cacheConfig.expiry,
|
|
322
471
|
}, result);
|
|
472
|
+
console.log(`${LOG_PREFIX} Result cached`);
|
|
323
473
|
}
|
|
324
474
|
const end = Date.now();
|
|
325
475
|
this.logService.add(Object.assign(Object.assign({}, baseLogs), { start,
|
|
326
476
|
end, message: 'Publish to broker - success', successful_execution: true, status: types_2.LogEventStatus.SUCCESS }));
|
|
327
477
|
this.logService.publish();
|
|
478
|
+
console.log(`${LOG_PREFIX} publish() completed successfully in ${end - start}ms`);
|
|
328
479
|
return result;
|
|
329
480
|
}
|
|
330
481
|
catch (error) {
|
|
331
482
|
const end = Date.now();
|
|
483
|
+
console.error(`${LOG_PREFIX} publish() FAILED after ${end - start}ms`);
|
|
484
|
+
console.error(`${LOG_PREFIX} Error:`, error);
|
|
332
485
|
this.initializeLogService();
|
|
333
|
-
(
|
|
486
|
+
(_d = this.logService) === null || _d === void 0 ? void 0 : _d.add(Object.assign({ product_tag: options.product, workspace_id: this.config.workspace_id, env: options.env, process_id,
|
|
334
487
|
start,
|
|
335
|
-
end, type: types_2.LogEventTypes.
|
|
336
|
-
await ((
|
|
488
|
+
end, type: types_2.LogEventTypes.PRODUCER, parent_tag: brokerTag, child_tag: topicTag, message: 'Publish to broker - failed', failed_execution: true, data: { event: options.event, error: String(error) }, status: types_2.LogEventStatus.FAIL }, sessionLogFields));
|
|
489
|
+
await ((_e = this.logService) === null || _e === void 0 ? void 0 : _e.publish());
|
|
337
490
|
if (error instanceof BrokerError) {
|
|
338
491
|
throw error;
|
|
339
492
|
}
|
|
@@ -344,11 +497,12 @@ class BrokersService {
|
|
|
344
497
|
* Subscribe to a broker topic
|
|
345
498
|
*/
|
|
346
499
|
async subscribe(options) {
|
|
347
|
-
var _a, _b;
|
|
500
|
+
var _a, _b, _c;
|
|
348
501
|
const process_id = (0, processor_utils_1.generateObjectId)();
|
|
349
502
|
const start = Date.now();
|
|
350
503
|
try {
|
|
351
|
-
|
|
504
|
+
// For subscribe, we don't auto-register topics - they should already exist
|
|
505
|
+
const { broker, topic, brokerEnv, topicUrl } = await this.initializeBroker(options.product, options.env, options.event, undefined);
|
|
352
506
|
const { brokerTag, topicTag } = (0, broker_util_1.parseEventString)(options.event);
|
|
353
507
|
// Auto-register consumer if not exists
|
|
354
508
|
await this.ensureConsumerRegistered(brokerTag, topicTag, options.consumer);
|
|
@@ -359,15 +513,68 @@ class BrokersService {
|
|
|
359
513
|
workspace_id: this.config.workspace_id,
|
|
360
514
|
env: options.env,
|
|
361
515
|
process_id,
|
|
362
|
-
type: types_2.LogEventTypes.
|
|
516
|
+
type: types_2.LogEventTypes.CONSUMER,
|
|
363
517
|
parent_tag: brokerTag,
|
|
364
518
|
child_tag: topicTag,
|
|
365
519
|
data: { event: options.event },
|
|
366
520
|
};
|
|
367
521
|
this.logService.add(Object.assign(Object.assign({}, baseLogs), { start, message: 'Subscribe to broker - initiated', status: types_2.LogEventStatus.PROCESSING }));
|
|
368
|
-
// Get broker service and subscribe
|
|
522
|
+
// Get broker service and subscribe with message tracking wrapper
|
|
369
523
|
const brokerService = await this.getBrokerService(brokerEnv.type, brokerEnv.config);
|
|
370
|
-
|
|
524
|
+
const consumerTag = ((_a = options.consumer) === null || _a === void 0 ? void 0 : _a.tag) || `consumer-${brokerTag}-${topicTag}`;
|
|
525
|
+
// Wrap the callback to track message consumption
|
|
526
|
+
const wrappedCallback = async (message) => {
|
|
527
|
+
const messageStart = Date.now();
|
|
528
|
+
let messageId;
|
|
529
|
+
// Try to extract message_id if it was included by the producer
|
|
530
|
+
const msgWithId = message;
|
|
531
|
+
messageId = msgWithId.__ductape_message_id;
|
|
532
|
+
// If we have a message ID, register this consumer for tracking
|
|
533
|
+
if (messageId) {
|
|
534
|
+
try {
|
|
535
|
+
await this.processorApiService.registerBrokerConsumer({ message_id: messageId, consumer_tag: consumerTag }, this.getUserAccess());
|
|
536
|
+
}
|
|
537
|
+
catch (regError) {
|
|
538
|
+
console.warn(`${LOG_PREFIX} Failed to register consumer (non-blocking): ${regError}`);
|
|
539
|
+
}
|
|
540
|
+
}
|
|
541
|
+
try {
|
|
542
|
+
// Call the original callback
|
|
543
|
+
await options.callback(message);
|
|
544
|
+
// Report success if we have a message ID
|
|
545
|
+
if (messageId) {
|
|
546
|
+
try {
|
|
547
|
+
await this.processorApiService.updateBrokerConsumerStatus({
|
|
548
|
+
message_id: messageId,
|
|
549
|
+
consumer_tag: consumerTag,
|
|
550
|
+
status: 'success',
|
|
551
|
+
}, this.getUserAccess());
|
|
552
|
+
}
|
|
553
|
+
catch (updateError) {
|
|
554
|
+
console.warn(`${LOG_PREFIX} Failed to update consumer status (non-blocking): ${updateError}`);
|
|
555
|
+
}
|
|
556
|
+
}
|
|
557
|
+
}
|
|
558
|
+
catch (callbackError) {
|
|
559
|
+
// Report failure if we have a message ID
|
|
560
|
+
if (messageId) {
|
|
561
|
+
try {
|
|
562
|
+
await this.processorApiService.updateBrokerConsumerStatus({
|
|
563
|
+
message_id: messageId,
|
|
564
|
+
consumer_tag: consumerTag,
|
|
565
|
+
status: 'failed',
|
|
566
|
+
error: String(callbackError),
|
|
567
|
+
}, this.getUserAccess());
|
|
568
|
+
}
|
|
569
|
+
catch (updateError) {
|
|
570
|
+
console.warn(`${LOG_PREFIX} Failed to update consumer status (non-blocking): ${updateError}`);
|
|
571
|
+
}
|
|
572
|
+
}
|
|
573
|
+
// Re-throw the original error
|
|
574
|
+
throw callbackError;
|
|
575
|
+
}
|
|
576
|
+
};
|
|
577
|
+
await brokerService.subscribe(topicUrl, wrappedCallback);
|
|
371
578
|
const end = Date.now();
|
|
372
579
|
this.logService.add(Object.assign(Object.assign({}, baseLogs), { start,
|
|
373
580
|
end, message: 'Subscribe to broker - success', successful_execution: true, status: types_2.LogEventStatus.SUCCESS }));
|
|
@@ -380,20 +587,20 @@ class BrokersService {
|
|
|
380
587
|
catch (error) {
|
|
381
588
|
const end = Date.now();
|
|
382
589
|
this.initializeLogService();
|
|
383
|
-
(
|
|
590
|
+
(_b = this.logService) === null || _b === void 0 ? void 0 : _b.add({
|
|
384
591
|
product_tag: options.product,
|
|
385
592
|
workspace_id: this.config.workspace_id,
|
|
386
593
|
env: options.env,
|
|
387
594
|
process_id,
|
|
388
595
|
start,
|
|
389
596
|
end,
|
|
390
|
-
type: types_2.LogEventTypes.
|
|
597
|
+
type: types_2.LogEventTypes.CONSUMER,
|
|
391
598
|
message: 'Subscribe to broker - failed',
|
|
392
599
|
failed_execution: true,
|
|
393
600
|
data: { event: options.event, error: String(error) },
|
|
394
601
|
status: types_2.LogEventStatus.FAIL,
|
|
395
602
|
});
|
|
396
|
-
await ((
|
|
603
|
+
await ((_c = this.logService) === null || _c === void 0 ? void 0 : _c.publish());
|
|
397
604
|
if (error instanceof BrokerError) {
|
|
398
605
|
throw error;
|
|
399
606
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brokers.service.js","sourceRoot":"","sources":["../../src/brokers/brokers.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"brokers.service.js","sourceRoot":"","sources":["../../src/brokers/brokers.service.ts"],"names":[],"mappings":"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"}
|