arvo-core 1.0.24 → 1.0.25

Sign up to get free protection for your applications and to get access to all the features.
package/CHANGELOG.md CHANGED
@@ -40,7 +40,7 @@
40
40
 
41
41
  - Fix a type bug in ArvoEvent creation
42
42
 
43
- ## [1.0.23] - 2024-09-07
43
+ ## [1.0.25] - 2024-09-08
44
44
 
45
45
  - Updated OpenTelemetry propagation and fixed propagation in the event factory
46
46
 
@@ -52,7 +52,7 @@ var createArvoEvent = function (event, extensions) {
52
52
  if (event.datacontenttype &&
53
53
  event.datacontenttype !== schema_1.ArvoDataContentType) {
54
54
  var warning = (0, utils_1.cleanString)("\n Warning! The provided datacontenttype(=".concat(event.datacontenttype, ")\n is not ArvoEvent compatible (=").concat(schema_1.ArvoDataContentType, "). There may \n be some limited functionality.\n "));
55
- (0, OpenTelemetry_1.logToSpan)(span, {
55
+ (0, OpenTelemetry_1.logToSpan)({
56
56
  level: 'WARNING',
57
57
  message: warning,
58
58
  });
@@ -75,7 +75,7 @@ var createArvoEvent = function (event, extensions) {
75
75
  }, event.data, extensions);
76
76
  }
77
77
  catch (error) {
78
- (0, OpenTelemetry_1.exceptionToSpan)(span, error);
78
+ (0, OpenTelemetry_1.exceptionToSpan)(error);
79
79
  span.setStatus({
80
80
  code: api_1.SpanStatusCode.ERROR,
81
81
  message: error.message,
@@ -65,7 +65,7 @@ var ArvoEventFactory = /** @class */ (function () {
65
65
  return (0, helpers_1.createArvoEvent)(__assign(__assign({}, event), { type: _this.contract.accepts.type, datacontenttype: schema_1.ArvoDataContentType, dataschema: _this.contract.uri, data: validationResult.data }), extensions);
66
66
  }
67
67
  catch (error) {
68
- (0, OpenTelemetry_1.exceptionToSpan)(span, error);
68
+ (0, OpenTelemetry_1.exceptionToSpan)(error);
69
69
  span.setStatus({
70
70
  code: api_1.SpanStatusCode.ERROR,
71
71
  message: error.message,
@@ -100,7 +100,7 @@ var ArvoEventFactory = /** @class */ (function () {
100
100
  return (0, helpers_1.createArvoEvent)(__assign(__assign({}, event), { datacontenttype: schema_1.ArvoDataContentType, dataschema: _this.contract.uri, data: validationResult.data }), extensions);
101
101
  }
102
102
  catch (error) {
103
- (0, OpenTelemetry_1.exceptionToSpan)(span, error);
103
+ (0, OpenTelemetry_1.exceptionToSpan)(error);
104
104
  span.setStatus({
105
105
  code: api_1.SpanStatusCode.ERROR,
106
106
  message: error.message,
@@ -134,7 +134,7 @@ var ArvoEventFactory = /** @class */ (function () {
134
134
  }, datacontenttype: schema_1.ArvoDataContentType, dataschema: _this.contract.uri }), extensions);
135
135
  }
136
136
  catch (error) {
137
- (0, OpenTelemetry_1.exceptionToSpan)(span, error);
137
+ (0, OpenTelemetry_1.exceptionToSpan)(error);
138
138
  span.setStatus({
139
139
  code: api_1.SpanStatusCode.ERROR,
140
140
  message: error.message,
@@ -6,22 +6,27 @@ import { TelemetryLogLevel, OpenTelemetryHeaders } from './types';
6
6
  export declare const ArvoCoreTracer: import("@opentelemetry/api").Tracer;
7
7
  /**
8
8
  * Logs a message to a span with additional parameters.
9
- * @param span - The span to log the message to.
10
9
  * @param params - The parameters for the log message.
11
- * @param params.level - The log level.
12
- * @param params.message - The log message.
10
+ * @param params.level - The log level of the message.
11
+ * @param params.message - The main content of the log message.
12
+ * @param span - The span to log the message to. If not provided, the active span is used.
13
+ * If no active span is available, the message is logged to the console.
13
14
  */
14
- export declare const logToSpan: (span: Span, params: {
15
+ export declare const logToSpan: (params: {
16
+ /** The log level */
15
17
  level: TelemetryLogLevel;
18
+ /** The log message */
16
19
  message: string;
17
- }) => void;
20
+ /** Other log parameters */
21
+ [key: string]: string;
22
+ }, span?: Span | undefined) => void;
18
23
  /**
19
24
  * Logs an exception to a span and sets exception-related attributes.
20
- * @param span - The span to log the exception to.
21
- * @param level - The log level for the exception.
22
25
  * @param error - The error object to be logged.
26
+ * @param span - The span to log the exception to. If not provided, the active span is used.
27
+ * If no active span is available, the error is logged to the console.
23
28
  */
24
- export declare const exceptionToSpan: (span: Span, error: Error) => void;
29
+ export declare const exceptionToSpan: (error: Error, span?: Span | undefined) => void;
25
30
  /**
26
31
  * A constant representing a null or not applicable value in OpenTelemetry context.
27
32
  */
@@ -23,27 +23,41 @@ var pkg = (0, utils_1.getPackageInfo)();
23
23
  exports.ArvoCoreTracer = api_1.trace.getTracer(pkg.name, pkg.version);
24
24
  /**
25
25
  * Logs a message to a span with additional parameters.
26
- * @param span - The span to log the message to.
27
26
  * @param params - The parameters for the log message.
28
- * @param params.level - The log level.
29
- * @param params.message - The log message.
27
+ * @param params.level - The log level of the message.
28
+ * @param params.message - The main content of the log message.
29
+ * @param span - The span to log the message to. If not provided, the active span is used.
30
+ * If no active span is available, the message is logged to the console.
30
31
  */
31
- var logToSpan = function (span, params) {
32
- span.addEvent('log_message', __assign(__assign({}, params), { timestamp: performance.now() }));
32
+ var logToSpan = function (params, span) {
33
+ if (span === void 0) { span = api_1.trace.getActiveSpan(); }
34
+ var toLog = __assign(__assign({}, params), { timestamp: performance.now() });
35
+ if (span) {
36
+ span.addEvent('log_message', toLog);
37
+ }
38
+ else {
39
+ console.log(JSON.stringify(toLog, null, 2));
40
+ }
33
41
  };
34
42
  exports.logToSpan = logToSpan;
35
43
  /**
36
44
  * Logs an exception to a span and sets exception-related attributes.
37
- * @param span - The span to log the exception to.
38
- * @param level - The log level for the exception.
39
45
  * @param error - The error object to be logged.
46
+ * @param span - The span to log the exception to. If not provided, the active span is used.
47
+ * If no active span is available, the error is logged to the console.
40
48
  */
41
- var exceptionToSpan = function (span, error) {
42
- span.setAttributes({
43
- 'exception.type': error.name,
44
- 'exception.message': error.message,
45
- });
46
- span.recordException(error);
49
+ var exceptionToSpan = function (error, span) {
50
+ if (span === void 0) { span = api_1.trace.getActiveSpan(); }
51
+ if (span) {
52
+ span.setAttributes({
53
+ 'exception.type': error.name,
54
+ 'exception.message': error.message,
55
+ });
56
+ span.recordException(error);
57
+ }
58
+ else {
59
+ console.error(error);
60
+ }
47
61
  };
48
62
  exports.exceptionToSpan = exceptionToSpan;
49
63
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "arvo-core",
3
- "version": "1.0.24",
3
+ "version": "1.0.25",
4
4
  "description": "This core package contains all the core classes and components of the Arvo Event Driven System",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {