Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@ringcentral/mfe-logger

Package Overview
Dependencies
Maintainers
2
Versions
35
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ringcentral/mfe-logger - npm Package Compare versions

Comparing version
0.4.12
to
0.4.13
+1
-0
dist/index.d.ts

@@ -299,2 +299,3 @@ import { Message, MessageContext, Logger as Logger$1, LogWriter } from 'roarr';

get maxLogsSize(): number;
protected _getTotalSize(): Promise<number>;
protected _pruneLogs(): Promise<void>;

@@ -301,0 +302,0 @@ get recentTime(): number;

@@ -365,2 +365,12 @@ 'use strict';

}
// fast way to get total size of logs
_getTotalSize() {
var _a, _b;
return __awaiter(this, void 0, void 0, function* () {
const sizes = (_b = (yield ((_a = this._table) === null || _a === void 0 ? void 0 : _a.orderBy('size').keys()))) !== null && _b !== void 0 ? _b : [];
return sizes.reduce((acc, size) => {
return acc + size;
}, 0);
});
}
_pruneLogs() {

@@ -370,10 +380,22 @@ var _a;

yield this._deleteExpiredLogs();
const logs = (_a = (yield this._getLogs())) !== null && _a !== void 0 ? _a : [];
let totalSize = 0;
for (const log of logs) {
totalSize += log.size;
if (totalSize > this.maxLogsSize) {
yield this._deleteLogs(log.time);
break;
// only prune logs if total size is greater than maxLogsSize
const totalLogSize = yield this._getTotalSize();
if (totalLogSize > this.maxLogsSize) {
let sizeOverBy = totalLogSize - this.maxLogsSize;
let cutoffTime = 0;
try {
yield ((_a = this._table) === null || _a === void 0 ? void 0 : _a.orderBy('time').reverse().each((log) => {
sizeOverBy -= log.size;
if (sizeOverBy <= 0) {
cutoffTime = log.time;
throw new Error('cutoff found');
}
}));
}
catch (_) {
// ignore
}
if (cutoffTime > 0) {
yield this._deleteLogs(cutoffTime);
}
}

@@ -380,0 +402,0 @@ });

+1
-1

@@ -1,1 +0,1 @@

{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}

@@ -363,2 +363,12 @@ import { global } from '@ringcentral/mfe-shared';

}
// fast way to get total size of logs
_getTotalSize() {
var _a, _b;
return __awaiter(this, void 0, void 0, function* () {
const sizes = (_b = (yield ((_a = this._table) === null || _a === void 0 ? void 0 : _a.orderBy('size').keys()))) !== null && _b !== void 0 ? _b : [];
return sizes.reduce((acc, size) => {
return acc + size;
}, 0);
});
}
_pruneLogs() {

@@ -368,10 +378,22 @@ var _a;

yield this._deleteExpiredLogs();
const logs = (_a = (yield this._getLogs())) !== null && _a !== void 0 ? _a : [];
let totalSize = 0;
for (const log of logs) {
totalSize += log.size;
if (totalSize > this.maxLogsSize) {
yield this._deleteLogs(log.time);
break;
// only prune logs if total size is greater than maxLogsSize
const totalLogSize = yield this._getTotalSize();
if (totalLogSize > this.maxLogsSize) {
let sizeOverBy = totalLogSize - this.maxLogsSize;
let cutoffTime = 0;
try {
yield ((_a = this._table) === null || _a === void 0 ? void 0 : _a.orderBy('time').reverse().each((log) => {
sizeOverBy -= log.size;
if (sizeOverBy <= 0) {
cutoffTime = log.time;
throw new Error('cutoff found');
}
}));
}
catch (_) {
// ignore
}
if (cutoffTime > 0) {
yield this._deleteLogs(cutoffTime);
}
}

@@ -378,0 +400,0 @@ });

@@ -1,1 +0,1 @@

{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}

@@ -109,2 +109,3 @@ /// <reference types="node" />

get maxLogsSize(): number;
protected _getTotalSize(): Promise<number>;
protected _pruneLogs(): Promise<void>;

@@ -111,0 +112,0 @@ get recentTime(): number;

@@ -1,1 +0,1 @@

{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../../../src/transports/storage.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../../../src/transports/storage.ts"],"names":[],"mappings":"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"}
{
"name": "@ringcentral/mfe-logger",
"version": "0.4.12",
"version": "0.4.13",
"description": "A micro frontends framework for building Web applications",

@@ -45,3 +45,3 @@ "main": "dist/index.js",

"dependencies": {
"@ringcentral/mfe-shared": "^0.4.12",
"@ringcentral/mfe-shared": "^0.4.13",
"@roarr/browser-log-writer": "1.3.0",

@@ -48,0 +48,0 @@ "dexie": "3.2.4",

@@ -296,12 +296,37 @@ /* eslint-disable no-param-reassign */

// fast way to get total size of logs
protected async _getTotalSize() {
const sizes =
((await this._table?.orderBy('size').keys()) as number[]) ?? [];
return sizes.reduce((acc, size) => {
return acc + size;
}, 0);
}
protected async _pruneLogs() {
await this._deleteExpiredLogs();
const logs = (await this._getLogs()) ?? [];
let totalSize = 0;
for (const log of logs) {
totalSize += log.size;
if (totalSize > this.maxLogsSize) {
await this._deleteLogs(log.time);
break;
// only prune logs if total size is greater than maxLogsSize
const totalLogSize = await this._getTotalSize();
if (totalLogSize > this.maxLogsSize) {
let sizeOverBy = totalLogSize - this.maxLogsSize;
let cutoffTime = 0;
try {
await this._table
?.orderBy('time')
.reverse()
.each((log: Logs) => {
sizeOverBy -= log.size;
if (sizeOverBy <= 0) {
cutoffTime = log.time;
throw new Error('cutoff found');
}
});
} catch (_) {
// ignore
}
if (cutoffTime > 0) {
await this._deleteLogs(cutoffTime);
}
}

@@ -308,0 +333,0 @@ }