@antglobal/rlog-sdk 0.0.1755855517-dev.10 → 0.0.1755855517-dev.11

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 (51) hide show
  1. package/README.md +48 -8
  2. package/dist/esm/index.d.ts +10 -46
  3. package/dist/esm/index.d.ts.map +1 -1
  4. package/dist/esm/index.js +27 -70
  5. package/dist/esm/lib/api.d.ts.map +1 -1
  6. package/dist/esm/lib/api.js +19 -13
  7. package/dist/esm/lib/config.d.ts +1 -8
  8. package/dist/esm/lib/config.d.ts.map +1 -1
  9. package/dist/esm/lib/config.js +18 -18
  10. package/dist/esm/lib/error-trigger.d.ts +1 -3
  11. package/dist/esm/lib/error-trigger.d.ts.map +1 -1
  12. package/dist/esm/lib/error-trigger.js +1 -8
  13. package/dist/esm/lib/error.d.ts.map +1 -1
  14. package/dist/esm/lib/error.js +8 -40
  15. package/dist/esm/lib/init.d.ts.map +1 -1
  16. package/dist/esm/lib/init.js +4 -12
  17. package/dist/esm/lib/net.d.ts +5 -0
  18. package/dist/esm/lib/net.d.ts.map +1 -1
  19. package/dist/esm/lib/net.js +8 -0
  20. package/dist/esm/lib/router-monitor.d.ts.map +1 -1
  21. package/dist/esm/lib/router-monitor.js +10 -36
  22. package/dist/esm/lib/rrweb.d.ts.map +1 -1
  23. package/dist/esm/lib/rrweb.js +8 -8
  24. package/dist/esm/lib/uploader.d.ts.map +1 -1
  25. package/dist/esm/lib/uploader.js +27 -19
  26. package/dist/lib/index.d.ts +10 -46
  27. package/dist/lib/index.d.ts.map +1 -1
  28. package/dist/lib/index.js +9 -58
  29. package/dist/lib/lib/api.d.ts.map +1 -1
  30. package/dist/lib/lib/api.js +19 -13
  31. package/dist/lib/lib/config.d.ts +1 -8
  32. package/dist/lib/lib/config.d.ts.map +1 -1
  33. package/dist/lib/lib/config.js +18 -18
  34. package/dist/lib/lib/error-trigger.d.ts +1 -3
  35. package/dist/lib/lib/error-trigger.d.ts.map +1 -1
  36. package/dist/lib/lib/error-trigger.js +1 -8
  37. package/dist/lib/lib/error.d.ts.map +1 -1
  38. package/dist/lib/lib/error.js +8 -40
  39. package/dist/lib/lib/init.d.ts.map +1 -1
  40. package/dist/lib/lib/init.js +3 -11
  41. package/dist/lib/lib/net.d.ts +5 -0
  42. package/dist/lib/lib/net.d.ts.map +1 -1
  43. package/dist/lib/lib/net.js +9 -0
  44. package/dist/lib/lib/router-monitor.d.ts.map +1 -1
  45. package/dist/lib/lib/router-monitor.js +10 -36
  46. package/dist/lib/lib/rrweb.d.ts.map +1 -1
  47. package/dist/lib/lib/rrweb.js +8 -8
  48. package/dist/lib/lib/uploader.d.ts.map +1 -1
  49. package/dist/lib/lib/uploader.js +27 -19
  50. package/dist/rlog-sdk.min.js +1 -1
  51. package/package.json +1 -1
@@ -67,19 +67,19 @@ var startRecord = exports.startRecord = function startRecord() {
67
67
  stopRecordFn = rrweb.record({
68
68
  emit: function emit(event) {
69
69
  // you should use console.log in this way to avoid errors.
70
- var defaultLog = console.log['__rrweb_original__'] ? console.log['__rrweb_original__'] : console.log;
71
- if (event.type !== rrweb.EventType.IncrementalSnapshot) {
72
- // 过滤不打印出增量更新的日志
73
- defaultLog('event', event);
74
- }
70
+ // const defaultLog = (console.log as any)['__rrweb_original__']
71
+ // ? (console.log as any)['__rrweb_original__']
72
+ // : console.log;
73
+ // if (event.type !== rrweb.EventType.IncrementalSnapshot) {
74
+ // // 过滤不打印出增量更新的日志
75
+ // defaultLog('event', event);
76
+ // }
75
77
 
76
78
  // 统一写入 Storage(full 和 error 模式共用)
77
79
  _storageManager.storage.push(deviceId, event);
78
80
  },
79
81
  recordCanvas: true,
80
- sampling: _objectSpread({
81
- canvas: config.samplingRate
82
- }, config.sampling || {}),
82
+ sampling: config.sampling,
83
83
  checkoutEveryNms: config.checkoutEveryNms,
84
84
  ignoreClass: config.ignoreClass,
85
85
  blockClass: config.blockClass,
@@ -1 +1 @@
1
- {"version":3,"file":"uploader.d.ts","sourceRoot":"","sources":["../../../src/lib/uploader.ts"],"names":[],"mappings":"AAuBA;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI,CAE9D;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAE/D;AAyGD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CA2HjE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAKvC;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAMtC;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
1
+ {"version":3,"file":"uploader.d.ts","sourceRoot":"","sources":["../../../src/lib/uploader.ts"],"names":[],"mappings":"AAuBA;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI,CAE9D;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAE/D;AAyGD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAmIjE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAKvC;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAMtC;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
@@ -197,7 +197,7 @@ function _handleUploadFailure() {
197
197
  function startUploadLoop(serv, appId) {
198
198
  var push = /*#__PURE__*/function () {
199
199
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
200
- var currentConfig, isErrorMode, events, windowStart, config, consumeOnly, result, batchKey, maxRetryCount, _batchKey, currentCount, shouldStop;
200
+ var currentConfig, isErrorMode, events, windowStart, config, consumeOnly, result, batchKey, lastEvent, maxRetryCount, _batchKey, currentCount, shouldStop;
201
201
  return _regeneratorRuntime().wrap(function _callee$(_context) {
202
202
  while (1) switch (_context.prev = _context.next) {
203
203
  case 0:
@@ -239,17 +239,19 @@ function startUploadLoop(serv, appId) {
239
239
  _context.prev = 14;
240
240
  isUploading = true;
241
241
  windowStart = 0;
242
- if (!(isErrorMode && errorModeWindowStart > 0)) {
242
+ if (!isErrorMode) {
243
243
  _context.next = 25;
244
244
  break;
245
245
  }
246
246
  // 错误模式:按时间范围提取事件
247
- windowStart = errorModeWindowStart;
247
+ // 如果 errorModeWindowStart > 0,使用该值;否则从当前时间开始提取新事件
248
+ windowStart = errorModeWindowStart > 0 ? errorModeWindowStart : Date.now();
248
249
  _context.next = 21;
249
250
  return _storageManager.storage.pullByTimeRange((0, _utils.getDeviceId)(), windowStart, Date.now());
250
251
  case 21:
251
252
  events = _context.sent;
252
- // 重置窗口起点,下次从最新位置开始
253
+ // 重置窗口起点为 0,下次上传时会从当前时间开始
254
+ // 但如果本次有事件上传成功,会更新为最后事件的时间戳
253
255
  errorModeWindowStart = 0;
254
256
  _context.next = 28;
255
257
  break;
@@ -288,7 +290,7 @@ function startUploadLoop(serv, appId) {
288
290
  case 41:
289
291
  result = _context.sent;
290
292
  if (!result.success) {
291
- _context.next = 51;
293
+ _context.next = 53;
292
294
  break;
293
295
  }
294
296
  // 上传成功,重置失败计数
@@ -296,51 +298,57 @@ function startUploadLoop(serv, appId) {
296
298
  uploadFailureCount.delete(batchKey);
297
299
 
298
300
  // 错误模式:上传成功后移除已上传的事件
299
- if (!(isErrorMode && windowStart > 0)) {
300
- _context.next = 48;
301
+ if (!(isErrorMode && windowStart > 0 && events.length > 0)) {
302
+ _context.next = 50;
301
303
  break;
302
304
  }
303
305
  _context.next = 48;
304
306
  return _storageManager.storage.removeByTimeRange((0, _utils.getDeviceId)(), windowStart);
305
307
  case 48:
308
+ // 更新窗口起点为最后一个事件的时间戳,避免下次重复提取
309
+ lastEvent = events[events.length - 1];
310
+ if (lastEvent && lastEvent.timestamp) {
311
+ errorModeWindowStart = lastEvent.timestamp;
312
+ }
313
+ case 50:
306
314
  // 全量模式:pull 已经自动移除了
307
315
 
308
316
  isUploading = false;
309
- _context.next = 60;
317
+ _context.next = 62;
310
318
  break;
311
- case 51:
319
+ case 53:
312
320
  isUploading = false;
313
321
 
314
322
  // 获取最大重试次数,默认3次
315
323
  maxRetryCount = config.maxRetryCount || 3; // 记录失败次数
316
324
  _batchKey = "".concat(appId, "_").concat((0, _utils.getDeviceId)());
317
325
  currentCount = uploadFailureCount.get(_batchKey) || 0; // 处理上传失败
318
- _context.next = 57;
326
+ _context.next = 59;
319
327
  return handleUploadFailure(events, result.error, appId, serv, maxRetryCount, currentCount);
320
- case 57:
328
+ case 59:
321
329
  shouldStop = _context.sent;
322
330
  if (!shouldStop) {
323
- _context.next = 60;
331
+ _context.next = 62;
324
332
  break;
325
333
  }
326
334
  return _context.abrupt("return");
327
- case 60:
328
- _context.next = 66;
329
- break;
330
335
  case 62:
331
- _context.prev = 62;
336
+ _context.next = 68;
337
+ break;
338
+ case 64:
339
+ _context.prev = 64;
332
340
  _context.t0 = _context["catch"](14);
333
341
  isUploading = false;
334
342
  _logger.default.error('Error in upload loop:', _context.t0);
335
- case 66:
343
+ case 68:
336
344
  setTimeout(function () {
337
345
  push();
338
346
  }, currentConfig.uploadInterval);
339
- case 67:
347
+ case 69:
340
348
  case "end":
341
349
  return _context.stop();
342
350
  }
343
- }, _callee, null, [[14, 62]]);
351
+ }, _callee, null, [[14, 64]]);
344
352
  }));
345
353
  return function push() {
346
354
  return _ref.apply(this, arguments);