@punks/backend-core 0.0.48 → 0.0.50
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/dist/cjs/index.js +39 -106
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/abstractions/logging.d.ts +6 -6
- package/dist/cjs/types/logging/concrete/consoleLogger.d.ts +9 -0
- package/dist/cjs/types/logging/concrete/datadogLogger.d.ts +19 -0
- package/dist/cjs/types/logging/concrete/index.d.ts +2 -0
- package/dist/cjs/types/logging/service.d.ts +14 -6
- package/dist/cjs/types/utils/objects/index.d.ts +1 -0
- package/dist/esm/index.js +39 -106
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/abstractions/logging.d.ts +6 -6
- package/dist/esm/types/logging/concrete/consoleLogger.d.ts +9 -0
- package/dist/esm/types/logging/concrete/datadogLogger.d.ts +19 -0
- package/dist/esm/types/logging/concrete/index.d.ts +2 -0
- package/dist/esm/types/logging/service.d.ts +14 -6
- package/dist/esm/types/utils/objects/index.d.ts +1 -0
- package/dist/index.d.ts +19 -11
- package/package.json +5 -3
- package/dist/cjs/types/logging/concrete/defaultLogger.d.ts +0 -11
- package/dist/esm/types/logging/concrete/defaultLogger.d.ts +0 -11
package/dist/cjs/index.js
CHANGED
|
@@ -296,9 +296,22 @@ const mergeDeep = (a, b) => {
|
|
|
296
296
|
}
|
|
297
297
|
return c;
|
|
298
298
|
};
|
|
299
|
+
const isSerializable = (obj) => {
|
|
300
|
+
try {
|
|
301
|
+
JSON.stringify(obj);
|
|
302
|
+
return true;
|
|
303
|
+
}
|
|
304
|
+
catch (e) {
|
|
305
|
+
return false;
|
|
306
|
+
}
|
|
307
|
+
};
|
|
299
308
|
const jsonSerialize = (obj, options) => {
|
|
300
|
-
const { removeCircularReferences = true, stripBinaryData = true, prettify = false, maxStringsLength, } = options ?? {};
|
|
309
|
+
const { removeNonSerializableObjects = true, removeCircularReferences = true, stripBinaryData = true, prettify = false, maxStringsLength, } = options ?? {};
|
|
301
310
|
const replacer = (key, value) => {
|
|
311
|
+
// remove non serializable objects
|
|
312
|
+
if (removeNonSerializableObjects && !isSerializable(value)) {
|
|
313
|
+
return `<non serializable property ${typeof value}>`;
|
|
314
|
+
}
|
|
302
315
|
// remove circular references
|
|
303
316
|
const seen = new WeakSet();
|
|
304
317
|
if (removeCircularReferences &&
|
|
@@ -28402,138 +28415,58 @@ const excelParse = (file, options) => {
|
|
|
28402
28415
|
.map((x) => aggregateRow(header, x, options));
|
|
28403
28416
|
};
|
|
28404
28417
|
|
|
28405
|
-
class
|
|
28406
|
-
constructor(loggerName) {
|
|
28418
|
+
class InternalLogger {
|
|
28419
|
+
constructor(loggerName, container) {
|
|
28407
28420
|
this.loggerName = loggerName;
|
|
28421
|
+
this.container = container;
|
|
28408
28422
|
}
|
|
28409
28423
|
debug(message, meta) {
|
|
28410
|
-
|
|
28411
|
-
console.log(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
|
|
28412
|
-
}
|
|
28413
|
-
else {
|
|
28414
|
-
console.log(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
|
|
28415
|
-
}
|
|
28424
|
+
this.getEnabledInstances(exports.LogLevel.Debug).forEach((x) => x.provider.debug(this.loggerName, message, this.serializeMeta(x.options, meta)));
|
|
28416
28425
|
}
|
|
28417
28426
|
info(message, meta) {
|
|
28418
|
-
|
|
28419
|
-
console.info(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
|
|
28420
|
-
}
|
|
28421
|
-
else {
|
|
28422
|
-
console.info(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
|
|
28423
|
-
}
|
|
28427
|
+
this.getEnabledInstances(exports.LogLevel.Info).forEach((x) => x.provider.info(this.loggerName, message, this.serializeMeta(x.options, meta)));
|
|
28424
28428
|
}
|
|
28425
28429
|
warn(message, meta) {
|
|
28426
|
-
|
|
28427
|
-
console.warn(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
|
|
28428
|
-
}
|
|
28429
|
-
else {
|
|
28430
|
-
console.warn(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
|
|
28431
|
-
}
|
|
28430
|
+
this.getEnabledInstances(exports.LogLevel.Warn).forEach((x) => x.provider.warn(this.loggerName, message, this.serializeMeta(x.options, meta)));
|
|
28432
28431
|
}
|
|
28433
28432
|
error(message, meta) {
|
|
28434
|
-
|
|
28435
|
-
console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
|
|
28436
|
-
}
|
|
28437
|
-
else {
|
|
28438
|
-
console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
|
|
28439
|
-
}
|
|
28433
|
+
this.getEnabledInstances(exports.LogLevel.Error).forEach((x) => x.provider.error(this.loggerName, message, this.serializeMeta(x.options, meta)));
|
|
28440
28434
|
}
|
|
28441
28435
|
fatal(message, meta) {
|
|
28442
|
-
|
|
28443
|
-
console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
|
|
28444
|
-
}
|
|
28445
|
-
else {
|
|
28446
|
-
console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
|
|
28447
|
-
}
|
|
28436
|
+
this.getEnabledInstances(exports.LogLevel.Fatal).forEach((x) => x.provider.fatal(this.loggerName, message, this.serializeMeta(x.options, meta)));
|
|
28448
28437
|
}
|
|
28449
28438
|
exception(message, error, meta) {
|
|
28450
|
-
|
|
28451
|
-
console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error, meta);
|
|
28452
|
-
}
|
|
28453
|
-
else {
|
|
28454
|
-
console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error);
|
|
28455
|
-
}
|
|
28439
|
+
this.getEnabledInstances(exports.LogLevel.Error).forEach((x) => x.provider.exception(this.loggerName, message, error, this.serializeMeta(x.options, meta)));
|
|
28456
28440
|
}
|
|
28457
|
-
|
|
28458
|
-
|
|
28459
|
-
class InternalLogger {
|
|
28460
|
-
constructor(options, provider) {
|
|
28461
|
-
this.options = options;
|
|
28462
|
-
this.provider = provider;
|
|
28463
|
-
}
|
|
28464
|
-
debug(message, meta) {
|
|
28465
|
-
if (this.options.enabled && this.options.level === exports.LogLevel.Debug) {
|
|
28466
|
-
this.provider.debug(message, this.serializeMeta(meta));
|
|
28467
|
-
}
|
|
28468
|
-
}
|
|
28469
|
-
info(message, meta) {
|
|
28470
|
-
if (this.options.enabled && this.options.level <= exports.LogLevel.Info) {
|
|
28471
|
-
this.provider.info(message, this.serializeMeta(meta));
|
|
28472
|
-
}
|
|
28473
|
-
}
|
|
28474
|
-
warn(message, meta) {
|
|
28475
|
-
if (this.options.enabled && this.options.level <= exports.LogLevel.Warn) {
|
|
28476
|
-
this.provider.warn(message, this.serializeMeta(meta));
|
|
28477
|
-
}
|
|
28478
|
-
}
|
|
28479
|
-
error(message, meta) {
|
|
28480
|
-
if (this.options.enabled && this.options.level <= exports.LogLevel.Error) {
|
|
28481
|
-
this.provider.error(message, this.serializeMeta(meta));
|
|
28482
|
-
}
|
|
28441
|
+
getEnabledInstances(level) {
|
|
28442
|
+
return this.container.instances.filter((x) => x.options.enabled && x.options.level <= level);
|
|
28483
28443
|
}
|
|
28484
|
-
|
|
28485
|
-
|
|
28486
|
-
|
|
28487
|
-
|
|
28488
|
-
|
|
28489
|
-
|
|
28490
|
-
|
|
28491
|
-
|
|
28492
|
-
}
|
|
28493
|
-
}
|
|
28494
|
-
serializeMeta(meta) {
|
|
28495
|
-
const serializedMeta = jsonSerialize(meta, {
|
|
28496
|
-
prettify: true,
|
|
28497
|
-
stripBinaryData: true,
|
|
28498
|
-
});
|
|
28499
|
-
switch (this.options.serialization) {
|
|
28444
|
+
serializeMeta(options, meta) {
|
|
28445
|
+
const serializedMeta = meta
|
|
28446
|
+
? jsonSerialize(meta, {
|
|
28447
|
+
prettify: true,
|
|
28448
|
+
stripBinaryData: true,
|
|
28449
|
+
})
|
|
28450
|
+
: undefined;
|
|
28451
|
+
switch (options.serialization) {
|
|
28500
28452
|
case exports.MetaSerializationType.JSON:
|
|
28501
28453
|
return serializedMeta;
|
|
28502
28454
|
case exports.MetaSerializationType.None:
|
|
28503
28455
|
default:
|
|
28504
|
-
return JSON.parse(serializedMeta);
|
|
28456
|
+
return serializedMeta ? JSON.parse(serializedMeta) : undefined;
|
|
28505
28457
|
}
|
|
28506
28458
|
}
|
|
28507
28459
|
}
|
|
28508
|
-
const getLogger = ({ options, loggerName, }) => {
|
|
28509
|
-
return new InternalLogger(options, new DefaultLogger(loggerName));
|
|
28510
|
-
};
|
|
28511
28460
|
class Log {
|
|
28512
|
-
static
|
|
28513
|
-
this.
|
|
28514
|
-
}
|
|
28515
|
-
static setLevel(level) {
|
|
28516
|
-
this.options.level = level;
|
|
28517
|
-
this.options.level = level;
|
|
28518
|
-
this.options.enabled = true;
|
|
28519
|
-
}
|
|
28520
|
-
static enable() {
|
|
28521
|
-
this.options.enabled = true;
|
|
28522
|
-
}
|
|
28523
|
-
static disable() {
|
|
28524
|
-
this.options.enabled = false;
|
|
28461
|
+
static configure(instance) {
|
|
28462
|
+
this.container.instances.push(instance);
|
|
28525
28463
|
}
|
|
28526
28464
|
static getLogger(loggerName) {
|
|
28527
|
-
return
|
|
28528
|
-
options: this.options,
|
|
28529
|
-
loggerName,
|
|
28530
|
-
});
|
|
28465
|
+
return new InternalLogger(loggerName, this.container);
|
|
28531
28466
|
}
|
|
28532
28467
|
}
|
|
28533
|
-
Log.
|
|
28534
|
-
|
|
28535
|
-
level: exports.LogLevel.Debug,
|
|
28536
|
-
serialization: exports.MetaSerializationType.None,
|
|
28468
|
+
Log.container = {
|
|
28469
|
+
instances: [],
|
|
28537
28470
|
};
|
|
28538
28471
|
|
|
28539
28472
|
const logMemoryUsage = () => {
|