agora-foundation 3.3.0 → 3.4.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/lib/decorator/log/index.js +6 -2
- package/lib/logger/index.d.ts +12 -6
- package/lib/logger/index.js +12 -3
- package/lib/logger/logger-impl.d.ts +4 -1
- package/lib/logger/logger-impl.js +8 -2
- package/lib/utilities/observable.d.ts +1 -0
- package/lib/utilities/observable.js +6 -0
- package/lib/utilities/zip.js +5 -1
- package/lib/worker/constants.d.ts +2 -1
- package/lib/worker/constants.js +1 -0
- package/lib/worker/handler/log.d.ts +2 -0
- package/lib/worker/handler/log.js +78 -23
- package/lib/worker/interactor.d.ts +1 -1
- package/lib/worker/interactor.js +11 -0
- package/lib/worker/worker-installer.d.ts +1 -1
- package/lib/worker/worker-installer.js +3 -1
- package/package.json +4 -3
|
@@ -18,13 +18,17 @@ var _trace = function _trace(originalMethod, context) {
|
|
|
18
18
|
var methodName = String(context.name);
|
|
19
19
|
if (context.kind === 'method') {
|
|
20
20
|
context.addInitializer(function () {
|
|
21
|
-
var handler = (0, _handler.createLogHandler)((0, _logger.getLogger)(
|
|
21
|
+
var handler = (0, _handler.createLogHandler)((0, _logger.getLogger)({
|
|
22
|
+
label: 'default'
|
|
23
|
+
}));
|
|
22
24
|
this[context.name] = (0, _proxy.proxyMethod)(this[context.name], this, methodName, handler);
|
|
23
25
|
});
|
|
24
26
|
}
|
|
25
27
|
};
|
|
26
28
|
_trace.to = function (label) {
|
|
27
|
-
var logger = (0, _logger.getLogger)(
|
|
29
|
+
var logger = (0, _logger.getLogger)({
|
|
30
|
+
label: label
|
|
31
|
+
});
|
|
28
32
|
return function (originalMethod, context) {
|
|
29
33
|
var methodName = String(context.name);
|
|
30
34
|
if (context.kind === 'method') {
|
package/lib/logger/index.d.ts
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
import { LogLevel, Logger, LogManager } from
|
|
2
|
-
export declare const getLogger: (
|
|
1
|
+
import { LogLevel, Logger, LogManager } from './type';
|
|
2
|
+
export declare const getLogger: (opts?: {
|
|
3
|
+
label?: string;
|
|
4
|
+
}) => Logger;
|
|
5
|
+
export declare const createLogger: (opts?: {
|
|
6
|
+
label?: string;
|
|
7
|
+
prefix?: string;
|
|
8
|
+
}) => Logger;
|
|
3
9
|
export declare const getLogManager: () => LogManager;
|
|
4
10
|
export declare const setLogLevel: (_logLevel: LogLevel) => void;
|
|
5
|
-
export { LogLevel } from
|
|
6
|
-
export type { LogManager, Logger } from
|
|
7
|
-
export { restoreConsoleHijack, setupConsoleHijack } from
|
|
8
|
-
export { logLevelMap } from
|
|
11
|
+
export { LogLevel } from './type';
|
|
12
|
+
export type { LogManager, Logger } from './type';
|
|
13
|
+
export { restoreConsoleHijack, setupConsoleHijack } from './hijack';
|
|
14
|
+
export { logLevelMap } from './constants';
|
package/lib/logger/index.js
CHANGED
|
@@ -10,7 +10,7 @@ Object.defineProperty(exports, "LogLevel", {
|
|
|
10
10
|
return _type.LogLevel;
|
|
11
11
|
}
|
|
12
12
|
});
|
|
13
|
-
exports.getLogger = exports.getLogManager = void 0;
|
|
13
|
+
exports.getLogger = exports.getLogManager = exports.createLogger = void 0;
|
|
14
14
|
Object.defineProperty(exports, "logLevelMap", {
|
|
15
15
|
enumerable: true,
|
|
16
16
|
get: function get() {
|
|
@@ -63,15 +63,24 @@ var _constants = require("./constants");
|
|
|
63
63
|
var loggerRegistrar = new Map();
|
|
64
64
|
var logLevel = _type.LogLevel.DEBUG;
|
|
65
65
|
var getLogger = exports.getLogger = function getLogger() {
|
|
66
|
-
var
|
|
66
|
+
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
67
|
+
var label = opts.label || 'default';
|
|
67
68
|
if (!loggerRegistrar.has(label)) {
|
|
68
|
-
loggerRegistrar.set(label, new _loggerImpl.LoggerImpl(label, {
|
|
69
|
+
loggerRegistrar.set(label, new _loggerImpl.LoggerImpl(label, {}, {
|
|
69
70
|
console: true,
|
|
70
71
|
database: true
|
|
71
72
|
}, logLevel, (0, _worker.getWorkerSingleton)()));
|
|
72
73
|
}
|
|
73
74
|
return loggerRegistrar.get(label);
|
|
74
75
|
};
|
|
76
|
+
var createLogger = exports.createLogger = function createLogger() {
|
|
77
|
+
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
78
|
+
var label = opts.label || 'default';
|
|
79
|
+
return new _loggerImpl.LoggerImpl(label, opts, {
|
|
80
|
+
console: true,
|
|
81
|
+
database: true
|
|
82
|
+
}, logLevel, (0, _worker.getWorkerSingleton)());
|
|
83
|
+
};
|
|
75
84
|
var logManager;
|
|
76
85
|
var getLogManager = exports.getLogManager = function getLogManager() {
|
|
77
86
|
if (!logManager) {
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { LogLevel, Logger, LogWorkerInteractor } from './type';
|
|
2
2
|
export declare class LoggerImpl implements Logger {
|
|
3
3
|
private _label;
|
|
4
|
+
private _opts;
|
|
4
5
|
private _dest;
|
|
5
6
|
private _logLevel;
|
|
6
7
|
private _logWorkerInteractor;
|
|
7
|
-
constructor(_label: string,
|
|
8
|
+
constructor(_label: string, _opts: {
|
|
9
|
+
prefix?: string;
|
|
10
|
+
}, _dest: {
|
|
8
11
|
console: boolean;
|
|
9
12
|
database: boolean;
|
|
10
13
|
}, _logLevel: LogLevel, _logWorkerInteractor: LogWorkerInteractor);
|
|
@@ -19,9 +19,10 @@ var _type = require("./type");
|
|
|
19
19
|
var _hijack = require("./hijack");
|
|
20
20
|
var _padEnd = _interopRequireDefault(require("lodash/padEnd"));
|
|
21
21
|
var LoggerImpl = exports.LoggerImpl = /*#__PURE__*/function () {
|
|
22
|
-
function LoggerImpl(_label, _dest, _logLevel, _logWorkerInteractor) {
|
|
22
|
+
function LoggerImpl(_label, _opts, _dest, _logLevel, _logWorkerInteractor) {
|
|
23
23
|
(0, _classCallCheck2["default"])(this, LoggerImpl);
|
|
24
24
|
this._label = _label;
|
|
25
|
+
this._opts = _opts;
|
|
25
26
|
this._dest = _dest;
|
|
26
27
|
this._logLevel = _logLevel;
|
|
27
28
|
this._logWorkerInteractor = _logWorkerInteractor;
|
|
@@ -69,10 +70,15 @@ var LoggerImpl = exports.LoggerImpl = /*#__PURE__*/function () {
|
|
|
69
70
|
if (logLevel > this._logLevel) {
|
|
70
71
|
return;
|
|
71
72
|
}
|
|
72
|
-
|
|
73
|
+
|
|
74
|
+
// prepend prefix to the log message if it exists
|
|
73
75
|
for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {
|
|
74
76
|
args[_key5 - 1] = arguments[_key5];
|
|
75
77
|
}
|
|
78
|
+
if (this._opts.prefix) {
|
|
79
|
+
args.unshift("[".concat(this._opts.prefix, "]"));
|
|
80
|
+
}
|
|
81
|
+
// prepend log level to second position of the log message
|
|
76
82
|
args.unshift((0, _padEnd["default"])((0, _upperCase["default"])(_constants.logLevelMap[logLevel] || 'unknown'), 5, ' '));
|
|
77
83
|
// prepend log level to first position of the log message
|
|
78
84
|
args.unshift((0, _dayjs["default"])().format('YYYY-MM-DD HH:mm:ss'));
|
|
@@ -95,5 +95,11 @@ var AgoraObservable = exports.AgoraObservable = /*#__PURE__*/function () {
|
|
|
95
95
|
value: function countOfObservers() {
|
|
96
96
|
return this._observers;
|
|
97
97
|
}
|
|
98
|
+
}, {
|
|
99
|
+
key: "removeAllObservers",
|
|
100
|
+
value: function removeAllObservers() {
|
|
101
|
+
this._observers = 0;
|
|
102
|
+
this._observerSet.clear();
|
|
103
|
+
}
|
|
98
104
|
}]);
|
|
99
105
|
}();
|
package/lib/utilities/zip.js
CHANGED
|
@@ -136,7 +136,11 @@ var isFile = /*#__PURE__*/function () {
|
|
|
136
136
|
return _context2.abrupt("return", new Promise(function (resolve, reject) {
|
|
137
137
|
fs.stat(filePath, function (err, stats) {
|
|
138
138
|
if (err) reject(err);
|
|
139
|
-
|
|
139
|
+
if (!stats) {
|
|
140
|
+
resolve(false);
|
|
141
|
+
} else {
|
|
142
|
+
resolve(stats.isFile());
|
|
143
|
+
}
|
|
140
144
|
});
|
|
141
145
|
}));
|
|
142
146
|
case 2:
|
package/lib/worker/constants.js
CHANGED
|
@@ -15,5 +15,6 @@ var WorkerDirectives = exports.WorkerDirectives = /*#__PURE__*/function (WorkerD
|
|
|
15
15
|
WorkerDirectives["GET_BUFFER"] = "getBuffer";
|
|
16
16
|
WorkerDirectives["CLEAR_TEMP_LOGS"] = "clearTempLogs";
|
|
17
17
|
WorkerDirectives["COLLECT_LOGS_ON_FS"] = "collectLogsOnFs";
|
|
18
|
+
WorkerDirectives["INIT_LOG_PATH"] = "initLogPath";
|
|
18
19
|
return WorkerDirectives;
|
|
19
20
|
}({});
|
|
@@ -9,4 +9,6 @@ export declare const writeLog: (self: WorkerContext, callId: number, log: Log) =
|
|
|
9
9
|
export declare const collectLogs: (self: WorkerContext, callId: number, labels: string[]) => Promise<void>;
|
|
10
10
|
export declare const deleteLogs: (self: WorkerContext, callId: number, labels: string[], lastId: number) => Promise<void>;
|
|
11
11
|
export declare const setMaxRecords: (self: WorkerContext, callId: number, max: number) => void;
|
|
12
|
+
export declare const initLogPath: (logPath: string) => void;
|
|
13
|
+
export declare const writingToDisk: (log: string) => void;
|
|
12
14
|
export {};
|
|
@@ -10,7 +10,6 @@ require("core-js/modules/es.array.is-array.js");
|
|
|
10
10
|
require("core-js/modules/es.array.slice.js");
|
|
11
11
|
require("core-js/modules/es.function.name.js");
|
|
12
12
|
require("core-js/modules/es.object.define-property.js");
|
|
13
|
-
require("core-js/modules/es.object.to-string.js");
|
|
14
13
|
require("core-js/modules/es.regexp.exec.js");
|
|
15
14
|
require("core-js/modules/es.regexp.test.js");
|
|
16
15
|
require("core-js/modules/es.regexp.to-string.js");
|
|
@@ -18,15 +17,21 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
18
17
|
Object.defineProperty(exports, "__esModule", {
|
|
19
18
|
value: true
|
|
20
19
|
});
|
|
21
|
-
exports.writeLog = exports.setMaxRecords = exports.deleteLogs = exports.collectLogs = void 0;
|
|
20
|
+
exports.writingToDisk = exports.writeLog = exports.setMaxRecords = exports.initLogPath = exports.deleteLogs = exports.collectLogs = void 0;
|
|
22
21
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
23
22
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
24
23
|
require("core-js/modules/es.array.concat.js");
|
|
24
|
+
require("core-js/modules/es.array.for-each.js");
|
|
25
25
|
require("core-js/modules/es.array.iterator.js");
|
|
26
26
|
require("core-js/modules/es.array.push.js");
|
|
27
27
|
require("core-js/modules/es.array.reverse.js");
|
|
28
28
|
require("core-js/modules/es.date.to-string.js");
|
|
29
|
+
require("core-js/modules/es.object.to-string.js");
|
|
29
30
|
require("core-js/modules/es.string.iterator.js");
|
|
31
|
+
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
32
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
33
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
34
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
30
35
|
require("core-js/modules/web.dom-collections.iterator.js");
|
|
31
36
|
var _debounce = _interopRequireDefault(require("lodash/debounce"));
|
|
32
37
|
var _db = require("./db");
|
|
@@ -35,6 +40,7 @@ var _constants = require("../constants");
|
|
|
35
40
|
var _reply = require("./reply");
|
|
36
41
|
var _raceCondition = require("../../utilities/race-condition");
|
|
37
42
|
var _jszip = _interopRequireDefault(require("jszip"));
|
|
43
|
+
var _env = require("../../utilities/env");
|
|
38
44
|
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
39
45
|
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
40
46
|
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
@@ -42,12 +48,14 @@ var MAX_WAIT_TIME = 3000;
|
|
|
42
48
|
var mutex = new _mutex.Mutex();
|
|
43
49
|
var maxRecords = 50000;
|
|
44
50
|
var logsCount = 0;
|
|
51
|
+
var winstonLogger;
|
|
45
52
|
var logs = [];
|
|
46
53
|
var writeLog = exports.writeLog = function writeLog(self, callId, log) {
|
|
47
54
|
logsCount++;
|
|
48
55
|
log.content = "[".concat(logsCount, "]").concat(log.content);
|
|
49
56
|
logs.push(log);
|
|
50
57
|
debouncedWriting();
|
|
58
|
+
|
|
51
59
|
// reply(self, callId, WorkerDirectives.WRITE_LOG, { isSuccess: true });
|
|
52
60
|
};
|
|
53
61
|
var debouncedWriting = (0, _debounce["default"])(function () {
|
|
@@ -60,50 +68,60 @@ var debouncedWriting = (0, _debounce["default"])(function () {
|
|
|
60
68
|
time1 = new Date().getTime();
|
|
61
69
|
logscopy = logs;
|
|
62
70
|
logs = [];
|
|
63
|
-
|
|
64
|
-
|
|
71
|
+
if (!(0, _env.isElectron)()) {
|
|
72
|
+
_context.next = 7;
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
logscopy.forEach(function (log) {
|
|
76
|
+
writingToDisk(log.content);
|
|
77
|
+
});
|
|
78
|
+
_context.next = 36;
|
|
79
|
+
break;
|
|
80
|
+
case 7:
|
|
81
|
+
_context.prev = 7;
|
|
82
|
+
_context.next = 10;
|
|
65
83
|
return _db.db.logs.count();
|
|
66
|
-
case
|
|
84
|
+
case 10:
|
|
67
85
|
count = _context.sent;
|
|
68
86
|
exceedNo = logscopy.length + count - maxRecords;
|
|
69
87
|
if (!(exceedNo > 0)) {
|
|
70
|
-
_context.next =
|
|
88
|
+
_context.next = 19;
|
|
71
89
|
break;
|
|
72
90
|
}
|
|
73
91
|
console.log("[worker] the count of stored logs exceeded limit of ".concat(maxRecords, " for ").concat(exceedNo, "."));
|
|
74
92
|
console.log("[worker] start deleting records. exceeded: ".concat(exceedNo));
|
|
75
|
-
_context.next =
|
|
93
|
+
_context.next = 17;
|
|
76
94
|
return _db.db.logs.orderBy(':id').reverse().limit(exceedNo)["delete"]();
|
|
77
|
-
case
|
|
95
|
+
case 17:
|
|
78
96
|
total = _context.sent;
|
|
79
97
|
console.log("[worker] done deleting records. total: ".concat(total));
|
|
80
|
-
case
|
|
81
|
-
_context.next =
|
|
98
|
+
case 19:
|
|
99
|
+
_context.next = 24;
|
|
82
100
|
break;
|
|
83
|
-
case
|
|
84
|
-
_context.prev =
|
|
85
|
-
_context.t0 = _context["catch"](
|
|
101
|
+
case 21:
|
|
102
|
+
_context.prev = 21;
|
|
103
|
+
_context.t0 = _context["catch"](7);
|
|
86
104
|
console.error("[worker] clear db failed.", _context.t0);
|
|
87
|
-
case
|
|
88
|
-
_context.prev =
|
|
105
|
+
case 24:
|
|
106
|
+
_context.prev = 24;
|
|
89
107
|
console.log("[worker] start writing logs. total: ".concat(logscopy.length));
|
|
90
|
-
_context.next =
|
|
108
|
+
_context.next = 28;
|
|
91
109
|
return _db.db.logs.bulkPut(logscopy);
|
|
92
|
-
case
|
|
110
|
+
case 28:
|
|
93
111
|
pk = _context.sent;
|
|
94
112
|
time2 = new Date().getTime();
|
|
95
113
|
console.log("[worker] done writing logs in ".concat(time2 - time1, "ms. total: ").concat(logscopy.length, ", lastId: ").concat(pk));
|
|
96
|
-
_context.next =
|
|
114
|
+
_context.next = 36;
|
|
97
115
|
break;
|
|
98
|
-
case
|
|
99
|
-
_context.prev =
|
|
100
|
-
_context.t1 = _context["catch"](
|
|
116
|
+
case 33:
|
|
117
|
+
_context.prev = 33;
|
|
118
|
+
_context.t1 = _context["catch"](24);
|
|
101
119
|
console.error("[worker] bulkPut ".concat(logscopy.length, " failed."), _context.t1);
|
|
102
|
-
case
|
|
120
|
+
case 36:
|
|
103
121
|
case "end":
|
|
104
122
|
return _context.stop();
|
|
105
123
|
}
|
|
106
|
-
}, _callee, null, [[
|
|
124
|
+
}, _callee, null, [[7, 21], [24, 33]]);
|
|
107
125
|
}))(), MAX_WAIT_TIME);
|
|
108
126
|
})["catch"](function (e) {
|
|
109
127
|
console.log('[worker] an error during dispatching writeLog', e);
|
|
@@ -243,4 +261,41 @@ var setMaxRecords = exports.setMaxRecords = function setMaxRecords(self, callId,
|
|
|
243
261
|
(0, _reply.reply)(self, callId, _constants.WorkerDirectives.SET_MAX_RECORDS, {
|
|
244
262
|
isSuccess: true
|
|
245
263
|
});
|
|
264
|
+
};
|
|
265
|
+
var initFsLogger = /*#__PURE__*/function () {
|
|
266
|
+
var _ref4 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4(logPath) {
|
|
267
|
+
var winston;
|
|
268
|
+
return _regenerator["default"].wrap(function _callee4$(_context5) {
|
|
269
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
270
|
+
case 0:
|
|
271
|
+
winston = eval('require("winston")');
|
|
272
|
+
winstonLogger = winston.createLogger({
|
|
273
|
+
format: winston.format.printf(function (_ref5) {
|
|
274
|
+
var message = _ref5.message;
|
|
275
|
+
return "".concat(message);
|
|
276
|
+
}),
|
|
277
|
+
transports: [new winston.transports.File({
|
|
278
|
+
filename: logPath,
|
|
279
|
+
maxFiles: 5,
|
|
280
|
+
maxsize: 1048576 //1MB,
|
|
281
|
+
})]
|
|
282
|
+
});
|
|
283
|
+
case 2:
|
|
284
|
+
case "end":
|
|
285
|
+
return _context5.stop();
|
|
286
|
+
}
|
|
287
|
+
}, _callee4);
|
|
288
|
+
}));
|
|
289
|
+
return function initFsLogger(_x8) {
|
|
290
|
+
return _ref4.apply(this, arguments);
|
|
291
|
+
};
|
|
292
|
+
}();
|
|
293
|
+
var initLogPath = exports.initLogPath = function initLogPath(logPath) {
|
|
294
|
+
console.log("[worker] log path is set to ".concat(logPath));
|
|
295
|
+
initFsLogger(logPath);
|
|
296
|
+
};
|
|
297
|
+
var writingToDisk = exports.writingToDisk = function writingToDisk(log) {
|
|
298
|
+
if (winstonLogger) {
|
|
299
|
+
winstonLogger.info(log);
|
|
300
|
+
}
|
|
246
301
|
};
|
|
@@ -13,7 +13,7 @@ export declare class WorkerInteractor implements LogWorkerInteractor {
|
|
|
13
13
|
deleteLogs(labels: string[], lastId: number): Promise<void>;
|
|
14
14
|
persistBinary(id: number, buffer: Buffer): Promise<void>;
|
|
15
15
|
unpersistBinary(id: number): Promise<void>;
|
|
16
|
-
getBinary(id: number): Promise<Buffer | null>;
|
|
16
|
+
getBinary(id: number): Promise<Buffer<ArrayBufferLike> | null>;
|
|
17
17
|
collectLogsOnFs(logDirPath: string): Promise<File>;
|
|
18
18
|
private _handleMessageCallback;
|
|
19
19
|
private _handleErrorCallback;
|
package/lib/worker/interactor.js
CHANGED
|
@@ -24,6 +24,7 @@ var _constants = require("./constants");
|
|
|
24
24
|
var _dayjs = _interopRequireDefault(require("dayjs"));
|
|
25
25
|
var _events = require("../utilities/events");
|
|
26
26
|
var _raceCondition = require("../utilities/race-condition");
|
|
27
|
+
var _env = require("../utilities/env");
|
|
27
28
|
var _excluded = ["isSuccess"];
|
|
28
29
|
var MAX_WAIT_TIME = 10000;
|
|
29
30
|
var WorkerInteractor = exports.WorkerInteractor = /*#__PURE__*/function () {
|
|
@@ -335,6 +336,16 @@ var WorkerInteractor = exports.WorkerInteractor = /*#__PURE__*/function () {
|
|
|
335
336
|
value: function _spawnNewWorker() {
|
|
336
337
|
console.info('[WorkerInteractor] spawned a new log worker');
|
|
337
338
|
var logWorker = (0, _workerFactory.createWorkerInstance)();
|
|
339
|
+
if ((0, _env.isElectron)()) {
|
|
340
|
+
var path = window.require('path');
|
|
341
|
+
var _window$require = window.require('@electron/remote'),
|
|
342
|
+
app = _window$require.app;
|
|
343
|
+
var logPath = path.resolve(app.getPath('logs'), 'logs', 'meeting-runtime.log');
|
|
344
|
+
logWorker.postMessage({
|
|
345
|
+
type: _constants.WorkerDirectives.INIT_LOG_PATH,
|
|
346
|
+
data: logPath
|
|
347
|
+
});
|
|
348
|
+
}
|
|
338
349
|
return logWorker;
|
|
339
350
|
}
|
|
340
351
|
}, {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { WorkerContext } from
|
|
1
|
+
import { WorkerContext } from './type';
|
|
2
2
|
export declare const installHandler: (self: WorkerContext) => void;
|
|
@@ -14,7 +14,7 @@ var _constants = require("./constants");
|
|
|
14
14
|
var _reply = require("./handler/reply");
|
|
15
15
|
var installHandler = exports.installHandler = function installHandler(self) {
|
|
16
16
|
console.log("[worker] worker initialzied.");
|
|
17
|
-
self.addEventListener(
|
|
17
|
+
self.addEventListener('message', function (evt) {
|
|
18
18
|
if (evt.data) {
|
|
19
19
|
var _evt$data = evt.data,
|
|
20
20
|
type = _evt$data.type,
|
|
@@ -30,6 +30,8 @@ var installHandler = exports.installHandler = function installHandler(self) {
|
|
|
30
30
|
created_at: +Date.now(),
|
|
31
31
|
timestamp: "".concat(now)
|
|
32
32
|
});
|
|
33
|
+
} else if (type === _constants.WorkerDirectives.INIT_LOG_PATH) {
|
|
34
|
+
(0, _log.initLogPath)(evt.data.data);
|
|
33
35
|
} else if (type === _constants.WorkerDirectives.SET_MAX_RECORDS) {
|
|
34
36
|
(0, _log.setMaxRecords)(self, callId, evt.data.data.maxRecords || 50000);
|
|
35
37
|
} else if (type === _constants.WorkerDirectives.COLLECT_LOGS) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agora-foundation",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "agora-tc-transpile",
|
|
@@ -21,7 +21,8 @@
|
|
|
21
21
|
"@types/lodash": "^4.14.168",
|
|
22
22
|
"@types/node": "^20.11.30",
|
|
23
23
|
"tslib": "^2.6.2",
|
|
24
|
-
"agora-toolchain": "^3.
|
|
24
|
+
"agora-toolchain": "^3.4.0",
|
|
25
|
+
"winston": "^3.16.0"
|
|
25
26
|
},
|
|
26
27
|
"dependencies": {
|
|
27
28
|
"async-await-retry": "^2.0.1",
|
|
@@ -30,4 +31,4 @@
|
|
|
30
31
|
"jszip": "^3.10.1",
|
|
31
32
|
"lodash": "^4.17.21"
|
|
32
33
|
}
|
|
33
|
-
}
|
|
34
|
+
}
|