@remnawave/xtls-sdk 0.12.4 → 0.12.5
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stats.service.d.ts","sourceRoot":"","sources":["../../../src/stats/stats.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAqC,MAAM,WAAW,CAAC;AAEvE,OAAO,EACH,6BAA6B,EAC7B,yBAAyB,EACzB,wBAAwB,EACxB,gCAAgC,EAChC,gCAAgC,EAChC,4BAA4B,EAC5B,iCAAiC,EACjC,6BAA6B,EAC7B,0BAA0B,EAE7B,MAAM,UAAU,CAAC;AAClB,OAAO,EAEH,kBAAkB,EACrB,MAAM,0CAA0C,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,YAAY;IAuBT,OAAO,CAAC,QAAQ,CAAC,OAAO;IAtBpC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAE5C;;;;;;;;;OASG;IACH,OAAO,CAAC,qBAAqB,CAAwB;IAErD;;;OAGG;gBAC0B,OAAO,EAAE,OAAO;IAI7C;;;;;;;;;;;;;;;;;;;OAmBG;IACU,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;IAoB3E;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACU,gBAAgB,CACzB,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,6BAA6B,CAAC,CAAC;IAuBvD;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACU,YAAY,CACrB,QAAQ,EAAE,MAAM,EAChB,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;IAuBnD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACU,mBAAmB,CAC5B,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,YAAY,CAAC,gCAAgC,CAAC,CAAC;IA8B1D;;;;;;;;;;;;;;;;;;;OAmBG;IACU,mBAAmB,CAC5B,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,gCAAgC,CAAC,CAAC;IAuB1D;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,eAAe,CACxB,OAAO,EAAE,MAAM,EACf,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,4BAA4B,CAAC,CAAC;IAuBtD;;;;;;;;;;;;;;;;;;;OAmBG;IACU,oBAAoB,CAC7B,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,iCAAiC,CAAC,CAAC;IAuB3D;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,gBAAgB,CACzB,QAAQ,EAAE,MAAM,EAChB,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,6BAA6B,CAAC,CAAC;IAuBvD;;;;;;;;;;;;;;;;;OAiBG;IACU,aAAa,CACtB,cAAc,GAAE,OAAe,EAC/B,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,0BAA0B,CAAC,CAAC;IAkCpD;;;;;;OAMG;YACW,mBAAmB;
|
|
1
|
+
{"version":3,"file":"stats.service.d.ts","sourceRoot":"","sources":["../../../src/stats/stats.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAqC,MAAM,WAAW,CAAC;AAEvE,OAAO,EACH,6BAA6B,EAC7B,yBAAyB,EACzB,wBAAwB,EACxB,gCAAgC,EAChC,gCAAgC,EAChC,4BAA4B,EAC5B,iCAAiC,EACjC,6BAA6B,EAC7B,0BAA0B,EAE7B,MAAM,UAAU,CAAC;AAClB,OAAO,EAEH,kBAAkB,EACrB,MAAM,0CAA0C,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,YAAY;IAuBT,OAAO,CAAC,QAAQ,CAAC,OAAO;IAtBpC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAE5C;;;;;;;;;OASG;IACH,OAAO,CAAC,qBAAqB,CAAwB;IAErD;;;OAGG;gBAC0B,OAAO,EAAE,OAAO;IAI7C;;;;;;;;;;;;;;;;;;;OAmBG;IACU,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;IAoB3E;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACU,gBAAgB,CACzB,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,6BAA6B,CAAC,CAAC;IAuBvD;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACU,YAAY,CACrB,QAAQ,EAAE,MAAM,EAChB,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;IAuBnD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACU,mBAAmB,CAC5B,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,YAAY,CAAC,gCAAgC,CAAC,CAAC;IA8B1D;;;;;;;;;;;;;;;;;;;OAmBG;IACU,mBAAmB,CAC5B,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,gCAAgC,CAAC,CAAC;IAuB1D;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,eAAe,CACxB,OAAO,EAAE,MAAM,EACf,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,4BAA4B,CAAC,CAAC;IAuBtD;;;;;;;;;;;;;;;;;;;OAmBG;IACU,oBAAoB,CAC7B,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,iCAAiC,CAAC,CAAC;IAuB3D;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,gBAAgB,CACzB,QAAQ,EAAE,MAAM,EAChB,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,6BAA6B,CAAC,CAAC;IAuBvD;;;;;;;;;;;;;;;;;OAiBG;IACU,aAAa,CACtB,cAAc,GAAE,OAAe,EAC/B,KAAK,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,0BAA0B,CAAC,CAAC;IAkCpD;;;;;;OAMG;YACW,mBAAmB;IA+DjC;;;OAGG;IACH,IAAW,SAAS,IAAI,kBAAkB,CAEzC;CACJ"}
|
|
@@ -464,21 +464,23 @@ class StatsService {
|
|
|
464
464
|
async getUsersStatsLegacy(reset) {
|
|
465
465
|
try {
|
|
466
466
|
const { users: onlineUsers } = await this.client.getAllOnlineUsers({});
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
467
|
+
const onlinePairs = Array.from(new Set(onlineUsers)).map((metricName) => ({
|
|
468
|
+
metricName,
|
|
469
|
+
email: metricName.slice('user>>>'.length, -'>>>online'.length),
|
|
470
|
+
}));
|
|
471
|
+
const results = new Array(onlinePairs.length);
|
|
472
|
+
const concurrency = Math.min(50, onlinePairs.length);
|
|
471
473
|
let cursor = 0;
|
|
472
474
|
const worker = async () => {
|
|
473
475
|
while (true) {
|
|
474
476
|
const index = cursor++;
|
|
475
|
-
if (index >=
|
|
477
|
+
if (index >= onlinePairs.length)
|
|
476
478
|
return;
|
|
477
|
-
const email =
|
|
479
|
+
const { metricName, email } = onlinePairs[index];
|
|
478
480
|
let ips = [];
|
|
479
481
|
try {
|
|
480
482
|
const ipListResponse = await this.client.getStatsOnlineIpList({
|
|
481
|
-
name:
|
|
483
|
+
name: metricName,
|
|
482
484
|
reset,
|
|
483
485
|
});
|
|
484
486
|
ips = Object.entries(ipListResponse.ips).map(([ip, lastSeen]) => ({
|
|
@@ -487,7 +489,7 @@ class StatsService {
|
|
|
487
489
|
}));
|
|
488
490
|
}
|
|
489
491
|
catch {
|
|
490
|
-
//
|
|
492
|
+
// ignore
|
|
491
493
|
}
|
|
492
494
|
results[index] = { userId: email, ips, traffic: undefined };
|
|
493
495
|
}
|