wsp-ms-core 1.1.26 → 1.1.28

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.cjs CHANGED
@@ -1263,9 +1263,9 @@ var _EventBus = class _EventBus {
1263
1263
  await this.repository.create(mapper(event));
1264
1264
  }
1265
1265
  async publishMany(events) {
1266
- for (let event of events) {
1267
- await this.publish(event);
1268
- }
1266
+ await Promise.all(
1267
+ events.map((event) => this.publish(event))
1268
+ );
1269
1269
  }
1270
1270
  static addMapper(eventType, mapper) {
1271
1271
  _EventBus.MAPPERS.set(eventType, mapper);
@@ -1320,8 +1320,30 @@ var EventManager = class {
1320
1320
  this._onReconnect = null;
1321
1321
  }
1322
1322
  async execRoute(topic, event) {
1323
- if (this._callbackList[topic]) {
1324
- await this._callbackList[topic](event);
1323
+ console.log("[KafkaManager] execRoute START", {
1324
+ topic
1325
+ });
1326
+ const callback = this._callbackList[topic];
1327
+ if (!callback) {
1328
+ console.log("[KafkaManager] execRoute NO CALLBACK", {
1329
+ topic
1330
+ });
1331
+ return;
1332
+ }
1333
+ const start = Date.now();
1334
+ try {
1335
+ await callback(event);
1336
+ console.log("[KafkaManager] execRoute END", {
1337
+ topic,
1338
+ elapsedMs: Date.now() - start
1339
+ });
1340
+ } catch (e) {
1341
+ console.error("[KafkaManager] execRoute ERROR", {
1342
+ topic,
1343
+ elapsedMs: Date.now() - start,
1344
+ error: e
1345
+ });
1346
+ throw e;
1325
1347
  }
1326
1348
  }
1327
1349
  async execCallback(callback, data) {
@@ -2017,31 +2039,70 @@ var KafkaManager = class extends EventManager {
2017
2039
  autoCommit: false,
2018
2040
  // @ts-ignore
2019
2041
  eachMessage: async ({ topic, partition, message, heartbeat }) => {
2042
+ console.log("[KafkaManager] A - eachMessage START", {
2043
+ topic,
2044
+ partition,
2045
+ offset: message.offset
2046
+ });
2020
2047
  try {
2021
- await this.execCallback(this._onMessage, `[New message detected for ${topic}]: ${message.value?.toString()}`);
2022
- let json;
2023
- let event;
2024
- try {
2025
- json = JSON.parse(String(message.value?.toString()));
2026
- if (!json.data)
2027
- json.data = {};
2028
- event = {
2029
- topic: String(topic),
2030
- producer: String(json.producer),
2031
- tenant: UUID.create(String(json.tenant)),
2032
- message: json.data
2033
- };
2034
- } catch (error) {
2035
- await this.commitMessage(topic, partition, message);
2036
- await heartbeat();
2037
- throw error;
2048
+ console.log("[KafkaManager] B - before execCallback(_onMessage)");
2049
+ await this.execCallback(
2050
+ this._onMessage,
2051
+ `[New message detected for ${topic}]: ${message.value?.toString()}`
2052
+ );
2053
+ console.log("[KafkaManager] C - after execCallback(_onMessage)");
2054
+ console.log("[KafkaManager] D - before JSON.parse");
2055
+ const json = JSON.parse(message.value.toString());
2056
+ console.log("[KafkaManager] E - after JSON.parse");
2057
+ if (!json.data) {
2058
+ json.data = {};
2038
2059
  }
2060
+ console.log("[KafkaManager] F - before EventMessage creation");
2061
+ const event = {
2062
+ topic: String(topic),
2063
+ producer: String(json.producer),
2064
+ tenant: UUID.create(String(json.tenant)),
2065
+ message: json.data
2066
+ };
2067
+ console.log("[KafkaManager] G - EventMessage created");
2068
+ const execRouteStart = Date.now();
2069
+ console.log("[KafkaManager] H - before execRoute", {
2070
+ offset: message.offset
2071
+ });
2039
2072
  await this.execRoute(topic, event);
2073
+ console.log("[KafkaManager] I - after execRoute", {
2074
+ elapsedMs: Date.now() - execRouteStart
2075
+ });
2076
+ const commitStart = Date.now();
2077
+ console.log("[KafkaManager] J - before commitMessage");
2040
2078
  await this.commitMessage(topic, partition, message);
2079
+ console.log("[KafkaManager] K - after commitMessage", {
2080
+ elapsedMs: Date.now() - commitStart
2081
+ });
2082
+ const hbStart = Date.now();
2083
+ console.log("[KafkaManager] L - before heartbeat");
2041
2084
  await heartbeat();
2085
+ console.log("[KafkaManager] M - after heartbeat", {
2086
+ elapsedMs: Date.now() - hbStart
2087
+ });
2088
+ console.log("[KafkaManager] N - eachMessage END");
2042
2089
  } catch (error) {
2043
- await this.execCallback(this._onError, error);
2044
- this.handleKafkaError(error, "consumer.eachMessage", { topic, partition });
2090
+ console.error("[KafkaManager] ERROR inside eachMessage", {
2091
+ topic,
2092
+ partition,
2093
+ offset: message.offset,
2094
+ error
2095
+ });
2096
+ try {
2097
+ await this.execCallback(this._onError, error);
2098
+ } catch (callbackError) {
2099
+ console.error("[KafkaManager] ERROR executing _onError callback", callbackError);
2100
+ }
2101
+ this.handleKafkaError(error, "consumer.eachMessage", {
2102
+ topic,
2103
+ partition,
2104
+ offset: message.offset
2105
+ });
2045
2106
  throw error;
2046
2107
  }
2047
2108
  }
@@ -2332,7 +2393,13 @@ var DefaultMysqlInboxRunner = class {
2332
2393
  for (let topic of this.topics) {
2333
2394
  try {
2334
2395
  this.eventManager.route(topic, async (e) => {
2335
- await this.saveEvent(e, new InboxMysqlRepository(await this.databaseConnector.getConnection()));
2396
+ console.log("[InboxRunner] BEFORE getConnection");
2397
+ const connection = await this.databaseConnector.getConnection();
2398
+ console.log("[InboxRunner] AFTER getConnection");
2399
+ const repository = new InboxMysqlRepository(connection);
2400
+ console.log("[InboxRunner] BEFORE saveEvent");
2401
+ await this.saveEvent(e, repository);
2402
+ console.log("[InboxRunner] AFTER saveEvent");
2336
2403
  });
2337
2404
  } catch (error) {
2338
2405
  console.log(error.toString());