@whyour/qinglong 0.10.1 → 0.11.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.
- package/README-en.md +10 -0
- package/README.md +6 -0
- package/docker/front.conf +1 -1
- package/package.json +6 -6
- package/sample/notify.js +11 -1
- package/sample/notify.py +4 -0
- package/shell/otask.sh +1 -1
- package/shell/share.sh +19 -3
- package/shell/update.sh +7 -6
- package/static/build/api/cron.js +6 -0
- package/static/build/api/script.js +1 -1
- package/static/build/config/serverEnv.js +5 -2
- package/static/build/data/auth.js +2 -2
- package/static/build/data/cron.js +7 -1
- package/static/build/data/cronView.js +1 -1
- package/static/build/data/dependence.js +6 -6
- package/static/build/data/env.js +1 -1
- package/static/build/data/notify.js +3 -1
- package/static/build/data/subscription.js +1 -1
- package/static/build/loaders/db.js +12 -0
- package/static/build/protos/cron.js +97 -37
- package/static/build/protos/health.js +25 -30
- package/static/build/schedule/addCron.js +19 -11
- package/static/build/schedule/delCron.js +1 -1
- package/static/build/services/cron.js +23 -21
- package/static/build/services/notify.js +2 -2
- package/static/build/services/system.js +3 -3
- package/static/build/shared/pLimit.js +6 -6
- package/static/dist/1124.0d983222.async.js +1 -0
- package/static/dist/{4906.493cf3fd.async.js → 2393.4404a4fc.async.js} +1 -1
- package/static/dist/{8969.26b0efff.async.js → 3435.4a54080b.async.js} +1 -1
- package/static/dist/419.f84c4548.async.js +1 -0
- package/static/dist/7362.9fde9d80.async.js +1 -0
- package/static/dist/{8130.10d10b7d.async.js → 745.3be9ce9f.async.js} +1 -1
- package/static/dist/7987.5bace809.async.js +1 -0
- package/static/dist/8008.882bf214.async.js +1 -0
- package/static/dist/8078.4add9375.async.js +1 -0
- package/static/dist/833.ca85f497.async.js +1 -0
- package/static/dist/9120.ef78d517.async.js +1 -0
- package/static/dist/index.html +1 -1
- package/static/dist/layouts__index.0909c66d.chunk.css +1 -0
- package/static/dist/layouts__index.ed595716.async.js +1 -0
- package/static/dist/{src__pages__404.f77cf9a2.async.js → src__pages__404.e6b13931.async.js} +1 -1
- package/static/dist/src__pages__config__index.f41a22d4.async.js +1 -0
- package/static/dist/src__pages__crontab__detail.b4fc2995.async.js +1 -0
- package/static/dist/src__pages__crontab__index.776dba58.async.js +1 -0
- package/static/dist/src__pages__crontab__logModal.0fb6d62d.async.js +1 -0
- package/static/dist/src__pages__crontab__modal.0b01490c.async.js +1 -0
- package/static/dist/{src__pages__crontab__type.bd5374bd.async.js → src__pages__crontab__type.a798cac7.async.js} +1 -1
- package/static/dist/src__pages__crontab__viewManageModal.67aa809d.async.js +1 -0
- package/static/dist/src__pages__dependence__index.1908bb39.async.js +1 -0
- package/static/dist/src__pages__dependence__logModal.8ecc9316.async.js +1 -0
- package/static/dist/src__pages__dependence__modal.9c12e6bb.async.js +1 -0
- package/static/dist/src__pages__diff__index.e23d088b.async.js +1 -0
- package/static/dist/src__pages__env__editNameModal.6f1edde6.async.js +1 -0
- package/static/dist/src__pages__env__index.3b08292e.async.js +1 -0
- package/static/dist/src__pages__env__modal.ca6133e6.async.js +1 -0
- package/static/dist/src__pages__error__index.0b4f4a22.async.js +1 -0
- package/static/dist/src__pages__initialization__index.51ebefcb.async.js +1 -0
- package/static/dist/src__pages__log__index.4010410c.async.js +1 -0
- package/static/dist/{src__pages__login__index.ce467c16.async.js → src__pages__login__index.8667d8d2.async.js} +1 -1
- package/static/dist/src__pages__script__editModal.b020a209.async.js +1 -0
- package/static/dist/src__pages__script__editNameModal.9220eb1a.async.js +1 -0
- package/static/dist/src__pages__script__index.6184a17e.async.js +1 -0
- package/static/dist/src__pages__script__renameModal.d6192fed.async.js +1 -0
- package/static/dist/src__pages__script__saveModal.eac5e9e7.async.js +1 -0
- package/static/dist/src__pages__script__setting.b958297b.async.js +1 -0
- package/static/dist/src__pages__setting__about.992010a5.async.js +1 -0
- package/static/dist/src__pages__setting__appModal.7563e7b0.async.js +1 -0
- package/static/dist/src__pages__setting__index.2aa66013.async.js +1 -0
- package/static/dist/{src__pages__setting__loginLog.4f883eb7.async.js → src__pages__setting__loginLog.2f2b0a78.async.js} +1 -1
- package/static/dist/src__pages__setting__notification.e8ce9bdc.async.js +1 -0
- package/static/dist/src__pages__setting__other.c6067975.async.js +1 -0
- package/static/dist/{src__pages__setting__progress.ab51bf0a.async.js → src__pages__setting__progress.f58bffae.async.js} +1 -1
- package/static/dist/src__pages__setting__security.cae5c68d.async.js +1 -0
- package/static/dist/src__pages__subscription__index.3266194c.async.js +1 -0
- package/static/dist/{src__pages__subscription__logModal.3037cb57.async.js → src__pages__subscription__logModal.a023b07e.async.js} +1 -1
- package/static/dist/src__pages__subscription__modal.49a1a657.async.js +1 -0
- package/static/dist/umi.ff82d609.js +1 -0
- package/version.yaml +10 -12
- package/static/dist/1925.b3032a5e.async.js +0 -1
- package/static/dist/3330.485d94a3.async.js +0 -1
- package/static/dist/3639.62f45f5e.async.js +0 -1
- package/static/dist/4618.cc1776f5.async.js +0 -1
- package/static/dist/4714.bbe9fae0.async.js +0 -1
- package/static/dist/8044.129359a6.async.js +0 -1
- package/static/dist/819.525cbfda.async.js +0 -1
- package/static/dist/layouts__index.20e4a8b2.async.js +0 -1
- package/static/dist/layouts__index.ddfcd364.chunk.css +0 -1
- package/static/dist/src__pages__config__index.fedea3f9.async.js +0 -1
- package/static/dist/src__pages__crontab__detail.ad4729f7.async.js +0 -1
- package/static/dist/src__pages__crontab__index.a82cfa81.async.js +0 -1
- package/static/dist/src__pages__crontab__logModal.ad170a0f.async.js +0 -1
- package/static/dist/src__pages__crontab__modal.696faf3d.async.js +0 -1
- package/static/dist/src__pages__crontab__viewManageModal.1bb04623.async.js +0 -1
- package/static/dist/src__pages__dependence__index.9f871d7e.async.js +0 -1
- package/static/dist/src__pages__dependence__logModal.b8dfb9bf.async.js +0 -1
- package/static/dist/src__pages__dependence__modal.77688c64.async.js +0 -1
- package/static/dist/src__pages__diff__index.73c27cfb.async.js +0 -1
- package/static/dist/src__pages__env__editNameModal.0b8b8511.async.js +0 -1
- package/static/dist/src__pages__env__index.c2e7f61a.async.js +0 -1
- package/static/dist/src__pages__env__modal.d4bcf3f1.async.js +0 -1
- package/static/dist/src__pages__error__index.9d76a461.async.js +0 -1
- package/static/dist/src__pages__initialization__index.7cb87ba4.async.js +0 -1
- package/static/dist/src__pages__log__index.8da82aea.async.js +0 -1
- package/static/dist/src__pages__script__editModal.dddd633e.async.js +0 -1
- package/static/dist/src__pages__script__editNameModal.159d0a29.async.js +0 -1
- package/static/dist/src__pages__script__index.123b12c6.async.js +0 -1
- package/static/dist/src__pages__script__renameModal.d4788f88.async.js +0 -1
- package/static/dist/src__pages__script__saveModal.f5fc2c94.async.js +0 -1
- package/static/dist/src__pages__script__setting.5004f9a6.async.js +0 -1
- package/static/dist/src__pages__setting__about.ef6f0636.async.js +0 -1
- package/static/dist/src__pages__setting__appModal.52ba0fb4.async.js +0 -1
- package/static/dist/src__pages__setting__index.ccb20d34.async.js +0 -1
- package/static/dist/src__pages__setting__notification.4f6be181.async.js +0 -1
- package/static/dist/src__pages__setting__other.ef42b461.async.js +0 -1
- package/static/dist/src__pages__setting__security.fed987f7.async.js +0 -1
- package/static/dist/src__pages__subscription__index.a434b6c5.async.js +0 -1
- package/static/dist/src__pages__subscription__modal.91d85c79.async.js +0 -1
- package/static/dist/umi.740bd8f7.js +0 -1
- /package/static/dist/{1095.59dcf306.chunk.css → 2182.59dcf306.chunk.css} +0 -0
- /package/static/dist/{8969.d2d0a2c7.chunk.css → 3435.d2d0a2c7.chunk.css} +0 -0
|
@@ -3,25 +3,77 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.CronClient = exports.CronService = exports.DeleteCronResponse = exports.DeleteCronRequest = exports.AddCronResponse = exports.AddCronRequest = exports.ICron = exports.protobufPackage = void 0;
|
|
6
|
+
exports.CronClient = exports.CronService = exports.DeleteCronResponse = exports.DeleteCronRequest = exports.AddCronResponse = exports.AddCronRequest = exports.ICron = exports.ISchedule = exports.protobufPackage = void 0;
|
|
7
7
|
/* eslint-disable */
|
|
8
8
|
const grpc_js_1 = require("@grpc/grpc-js");
|
|
9
9
|
const minimal_1 = __importDefault(require("protobufjs/minimal"));
|
|
10
|
-
exports.protobufPackage =
|
|
10
|
+
exports.protobufPackage = "com.ql.cron";
|
|
11
|
+
function createBaseISchedule() {
|
|
12
|
+
return { schedule: "" };
|
|
13
|
+
}
|
|
14
|
+
exports.ISchedule = {
|
|
15
|
+
encode(message, writer = minimal_1.default.Writer.create()) {
|
|
16
|
+
if (message.schedule !== "") {
|
|
17
|
+
writer.uint32(10).string(message.schedule);
|
|
18
|
+
}
|
|
19
|
+
return writer;
|
|
20
|
+
},
|
|
21
|
+
decode(input, length) {
|
|
22
|
+
const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
|
|
23
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
24
|
+
const message = createBaseISchedule();
|
|
25
|
+
while (reader.pos < end) {
|
|
26
|
+
const tag = reader.uint32();
|
|
27
|
+
switch (tag >>> 3) {
|
|
28
|
+
case 1:
|
|
29
|
+
if (tag !== 10) {
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
message.schedule = reader.string();
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
36
|
+
break;
|
|
37
|
+
}
|
|
38
|
+
reader.skipType(tag & 7);
|
|
39
|
+
}
|
|
40
|
+
return message;
|
|
41
|
+
},
|
|
42
|
+
fromJSON(object) {
|
|
43
|
+
return { schedule: isSet(object.schedule) ? String(object.schedule) : "" };
|
|
44
|
+
},
|
|
45
|
+
toJSON(message) {
|
|
46
|
+
const obj = {};
|
|
47
|
+
message.schedule !== undefined && (obj.schedule = message.schedule);
|
|
48
|
+
return obj;
|
|
49
|
+
},
|
|
50
|
+
create(base) {
|
|
51
|
+
return exports.ISchedule.fromPartial(base !== null && base !== void 0 ? base : {});
|
|
52
|
+
},
|
|
53
|
+
fromPartial(object) {
|
|
54
|
+
var _a;
|
|
55
|
+
const message = createBaseISchedule();
|
|
56
|
+
message.schedule = (_a = object.schedule) !== null && _a !== void 0 ? _a : "";
|
|
57
|
+
return message;
|
|
58
|
+
},
|
|
59
|
+
};
|
|
11
60
|
function createBaseICron() {
|
|
12
|
-
return { id:
|
|
61
|
+
return { id: "", schedule: "", command: "", extraSchedules: [] };
|
|
13
62
|
}
|
|
14
63
|
exports.ICron = {
|
|
15
64
|
encode(message, writer = minimal_1.default.Writer.create()) {
|
|
16
|
-
if (message.id !==
|
|
65
|
+
if (message.id !== "") {
|
|
17
66
|
writer.uint32(10).string(message.id);
|
|
18
67
|
}
|
|
19
|
-
if (message.schedule !==
|
|
68
|
+
if (message.schedule !== "") {
|
|
20
69
|
writer.uint32(18).string(message.schedule);
|
|
21
70
|
}
|
|
22
|
-
if (message.command !==
|
|
71
|
+
if (message.command !== "") {
|
|
23
72
|
writer.uint32(26).string(message.command);
|
|
24
73
|
}
|
|
74
|
+
for (const v of message.extraSchedules) {
|
|
75
|
+
exports.ISchedule.encode(v, writer.uint32(34).fork()).ldelim();
|
|
76
|
+
}
|
|
25
77
|
return writer;
|
|
26
78
|
},
|
|
27
79
|
decode(input, length) {
|
|
@@ -32,25 +84,31 @@ exports.ICron = {
|
|
|
32
84
|
const tag = reader.uint32();
|
|
33
85
|
switch (tag >>> 3) {
|
|
34
86
|
case 1:
|
|
35
|
-
if (tag
|
|
87
|
+
if (tag !== 10) {
|
|
36
88
|
break;
|
|
37
89
|
}
|
|
38
90
|
message.id = reader.string();
|
|
39
91
|
continue;
|
|
40
92
|
case 2:
|
|
41
|
-
if (tag
|
|
93
|
+
if (tag !== 18) {
|
|
42
94
|
break;
|
|
43
95
|
}
|
|
44
96
|
message.schedule = reader.string();
|
|
45
97
|
continue;
|
|
46
98
|
case 3:
|
|
47
|
-
if (tag
|
|
99
|
+
if (tag !== 26) {
|
|
48
100
|
break;
|
|
49
101
|
}
|
|
50
102
|
message.command = reader.string();
|
|
51
103
|
continue;
|
|
104
|
+
case 4:
|
|
105
|
+
if (tag !== 34) {
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
message.extraSchedules.push(exports.ISchedule.decode(reader, reader.uint32()));
|
|
109
|
+
continue;
|
|
52
110
|
}
|
|
53
|
-
if ((tag & 7)
|
|
111
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
54
112
|
break;
|
|
55
113
|
}
|
|
56
114
|
reader.skipType(tag & 7);
|
|
@@ -59,9 +117,12 @@ exports.ICron = {
|
|
|
59
117
|
},
|
|
60
118
|
fromJSON(object) {
|
|
61
119
|
return {
|
|
62
|
-
id: isSet(object.id) ? String(object.id) :
|
|
63
|
-
schedule: isSet(object.schedule) ? String(object.schedule) :
|
|
64
|
-
command: isSet(object.command) ? String(object.command) :
|
|
120
|
+
id: isSet(object.id) ? String(object.id) : "",
|
|
121
|
+
schedule: isSet(object.schedule) ? String(object.schedule) : "",
|
|
122
|
+
command: isSet(object.command) ? String(object.command) : "",
|
|
123
|
+
extraSchedules: Array.isArray(object === null || object === void 0 ? void 0 : object.extraSchedules)
|
|
124
|
+
? object.extraSchedules.map((e) => exports.ISchedule.fromJSON(e))
|
|
125
|
+
: [],
|
|
65
126
|
};
|
|
66
127
|
},
|
|
67
128
|
toJSON(message) {
|
|
@@ -69,17 +130,24 @@ exports.ICron = {
|
|
|
69
130
|
message.id !== undefined && (obj.id = message.id);
|
|
70
131
|
message.schedule !== undefined && (obj.schedule = message.schedule);
|
|
71
132
|
message.command !== undefined && (obj.command = message.command);
|
|
133
|
+
if (message.extraSchedules) {
|
|
134
|
+
obj.extraSchedules = message.extraSchedules.map((e) => e ? exports.ISchedule.toJSON(e) : undefined);
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
obj.extraSchedules = [];
|
|
138
|
+
}
|
|
72
139
|
return obj;
|
|
73
140
|
},
|
|
74
141
|
create(base) {
|
|
75
142
|
return exports.ICron.fromPartial(base !== null && base !== void 0 ? base : {});
|
|
76
143
|
},
|
|
77
144
|
fromPartial(object) {
|
|
78
|
-
var _a, _b, _c;
|
|
145
|
+
var _a, _b, _c, _d;
|
|
79
146
|
const message = createBaseICron();
|
|
80
|
-
message.id = (_a = object.id) !== null && _a !== void 0 ? _a :
|
|
81
|
-
message.schedule = (_b = object.schedule) !== null && _b !== void 0 ? _b :
|
|
82
|
-
message.command = (_c = object.command) !== null && _c !== void 0 ? _c :
|
|
147
|
+
message.id = (_a = object.id) !== null && _a !== void 0 ? _a : "";
|
|
148
|
+
message.schedule = (_b = object.schedule) !== null && _b !== void 0 ? _b : "";
|
|
149
|
+
message.command = (_c = object.command) !== null && _c !== void 0 ? _c : "";
|
|
150
|
+
message.extraSchedules = ((_d = object.extraSchedules) === null || _d === void 0 ? void 0 : _d.map((e) => exports.ISchedule.fromPartial(e))) || [];
|
|
83
151
|
return message;
|
|
84
152
|
},
|
|
85
153
|
};
|
|
@@ -101,13 +169,13 @@ exports.AddCronRequest = {
|
|
|
101
169
|
const tag = reader.uint32();
|
|
102
170
|
switch (tag >>> 3) {
|
|
103
171
|
case 1:
|
|
104
|
-
if (tag
|
|
172
|
+
if (tag !== 10) {
|
|
105
173
|
break;
|
|
106
174
|
}
|
|
107
175
|
message.crons.push(exports.ICron.decode(reader, reader.uint32()));
|
|
108
176
|
continue;
|
|
109
177
|
}
|
|
110
|
-
if ((tag & 7)
|
|
178
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
111
179
|
break;
|
|
112
180
|
}
|
|
113
181
|
reader.skipType(tag & 7);
|
|
@@ -115,16 +183,12 @@ exports.AddCronRequest = {
|
|
|
115
183
|
return message;
|
|
116
184
|
},
|
|
117
185
|
fromJSON(object) {
|
|
118
|
-
return {
|
|
119
|
-
crons: Array.isArray(object === null || object === void 0 ? void 0 : object.crons)
|
|
120
|
-
? object.crons.map((e) => exports.ICron.fromJSON(e))
|
|
121
|
-
: [],
|
|
122
|
-
};
|
|
186
|
+
return { crons: Array.isArray(object === null || object === void 0 ? void 0 : object.crons) ? object.crons.map((e) => exports.ICron.fromJSON(e)) : [] };
|
|
123
187
|
},
|
|
124
188
|
toJSON(message) {
|
|
125
189
|
const obj = {};
|
|
126
190
|
if (message.crons) {
|
|
127
|
-
obj.crons = message.crons.map((e) =>
|
|
191
|
+
obj.crons = message.crons.map((e) => e ? exports.ICron.toJSON(e) : undefined);
|
|
128
192
|
}
|
|
129
193
|
else {
|
|
130
194
|
obj.crons = [];
|
|
@@ -156,7 +220,7 @@ exports.AddCronResponse = {
|
|
|
156
220
|
const tag = reader.uint32();
|
|
157
221
|
switch (tag >>> 3) {
|
|
158
222
|
}
|
|
159
|
-
if ((tag & 7)
|
|
223
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
160
224
|
break;
|
|
161
225
|
}
|
|
162
226
|
reader.skipType(tag & 7);
|
|
@@ -196,13 +260,13 @@ exports.DeleteCronRequest = {
|
|
|
196
260
|
const tag = reader.uint32();
|
|
197
261
|
switch (tag >>> 3) {
|
|
198
262
|
case 1:
|
|
199
|
-
if (tag
|
|
263
|
+
if (tag !== 10) {
|
|
200
264
|
break;
|
|
201
265
|
}
|
|
202
266
|
message.ids.push(reader.string());
|
|
203
267
|
continue;
|
|
204
268
|
}
|
|
205
|
-
if ((tag & 7)
|
|
269
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
206
270
|
break;
|
|
207
271
|
}
|
|
208
272
|
reader.skipType(tag & 7);
|
|
@@ -210,11 +274,7 @@ exports.DeleteCronRequest = {
|
|
|
210
274
|
return message;
|
|
211
275
|
},
|
|
212
276
|
fromJSON(object) {
|
|
213
|
-
return {
|
|
214
|
-
ids: Array.isArray(object === null || object === void 0 ? void 0 : object.ids)
|
|
215
|
-
? object.ids.map((e) => String(e))
|
|
216
|
-
: [],
|
|
217
|
-
};
|
|
277
|
+
return { ids: Array.isArray(object === null || object === void 0 ? void 0 : object.ids) ? object.ids.map((e) => String(e)) : [] };
|
|
218
278
|
},
|
|
219
279
|
toJSON(message) {
|
|
220
280
|
const obj = {};
|
|
@@ -251,7 +311,7 @@ exports.DeleteCronResponse = {
|
|
|
251
311
|
const tag = reader.uint32();
|
|
252
312
|
switch (tag >>> 3) {
|
|
253
313
|
}
|
|
254
|
-
if ((tag & 7)
|
|
314
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
255
315
|
break;
|
|
256
316
|
}
|
|
257
317
|
reader.skipType(tag & 7);
|
|
@@ -275,7 +335,7 @@ exports.DeleteCronResponse = {
|
|
|
275
335
|
};
|
|
276
336
|
exports.CronService = {
|
|
277
337
|
addCron: {
|
|
278
|
-
path:
|
|
338
|
+
path: "/com.ql.cron.Cron/addCron",
|
|
279
339
|
requestStream: false,
|
|
280
340
|
responseStream: false,
|
|
281
341
|
requestSerialize: (value) => Buffer.from(exports.AddCronRequest.encode(value).finish()),
|
|
@@ -284,7 +344,7 @@ exports.CronService = {
|
|
|
284
344
|
responseDeserialize: (value) => exports.AddCronResponse.decode(value),
|
|
285
345
|
},
|
|
286
346
|
delCron: {
|
|
287
|
-
path:
|
|
347
|
+
path: "/com.ql.cron.Cron/delCron",
|
|
288
348
|
requestStream: false,
|
|
289
349
|
responseStream: false,
|
|
290
350
|
requestSerialize: (value) => Buffer.from(exports.DeleteCronRequest.encode(value).finish()),
|
|
@@ -293,7 +353,7 @@ exports.CronService = {
|
|
|
293
353
|
responseDeserialize: (value) => exports.DeleteCronResponse.decode(value),
|
|
294
354
|
},
|
|
295
355
|
};
|
|
296
|
-
exports.CronClient = (0, grpc_js_1.makeGenericClientConstructor)(exports.CronService,
|
|
356
|
+
exports.CronClient = (0, grpc_js_1.makeGenericClientConstructor)(exports.CronService, "com.ql.cron.Cron");
|
|
297
357
|
function isSet(value) {
|
|
298
358
|
return value !== null && value !== undefined;
|
|
299
359
|
}
|
|
@@ -7,7 +7,7 @@ exports.HealthClient = exports.HealthService = exports.HealthCheckResponse = exp
|
|
|
7
7
|
/* eslint-disable */
|
|
8
8
|
const grpc_js_1 = require("@grpc/grpc-js");
|
|
9
9
|
const minimal_1 = __importDefault(require("protobufjs/minimal"));
|
|
10
|
-
exports.protobufPackage =
|
|
10
|
+
exports.protobufPackage = "com.ql.health";
|
|
11
11
|
var HealthCheckResponse_ServingStatus;
|
|
12
12
|
(function (HealthCheckResponse_ServingStatus) {
|
|
13
13
|
HealthCheckResponse_ServingStatus[HealthCheckResponse_ServingStatus["UNKNOWN"] = 0] = "UNKNOWN";
|
|
@@ -15,23 +15,23 @@ var HealthCheckResponse_ServingStatus;
|
|
|
15
15
|
HealthCheckResponse_ServingStatus[HealthCheckResponse_ServingStatus["NOT_SERVING"] = 2] = "NOT_SERVING";
|
|
16
16
|
HealthCheckResponse_ServingStatus[HealthCheckResponse_ServingStatus["SERVICE_UNKNOWN"] = 3] = "SERVICE_UNKNOWN";
|
|
17
17
|
HealthCheckResponse_ServingStatus[HealthCheckResponse_ServingStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
|
|
18
|
-
})(HealthCheckResponse_ServingStatus
|
|
18
|
+
})(HealthCheckResponse_ServingStatus || (exports.HealthCheckResponse_ServingStatus = HealthCheckResponse_ServingStatus = {}));
|
|
19
19
|
function healthCheckResponse_ServingStatusFromJSON(object) {
|
|
20
20
|
switch (object) {
|
|
21
21
|
case 0:
|
|
22
|
-
case
|
|
22
|
+
case "UNKNOWN":
|
|
23
23
|
return HealthCheckResponse_ServingStatus.UNKNOWN;
|
|
24
24
|
case 1:
|
|
25
|
-
case
|
|
25
|
+
case "SERVING":
|
|
26
26
|
return HealthCheckResponse_ServingStatus.SERVING;
|
|
27
27
|
case 2:
|
|
28
|
-
case
|
|
28
|
+
case "NOT_SERVING":
|
|
29
29
|
return HealthCheckResponse_ServingStatus.NOT_SERVING;
|
|
30
30
|
case 3:
|
|
31
|
-
case
|
|
31
|
+
case "SERVICE_UNKNOWN":
|
|
32
32
|
return HealthCheckResponse_ServingStatus.SERVICE_UNKNOWN;
|
|
33
33
|
case -1:
|
|
34
|
-
case
|
|
34
|
+
case "UNRECOGNIZED":
|
|
35
35
|
default:
|
|
36
36
|
return HealthCheckResponse_ServingStatus.UNRECOGNIZED;
|
|
37
37
|
}
|
|
@@ -40,25 +40,25 @@ exports.healthCheckResponse_ServingStatusFromJSON = healthCheckResponse_ServingS
|
|
|
40
40
|
function healthCheckResponse_ServingStatusToJSON(object) {
|
|
41
41
|
switch (object) {
|
|
42
42
|
case HealthCheckResponse_ServingStatus.UNKNOWN:
|
|
43
|
-
return
|
|
43
|
+
return "UNKNOWN";
|
|
44
44
|
case HealthCheckResponse_ServingStatus.SERVING:
|
|
45
|
-
return
|
|
45
|
+
return "SERVING";
|
|
46
46
|
case HealthCheckResponse_ServingStatus.NOT_SERVING:
|
|
47
|
-
return
|
|
47
|
+
return "NOT_SERVING";
|
|
48
48
|
case HealthCheckResponse_ServingStatus.SERVICE_UNKNOWN:
|
|
49
|
-
return
|
|
49
|
+
return "SERVICE_UNKNOWN";
|
|
50
50
|
case HealthCheckResponse_ServingStatus.UNRECOGNIZED:
|
|
51
51
|
default:
|
|
52
|
-
return
|
|
52
|
+
return "UNRECOGNIZED";
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
exports.healthCheckResponse_ServingStatusToJSON = healthCheckResponse_ServingStatusToJSON;
|
|
56
56
|
function createBaseHealthCheckRequest() {
|
|
57
|
-
return { service:
|
|
57
|
+
return { service: "" };
|
|
58
58
|
}
|
|
59
59
|
exports.HealthCheckRequest = {
|
|
60
60
|
encode(message, writer = minimal_1.default.Writer.create()) {
|
|
61
|
-
if (message.service !==
|
|
61
|
+
if (message.service !== "") {
|
|
62
62
|
writer.uint32(10).string(message.service);
|
|
63
63
|
}
|
|
64
64
|
return writer;
|
|
@@ -71,13 +71,13 @@ exports.HealthCheckRequest = {
|
|
|
71
71
|
const tag = reader.uint32();
|
|
72
72
|
switch (tag >>> 3) {
|
|
73
73
|
case 1:
|
|
74
|
-
if (tag
|
|
74
|
+
if (tag !== 10) {
|
|
75
75
|
break;
|
|
76
76
|
}
|
|
77
77
|
message.service = reader.string();
|
|
78
78
|
continue;
|
|
79
79
|
}
|
|
80
|
-
if ((tag & 7)
|
|
80
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
81
81
|
break;
|
|
82
82
|
}
|
|
83
83
|
reader.skipType(tag & 7);
|
|
@@ -85,7 +85,7 @@ exports.HealthCheckRequest = {
|
|
|
85
85
|
return message;
|
|
86
86
|
},
|
|
87
87
|
fromJSON(object) {
|
|
88
|
-
return { service: isSet(object.service) ? String(object.service) :
|
|
88
|
+
return { service: isSet(object.service) ? String(object.service) : "" };
|
|
89
89
|
},
|
|
90
90
|
toJSON(message) {
|
|
91
91
|
const obj = {};
|
|
@@ -98,7 +98,7 @@ exports.HealthCheckRequest = {
|
|
|
98
98
|
fromPartial(object) {
|
|
99
99
|
var _a;
|
|
100
100
|
const message = createBaseHealthCheckRequest();
|
|
101
|
-
message.service = (_a = object.service) !== null && _a !== void 0 ? _a :
|
|
101
|
+
message.service = (_a = object.service) !== null && _a !== void 0 ? _a : "";
|
|
102
102
|
return message;
|
|
103
103
|
},
|
|
104
104
|
};
|
|
@@ -120,13 +120,13 @@ exports.HealthCheckResponse = {
|
|
|
120
120
|
const tag = reader.uint32();
|
|
121
121
|
switch (tag >>> 3) {
|
|
122
122
|
case 1:
|
|
123
|
-
if (tag
|
|
123
|
+
if (tag !== 8) {
|
|
124
124
|
break;
|
|
125
125
|
}
|
|
126
126
|
message.status = reader.int32();
|
|
127
127
|
continue;
|
|
128
128
|
}
|
|
129
|
-
if ((tag & 7)
|
|
129
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
130
130
|
break;
|
|
131
131
|
}
|
|
132
132
|
reader.skipType(tag & 7);
|
|
@@ -134,16 +134,11 @@ exports.HealthCheckResponse = {
|
|
|
134
134
|
return message;
|
|
135
135
|
},
|
|
136
136
|
fromJSON(object) {
|
|
137
|
-
return {
|
|
138
|
-
status: isSet(object.status)
|
|
139
|
-
? healthCheckResponse_ServingStatusFromJSON(object.status)
|
|
140
|
-
: 0,
|
|
141
|
-
};
|
|
137
|
+
return { status: isSet(object.status) ? healthCheckResponse_ServingStatusFromJSON(object.status) : 0 };
|
|
142
138
|
},
|
|
143
139
|
toJSON(message) {
|
|
144
140
|
const obj = {};
|
|
145
|
-
message.status !== undefined &&
|
|
146
|
-
(obj.status = healthCheckResponse_ServingStatusToJSON(message.status));
|
|
141
|
+
message.status !== undefined && (obj.status = healthCheckResponse_ServingStatusToJSON(message.status));
|
|
147
142
|
return obj;
|
|
148
143
|
},
|
|
149
144
|
create(base) {
|
|
@@ -158,7 +153,7 @@ exports.HealthCheckResponse = {
|
|
|
158
153
|
};
|
|
159
154
|
exports.HealthService = {
|
|
160
155
|
check: {
|
|
161
|
-
path:
|
|
156
|
+
path: "/com.ql.health.Health/Check",
|
|
162
157
|
requestStream: false,
|
|
163
158
|
responseStream: false,
|
|
164
159
|
requestSerialize: (value) => Buffer.from(exports.HealthCheckRequest.encode(value).finish()),
|
|
@@ -167,7 +162,7 @@ exports.HealthService = {
|
|
|
167
162
|
responseDeserialize: (value) => exports.HealthCheckResponse.decode(value),
|
|
168
163
|
},
|
|
169
164
|
watch: {
|
|
170
|
-
path:
|
|
165
|
+
path: "/com.ql.health.Health/Watch",
|
|
171
166
|
requestStream: false,
|
|
172
167
|
responseStream: true,
|
|
173
168
|
requestSerialize: (value) => Buffer.from(exports.HealthCheckRequest.encode(value).finish()),
|
|
@@ -176,7 +171,7 @@ exports.HealthService = {
|
|
|
176
171
|
responseDeserialize: (value) => exports.HealthCheckResponse.decode(value),
|
|
177
172
|
},
|
|
178
173
|
};
|
|
179
|
-
exports.HealthClient = (0, grpc_js_1.makeGenericClientConstructor)(exports.HealthService,
|
|
174
|
+
exports.HealthClient = (0, grpc_js_1.makeGenericClientConstructor)(exports.HealthService, "com.ql.health.Health");
|
|
180
175
|
function isSet(value) {
|
|
181
176
|
return value !== null && value !== undefined;
|
|
182
177
|
}
|
|
@@ -7,24 +7,32 @@ exports.addCron = void 0;
|
|
|
7
7
|
const node_schedule_1 = __importDefault(require("node-schedule"));
|
|
8
8
|
const data_1 = require("./data");
|
|
9
9
|
const runCron_1 = require("../shared/runCron");
|
|
10
|
-
const const_1 = require("../config/const");
|
|
11
10
|
const logger_1 = __importDefault(require("../loaders/logger"));
|
|
12
11
|
const addCron = (call, callback) => {
|
|
13
12
|
var _a;
|
|
14
13
|
for (const item of call.request.crons) {
|
|
15
|
-
const { id, schedule, command } = item;
|
|
14
|
+
const { id, schedule, command, extraSchedules } = item;
|
|
16
15
|
if (data_1.scheduleStacks.has(id)) {
|
|
17
|
-
(_a = data_1.scheduleStacks.get(id)) === null || _a === void 0 ? void 0 : _a.cancel();
|
|
18
|
-
}
|
|
19
|
-
let cmdStr = command.trim();
|
|
20
|
-
if (!cmdStr.startsWith(const_1.TASK_PREFIX) && !cmdStr.startsWith(const_1.QL_PREFIX)) {
|
|
21
|
-
cmdStr = `${const_1.TASK_PREFIX}${cmdStr}`;
|
|
16
|
+
(_a = data_1.scheduleStacks.get(id)) === null || _a === void 0 ? void 0 : _a.forEach((x) => x.cancel());
|
|
22
17
|
}
|
|
23
18
|
logger_1.default.info('[schedule][创建定时任务], 任务ID: %s, cron: %s, 执行命令: %s', id, schedule, command);
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
19
|
+
if (extraSchedules === null || extraSchedules === void 0 ? void 0 : extraSchedules.length) {
|
|
20
|
+
extraSchedules.forEach(x => {
|
|
21
|
+
logger_1.default.info('[schedule][创建定时任务], 任务ID: %s, cron: %s, 执行命令: %s', id, x.schedule, command);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
data_1.scheduleStacks.set(id, [
|
|
25
|
+
node_schedule_1.default.scheduleJob(id, schedule, async () => {
|
|
26
|
+
logger_1.default.info(`[schedule][准备运行任务] 命令: ${command}`);
|
|
27
|
+
(0, runCron_1.runCron)(command);
|
|
28
|
+
}),
|
|
29
|
+
...((extraSchedules === null || extraSchedules === void 0 ? void 0 : extraSchedules.length)
|
|
30
|
+
? extraSchedules.map((x) => node_schedule_1.default.scheduleJob(id, x.schedule, async () => {
|
|
31
|
+
logger_1.default.info(`[schedule][准备运行任务] 命令: ${command}`);
|
|
32
|
+
(0, runCron_1.runCron)(command);
|
|
33
|
+
}))
|
|
34
|
+
: []),
|
|
35
|
+
]);
|
|
28
36
|
}
|
|
29
37
|
callback(null, null);
|
|
30
38
|
};
|
|
@@ -11,7 +11,7 @@ const delCron = (call, callback) => {
|
|
|
11
11
|
for (const id of call.request.ids) {
|
|
12
12
|
if (data_1.scheduleStacks.has(id)) {
|
|
13
13
|
logger_1.default.info('[schedule][取消定时任务], 任务ID: %s', id);
|
|
14
|
-
(_a = data_1.scheduleStacks.get(id)) === null || _a === void 0 ? void 0 : _a.cancel();
|
|
14
|
+
(_a = data_1.scheduleStacks.get(id)) === null || _a === void 0 ? void 0 : _a.forEach(x => x.cancel());
|
|
15
15
|
data_1.scheduleStacks.delete(id);
|
|
16
16
|
}
|
|
17
17
|
}
|
|
@@ -47,7 +47,7 @@ let CronService = class CronService {
|
|
|
47
47
|
tab.saved = false;
|
|
48
48
|
const doc = await this.insert(tab);
|
|
49
49
|
await client_1.default.addCron([
|
|
50
|
-
{ id: String(doc.id), schedule: doc.schedule, command: doc.
|
|
50
|
+
{ id: String(doc.id), schedule: doc.schedule, command: this.makeCommand(doc), extraSchedules: doc.extra_schedules || [] },
|
|
51
51
|
]);
|
|
52
52
|
await this.set_crontab();
|
|
53
53
|
return doc;
|
|
@@ -68,7 +68,8 @@ let CronService = class CronService {
|
|
|
68
68
|
{
|
|
69
69
|
id: String(newDoc.id),
|
|
70
70
|
schedule: newDoc.schedule,
|
|
71
|
-
command: newDoc
|
|
71
|
+
command: this.makeCommand(newDoc),
|
|
72
|
+
extraSchedules: newDoc.extra_schedules || []
|
|
72
73
|
},
|
|
73
74
|
]);
|
|
74
75
|
await this.set_crontab();
|
|
@@ -357,18 +358,7 @@ let CronService = class CronService {
|
|
|
357
358
|
this.logger.silly('Running job');
|
|
358
359
|
this.logger.silly('ID: ' + id);
|
|
359
360
|
this.logger.silly('Original command: ' + command);
|
|
360
|
-
|
|
361
|
-
if (!cmdStr.startsWith(const_1.TASK_PREFIX) && !cmdStr.startsWith(const_1.QL_PREFIX)) {
|
|
362
|
-
cmdStr = `${const_1.TASK_PREFIX}${cmdStr}`;
|
|
363
|
-
}
|
|
364
|
-
if (cmdStr.endsWith('.js') ||
|
|
365
|
-
cmdStr.endsWith('.py') ||
|
|
366
|
-
cmdStr.endsWith('.pyc') ||
|
|
367
|
-
cmdStr.endsWith('.sh') ||
|
|
368
|
-
cmdStr.endsWith('.ts')) {
|
|
369
|
-
cmdStr = `${cmdStr} now`;
|
|
370
|
-
}
|
|
371
|
-
const cp = (0, cross_spawn_1.spawn)(`real_log_path=${logPath} ID=${id} ${cmdStr}`, { shell: '/bin/bash' });
|
|
361
|
+
const cp = (0, cross_spawn_1.spawn)(`real_log_path=${logPath} no_delay=true ${this.makeCommand(cron)}`, { shell: '/bin/bash' });
|
|
372
362
|
await cron_1.CrontabModel.update({ status: cron_1.CrontabStatus.running, pid: cp.pid, log_path: logPath }, { where: { id } });
|
|
373
363
|
cp.stderr.on('data', (data) => {
|
|
374
364
|
fs_1.default.appendFileSync(`${absolutePath}`, `${data.toString()}`);
|
|
@@ -397,7 +387,8 @@ let CronService = class CronService {
|
|
|
397
387
|
const crons = docs.map((doc) => ({
|
|
398
388
|
id: String(doc.id),
|
|
399
389
|
schedule: doc.schedule,
|
|
400
|
-
command: doc
|
|
390
|
+
command: this.makeCommand(doc),
|
|
391
|
+
extraSchedules: doc.extra_schedules || []
|
|
401
392
|
}));
|
|
402
393
|
await client_1.default.addCron(crons);
|
|
403
394
|
await this.set_crontab();
|
|
@@ -437,30 +428,40 @@ let CronService = class CronService {
|
|
|
437
428
|
return [];
|
|
438
429
|
}
|
|
439
430
|
}
|
|
440
|
-
|
|
431
|
+
makeCommand(tab) {
|
|
441
432
|
let command = tab.command.trim();
|
|
442
433
|
if (!command.startsWith(const_1.TASK_PREFIX) && !command.startsWith(const_1.QL_PREFIX)) {
|
|
443
434
|
command = `${const_1.TASK_PREFIX}${tab.command}`;
|
|
444
435
|
}
|
|
445
|
-
|
|
436
|
+
let commandVariable = `ID=${tab.id} `;
|
|
437
|
+
if (tab.task_before) {
|
|
438
|
+
commandVariable += `task_before='${tab.task_before.replace(/'/g, "'\\''")
|
|
439
|
+
.trim()}' `;
|
|
440
|
+
}
|
|
441
|
+
if (tab.task_after) {
|
|
442
|
+
commandVariable += `task_after='${tab.task_after.replace(/'/g, "'\\''")
|
|
443
|
+
.trim()}' `;
|
|
444
|
+
}
|
|
445
|
+
const crontab_job_string = `${commandVariable}${command}`;
|
|
446
446
|
return crontab_job_string;
|
|
447
447
|
}
|
|
448
448
|
async set_crontab(data) {
|
|
449
449
|
const tabs = data !== null && data !== void 0 ? data : (await this.crontabs());
|
|
450
450
|
var crontab_string = '';
|
|
451
451
|
tabs.data.forEach((tab) => {
|
|
452
|
+
var _a;
|
|
452
453
|
const _schedule = tab.schedule && tab.schedule.split(/ +/);
|
|
453
|
-
if (tab.isDisabled === 1 || _schedule.length !== 5) {
|
|
454
|
+
if (tab.isDisabled === 1 || _schedule.length !== 5 || ((_a = tab.extra_schedules) === null || _a === void 0 ? void 0 : _a.length)) {
|
|
454
455
|
crontab_string += '# ';
|
|
455
456
|
crontab_string += tab.schedule;
|
|
456
457
|
crontab_string += ' ';
|
|
457
|
-
crontab_string += this.
|
|
458
|
+
crontab_string += this.makeCommand(tab);
|
|
458
459
|
crontab_string += '\n';
|
|
459
460
|
}
|
|
460
461
|
else {
|
|
461
462
|
crontab_string += tab.schedule;
|
|
462
463
|
crontab_string += ' ';
|
|
463
|
-
crontab_string += this.
|
|
464
|
+
crontab_string += this.makeCommand(tab);
|
|
464
465
|
crontab_string += '\n';
|
|
465
466
|
}
|
|
466
467
|
});
|
|
@@ -503,7 +504,8 @@ let CronService = class CronService {
|
|
|
503
504
|
.map((doc) => ({
|
|
504
505
|
id: String(doc.id),
|
|
505
506
|
schedule: doc.schedule,
|
|
506
|
-
command: doc
|
|
507
|
+
command: this.makeCommand(doc),
|
|
508
|
+
extraSchedules: doc.extra_schedules || []
|
|
507
509
|
}));
|
|
508
510
|
await client_1.default.addCron(sixCron);
|
|
509
511
|
}
|
|
@@ -184,11 +184,11 @@ let NotificationService = class NotificationService {
|
|
|
184
184
|
}
|
|
185
185
|
}
|
|
186
186
|
async bark() {
|
|
187
|
-
let { barkPush, barkIcon, barkSound, barkGroup } = this.params;
|
|
187
|
+
let { barkPush, barkIcon, barkSound, barkGroup, barkLevel, barkUrl } = this.params;
|
|
188
188
|
if (!barkPush.startsWith('http')) {
|
|
189
189
|
barkPush = `https://api.day.app/${barkPush}`;
|
|
190
190
|
}
|
|
191
|
-
const url = `${barkPush}/${encodeURIComponent(this.title)}/${encodeURIComponent(this.content)}?icon=${barkIcon}&sound=${barkSound}&group=${barkGroup}`;
|
|
191
|
+
const url = `${barkPush}/${encodeURIComponent(this.title)}/${encodeURIComponent(this.content)}?icon=${barkIcon}&sound=${barkSound}&group=${barkGroup}&level=${barkLevel}&url=${barkUrl}`;
|
|
192
192
|
try {
|
|
193
193
|
const res = await got_1.default
|
|
194
194
|
.get(url, Object.assign(Object.assign({}, this.gotOption), { headers: { 'Content-Type': 'application/x-www-form-urlencoded' } }))
|
|
@@ -30,7 +30,7 @@ const pLimit_1 = __importDefault(require("../shared/pLimit"));
|
|
|
30
30
|
const tar_1 = __importDefault(require("tar"));
|
|
31
31
|
const path_1 = __importDefault(require("path"));
|
|
32
32
|
const fs_1 = __importDefault(require("fs"));
|
|
33
|
-
const
|
|
33
|
+
const sum_1 = __importDefault(require("lodash/sum"));
|
|
34
34
|
let SystemService = class SystemService {
|
|
35
35
|
constructor(logger, scheduleService, sockService) {
|
|
36
36
|
this.logger = logger;
|
|
@@ -69,7 +69,7 @@ let SystemService = class SystemService {
|
|
|
69
69
|
const result = await this.updateAuthDb(Object.assign(Object.assign({}, oDoc), { type: auth_1.AuthDataType.systemConfig, info }));
|
|
70
70
|
if (info.logRemoveFrequency) {
|
|
71
71
|
const cron = {
|
|
72
|
-
id: result.id,
|
|
72
|
+
id: result.id || NaN,
|
|
73
73
|
name: '删除日志',
|
|
74
74
|
command: `ql rmlog ${info.logRemoveFrequency}`,
|
|
75
75
|
};
|
|
@@ -234,7 +234,7 @@ let SystemService = class SystemService {
|
|
|
234
234
|
const result = (0, util_1.readDirs)(config_1.default.systemLogPath, config_1.default.systemLogPath);
|
|
235
235
|
const logs = result.reverse().filter((x) => x.title.endsWith('.log'));
|
|
236
236
|
res.set({
|
|
237
|
-
'Content-Length': (0,
|
|
237
|
+
'Content-Length': (0, sum_1.default)(logs.map((x) => x.size)),
|
|
238
238
|
});
|
|
239
239
|
(function sendFiles(res, fileNames) {
|
|
240
240
|
if (fileNames.length === 0) {
|
|
@@ -8,18 +8,18 @@ const os_1 = __importDefault(require("os"));
|
|
|
8
8
|
const auth_1 = require("../data/auth");
|
|
9
9
|
const logger_1 = __importDefault(require("../loaders/logger"));
|
|
10
10
|
class TaskLimit {
|
|
11
|
-
constructor() {
|
|
12
|
-
this.oneLimit = (0, p_limit_1.default)(1);
|
|
13
|
-
this.updateLogLimit = (0, p_limit_1.default)(1);
|
|
14
|
-
this.cpuLimit = (0, p_limit_1.default)(Math.max(os_1.default.cpus().length, 4));
|
|
15
|
-
this.setCustomLimit();
|
|
16
|
-
}
|
|
17
11
|
get cpuLimitActiveCount() {
|
|
18
12
|
return this.cpuLimit.activeCount;
|
|
19
13
|
}
|
|
20
14
|
get cpuLimitPendingCount() {
|
|
21
15
|
return this.cpuLimit.pendingCount;
|
|
22
16
|
}
|
|
17
|
+
constructor() {
|
|
18
|
+
this.oneLimit = (0, p_limit_1.default)(1);
|
|
19
|
+
this.updateLogLimit = (0, p_limit_1.default)(1);
|
|
20
|
+
this.cpuLimit = (0, p_limit_1.default)(Math.max(os_1.default.cpus().length, 4));
|
|
21
|
+
this.setCustomLimit();
|
|
22
|
+
}
|
|
23
23
|
async setCustomLimit(limit) {
|
|
24
24
|
var _a, _b;
|
|
25
25
|
if (limit) {
|