@mhubcloud/tms_core 3.0.2-beta.0 → 3.0.3-beta.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.js CHANGED
@@ -46,8 +46,9 @@ __export(utils_exports, {
46
46
  flatten: () => flatten,
47
47
  handlePlatformRequest: () => handlePlatformRequest,
48
48
  handleResponse: () => handleResponse,
49
- log: () => log,
49
+ logEvent: () => logEvent,
50
50
  logException: () => logException,
51
+ logMessage: () => logMessage,
51
52
  prepareTestRequestHeaders: () => prepareTestRequestHeaders,
52
53
  removeUndefined: () => removeUndefined
53
54
  });
@@ -79,9 +80,16 @@ var EventPublisherBase = class {
79
80
  );
80
81
  }
81
82
  };
82
- function log(log3, level, message, properties) {
83
+ function logMessage(log3, level, message, properties) {
83
84
  log3.warn(message);
84
85
  }
86
+ function logEvent(message, level, properties) {
87
+ aiClient?.trackTrace({
88
+ message,
89
+ severity: level,
90
+ properties
91
+ });
92
+ }
85
93
  function logException(log3, exception) {
86
94
  log3.warn(exception);
87
95
  aiClient?.trackException({
@@ -209,9 +217,9 @@ async function handlePlatformRequest({
209
217
  }
210
218
  const processedPlatfromResponse = await handleResponse(
211
219
  rawPlatformResponse,
212
- event
220
+ event.properties.event
213
221
  );
214
- log(logger, 1, `${source} - ${event} - sent`);
222
+ logEvent(event.message, event.severity, event.properties);
215
223
  return processedPlatfromResponse;
216
224
  }
217
225
  async function handleTestRequest(params) {
@@ -269,7 +277,7 @@ async function processMessage(message, log3, platformPublisher, trigger) {
269
277
  };
270
278
  const publishers = trigger(message, log3);
271
279
  if (!publishers.length) {
272
- log(
280
+ logMessage(
273
281
  log3,
274
282
  1,
275
283
  "Message excluded by filter (no publishers determined)",
@@ -286,7 +294,15 @@ async function processMessage(message, log3, platformPublisher, trigger) {
286
294
  mapped,
287
295
  eventPublisher.config,
288
296
  platformPublisher,
289
- message.event.code + (message.event.name ? "/" + message.event.name : "")
297
+ {
298
+ message: `event`,
299
+ severity: 1,
300
+ properties: {
301
+ publisher: platformPublisher.source,
302
+ event: message.event.code + (message.event.name ? "/" + message.event.name : ""),
303
+ region: message.event.region
304
+ }
305
+ }
290
306
  );
291
307
  if (res) {
292
308
  publishedAny = true;
@@ -366,7 +382,7 @@ var cj = {
366
382
  */
367
383
  async publish(log3, config, data, event) {
368
384
  if (!data.cjevent) {
369
- log(log3, 1, `CJ - ${event} - skipped because CJEVENT is missing`);
385
+ (void 0)(log3, 1, `CJ - ${event} - skipped because CJEVENT is missing`);
370
386
  } else {
371
387
  if (typeof config.cid === "string" && typeof config.type === "string") {
372
388
  const cjData = removeUndefined(data);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mhubcloud/tms_core",
3
- "version": "3.0.2-beta.0",
3
+ "version": "3.0.3-beta.0",
4
4
  "description": "Core function for mHub Cloud TMS publishers",
5
5
  "homepage": "https://mhubcloud.com/",
6
6
  "license": "Apache 2.0",
@@ -1,6 +1,7 @@
1
1
  import { Context, Logger } from '@azure/functions';
2
2
  import { Telemetry } from 'applicationinsights/out/Declarations/Contracts';
3
3
  import { EventPublisher } from './types/EventPublisher';
4
+ import { EventToLog } from './types/EventToLog';
4
5
  import { PlatformPublisher } from './types/PlatformPublisher';
5
6
  import { ServiceBusMessage } from './types/ServiceBusMessage';
6
7
  import { TypeSafeObject } from './types/UtilTypes';
@@ -71,7 +72,7 @@ async function processMessage(
71
72
  };
72
73
  const publishers = trigger(message, log);
73
74
  if (!publishers.length) {
74
- utils.log(
75
+ utils.logMessage(
75
76
  log,
76
77
  1,
77
78
  'Message excluded by filter (no publishers determined)',
@@ -89,7 +90,17 @@ async function processMessage(
89
90
  mapped,
90
91
  eventPublisher.config,
91
92
  platformPublisher,
92
- message.event.code + (message.event.name ? '/' + message.event.name : ''),
93
+ {
94
+ message: `event`,
95
+ severity: 1,
96
+ properties: {
97
+ publisher: platformPublisher.source,
98
+ event:
99
+ message.event.code +
100
+ (message.event.name ? '/' + message.event.name : ''),
101
+ region: message.event.region,
102
+ },
103
+ },
93
104
  );
94
105
  if (res) {
95
106
  publishedAny = true;
@@ -129,7 +140,7 @@ async function publishMessage(
129
140
  mapped: TypeSafeObject,
130
141
  config: TypeSafeObject,
131
142
  platformPublisher: PlatformPublisher,
132
- event: string,
143
+ event: EventToLog,
133
144
  ) {
134
145
  await platformPublisher.publish(log, config, mapped, event);
135
146
  return true;
@@ -0,0 +1,9 @@
1
+ export interface EventToLog {
2
+ message: string;
3
+ severity: number;
4
+ properties: {
5
+ publisher: string;
6
+ event: string;
7
+ region: string;
8
+ };
9
+ }
@@ -1,4 +1,5 @@
1
1
  import { HttpMethod, Logger } from '@azure/functions';
2
+ import { EventToLog } from './EventToLog';
2
3
  import { TypeSafeObject } from './UtilTypes';
3
4
 
4
5
  export interface PlatformPublisher {
@@ -7,7 +8,7 @@ export interface PlatformPublisher {
7
8
  log: Logger,
8
9
  config: TypeSafeObject,
9
10
  data: TypeSafeObject | unknown[],
10
- event: string,
11
+ event: EventToLog,
11
12
  ) => Promise<void>;
12
13
  // ! REMOVED parse and validate
13
14
  }
@@ -3,6 +3,7 @@ export interface ServiceBusMessage {
3
3
  event: {
4
4
  code: string;
5
5
  name?: string;
6
+ region: string;
6
7
  };
7
8
  [x: string]: unknown;
8
9
  }
@@ -6,6 +6,7 @@ import {
6
6
  Telemetry,
7
7
  } from 'applicationinsights/out/Declarations/Contracts';
8
8
  import { EventPublisherBaseClass } from '../types/EventPublisher';
9
+ import { EventToLog } from '../types/EventToLog';
9
10
  import { PlatformRequestOptions } from '../types/PlatformPublisher';
10
11
  import { TypeSafeObject } from '../types/UtilTypes';
11
12
 
@@ -55,7 +56,7 @@ export class EventPublisherBase implements EventPublisherBaseClass {
55
56
  /**
56
57
  * Logs message to Azure Function context and to Application Insights (if configured)
57
58
  */
58
- export function log(
59
+ export function logMessage(
59
60
  log: Logger,
60
61
  level: SeverityLevel,
61
62
  message: string,
@@ -69,6 +70,18 @@ export function log(
69
70
  // });
70
71
  }
71
72
 
73
+ export function logEvent(
74
+ message: string,
75
+ level: SeverityLevel,
76
+ properties: Telemetry['properties'],
77
+ ): void {
78
+ aiClient?.trackTrace({
79
+ message: message,
80
+ severity: level,
81
+ properties: properties,
82
+ });
83
+ }
84
+
72
85
  /**
73
86
  * Logs exception to Azure Function context and to Application Insights (if configured)
74
87
  */
@@ -275,7 +288,7 @@ interface HandleRequestParams {
275
288
  baseUrl: string;
276
289
  requestOptions: PlatformRequestOptions;
277
290
  query?: string;
278
- event: string;
291
+ event: EventToLog;
279
292
  logger: Logger;
280
293
  }
281
294
 
@@ -318,10 +331,10 @@ export async function handlePlatformRequest({
318
331
  }
319
332
  const processedPlatfromResponse = await handleResponse(
320
333
  rawPlatformResponse,
321
- event,
334
+ event.properties.event,
322
335
  );
323
336
 
324
- log(logger, 1, `${source} - ${event} - sent`);
337
+ logEvent(event.message, event.severity, event.properties);
325
338
 
326
339
  return processedPlatfromResponse;
327
340
  }