@lark-apaas/observable-web 1.0.1-alpha.9 → 1.0.1-beta.1

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.
Files changed (2) hide show
  1. package/dist/index.js +33 -3
  2. package/package.json +3 -2
package/dist/index.js CHANGED
@@ -7,9 +7,16 @@ var sdkLogs = require('@opentelemetry/sdk-logs');
7
7
  var sdkMetrics = require('@opentelemetry/sdk-metrics');
8
8
  var sdkTraceWeb = require('@opentelemetry/sdk-trace-web');
9
9
  var sdkTraceBase = require('@opentelemetry/sdk-trace-base');
10
+ var StackTrace = require('stacktrace-js');
10
11
  var core = require('@opentelemetry/core');
11
12
 
13
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
14
+
15
+ var StackTrace__default = /*#__PURE__*/_interopDefault(StackTrace);
16
+
12
17
  var __defProp = Object.defineProperty;
18
+ var __defProps = Object.defineProperties;
19
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
13
20
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
14
21
  var __hasOwnProp = Object.prototype.hasOwnProperty;
15
22
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -25,6 +32,7 @@ var __spreadValues = (a, b) => {
25
32
  }
26
33
  return a;
27
34
  };
35
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
28
36
  var __async = (__this, __arguments, generator) => {
29
37
  return new Promise((resolve, reject) => {
30
38
  var fulfilled = (value) => {
@@ -794,7 +802,7 @@ var trace = TraceAPI.getInstance();
794
802
 
795
803
  // package.json
796
804
  var package_default = {
797
- version: "1.0.1-alpha.8"};
805
+ version: "1.0.1-beta.1"};
798
806
 
799
807
  // src/const.ts
800
808
  var defaultResourceAttr = {
@@ -895,7 +903,8 @@ var getDefaultAttr = () => ({
895
903
  // 默认为 Prod 环境,preview 环境不上报
896
904
  app_env: "runtime" /* Prod */,
897
905
  source_type: "user",
898
- device_type: getDeviceTypeByAgent(navigator.userAgent)
906
+ device_type: getDeviceTypeByAgent(navigator.userAgent),
907
+ release_commit_id: window.__RELEASE_COMMIT_ID__ || ""
899
908
  });
900
909
 
901
910
  // src/core/metric-exporter.ts
@@ -1273,6 +1282,18 @@ var CustomWebTraceExporter = class {
1273
1282
  }
1274
1283
  };
1275
1284
 
1285
+ // src/utils/stackTrace.ts
1286
+ var mapStacktrace = (stacktrace) => stacktrace.map(
1287
+ (frame) => {
1288
+ var _a, _b;
1289
+ return {
1290
+ fileName: ((_b = (_a = frame.fileName) == null ? void 0 : _a.split("/")) == null ? void 0 : _b.pop()) || "",
1291
+ line: frame.lineNumber || 0,
1292
+ column: frame.columnNumber || 0
1293
+ };
1294
+ }
1295
+ );
1296
+
1276
1297
  // src/core/sdk.ts
1277
1298
  var provider = new sdkTraceWeb.WebTracerProvider();
1278
1299
  provider.register({
@@ -1461,12 +1482,21 @@ var _WebObservableSdk = class _WebObservableSdk {
1461
1482
  }
1462
1483
  // --- 公开 API: 日志(Log) ---
1463
1484
  log(level, message, attributes = {}, span) {
1485
+ let traceInfo = [];
1486
+ if (level === "ERROR") {
1487
+ const stacktrace = StackTrace__default.default.getSync();
1488
+ if (stacktrace && stacktrace.length > 0) {
1489
+ traceInfo = mapStacktrace(stacktrace);
1490
+ }
1491
+ }
1464
1492
  try {
1465
1493
  const ctx = span ? trace.setSpan(context.active(), span) : context.active();
1466
1494
  this.logger.emit({
1467
1495
  severityText: level,
1468
1496
  body: message,
1469
- attributes,
1497
+ attributes: __spreadProps(__spreadValues({}, attributes), {
1498
+ stack: JSON.stringify(traceInfo)
1499
+ }),
1470
1500
  timestamp: _WebObservableSdk.getCalibratedDate(),
1471
1501
  context: ctx
1472
1502
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lark-apaas/observable-web",
3
- "version": "1.0.1-alpha.9",
3
+ "version": "1.0.1-beta.1",
4
4
  "description": "Observable SDK For Web",
5
5
  "main": "./dist/index.js",
6
6
  "files": [
@@ -25,6 +25,7 @@
25
25
  "@opentelemetry/sdk-metrics": "^2.2.0",
26
26
  "@opentelemetry/sdk-trace-base": "^2.2.0",
27
27
  "@opentelemetry/sdk-trace-web": "^2.2.0",
28
+ "stacktrace-js": "^2.0.2",
28
29
  "zone.js": "^0.16.0"
29
30
  },
30
31
  "devDependencies": {
@@ -40,4 +41,4 @@
40
41
  "react": ">=16.14.0",
41
42
  "react-dom": ">=16.14.0"
42
43
  }
43
- }
44
+ }