@naturalcycles/js-lib 14.66.0 → 14.67.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/dist/index.d.ts +2 -2
- package/dist/index.js +2 -1
- package/dist/log/commonLogger.d.ts +4 -0
- package/dist/log/commonLogger.js +23 -4
- package/dist-esm/index.js +2 -2
- package/dist-esm/log/commonLogger.js +21 -3
- package/package.json +1 -1
- package/src/index.ts +2 -0
- package/src/log/commonLogger.ts +24 -3
package/dist/index.d.ts
CHANGED
|
@@ -54,7 +54,7 @@ import { Class, ConditionalExcept, ConditionalPick, Merge, Promisable, PromiseVa
|
|
|
54
54
|
import { AsyncMapper, AsyncPredicate, BaseDBEntity, CreatedUpdated, CreatedUpdatedId, ObjectWithId, AnyObjectWithId, Saved, Unsaved, BatchResult, InstanceId, IsoDate, IsoDateTime, KeyValueTuple, Mapper, ObjectMapper, ObjectPredicate, Predicate, PromiseMap, AnyObject, AnyFunction, Reviver, SavedDBEntity, StringMap, UnixTimestamp, ValueOf, ValuesOf, _noop, _objectKeys, _passNothingPredicate, _passthroughMapper, _passthroughPredicate, _passUndefinedMapper, _stringMapEntries, _stringMapValues } from './types';
|
|
55
55
|
import { _gb, _hb, _kb, _mb } from './unit/size.util';
|
|
56
56
|
import { is } from './vendor/is';
|
|
57
|
-
import { CommonLogLevel, CommonLogFunction, CommonLogger, commonLoggerMinLevel, noopLogger, commonLogLevelNumber } from './log/commonLogger';
|
|
57
|
+
import { CommonLogLevel, CommonLogFunction, CommonLogger, commonLoggerMinLevel, noopLogger, commonLogLevelNumber, commonLoggerPipe } from './log/commonLogger';
|
|
58
58
|
import { _safeJsonStringify } from './string/safeJsonStringify';
|
|
59
59
|
export type { MemoCache, PromiseDecoratorCfg, PromiseDecoratorResp, ErrorData, ErrorObject, HttpErrorData, HttpErrorResponse, Admin401ErrorData, Admin403ErrorData, StringMap, PromiseMap, AnyObject, AnyFunction, ValuesOf, ValueOf, KeyValueTuple, ObjectMapper, ObjectPredicate, InstanceId, IsoDate, IsoDateTime, Reviver, PMapOptions, Mapper, AsyncMapper, Predicate, AsyncPredicate, BatchResult, DeferredPromise, PRetryOptions, PTimeoutOptions, TryCatchOptions, StringifyAnyOptions, JsonStringifyFunction, Merge, ReadonlyDeep, Promisable, PromiseValue, Simplify, ConditionalPick, ConditionalExcept, Class, UnixTimestamp, BaseDBEntity, SavedDBEntity, Saved, Unsaved, CreatedUpdated, CreatedUpdatedId, ObjectWithId, AnyObjectWithId, JsonSchema, JsonSchemaAny, JsonSchemaOneOf, JsonSchemaAllOf, JsonSchemaAnyOf, JsonSchemaNot, JsonSchemaRef, JsonSchemaConst, JsonSchemaEnum, JsonSchemaString, JsonSchemaNumber, JsonSchemaBoolean, JsonSchemaNull, JsonSchemaRootObject, JsonSchemaObject, JsonSchemaArray, JsonSchemaTuple, JsonSchemaBuilder, CommonLogLevel, CommonLogFunction, CommonLogger, };
|
|
60
|
-
export { is, _Memo, _memoFn, _LogMethod, _getArgsSignature, _createPromiseDecorator, AppError, HttpError, AssertionError, _isErrorObject, _isHttpErrorObject, _isHttpErrorResponse, _assert, _assertEquals, _assertDeepEquals, _assertIsError, _assertIsString, _assertIsNumber, _assertTypeOf, _randomInt, _randomArrayItem, _createDeterministicRandom, _inRange, _stringMapValues, _stringMapEntries, _objectKeys, _capitalize, _upperFirst, _lowerFirst, _split, _removeWhitespace, _substringBefore, _substringBeforeLast, _substringAfter, _substringAfterLast, _substringBetweenLast, _replaceAll, _nl2br, _truncate, _truncateMiddle, _pick, _omit, _filterFalsyValues, _filterUndefinedValues, _filterNullishValues, _filterEmptyArrays, _filterEmptyValues, _filterObject, _undefinedIfEmpty, _isObject, _isPrimitive, _mapKeys, _mapValues, _mapObject, _objectNullValuesToUndefined, _deepEquals, _deepCopy, _isEmptyObject, _isEmpty, _merge, _deepTrim, _sortObjectDeep, _sortObject, _get, _set, _has, _unset, _mask, _invert, _invertMap, _by, _groupBy, _sortBy, _sortNumbers, _toFixed, _toPrecision, _round, _findLast, _takeWhile, _takeRightWhile, _dropWhile, _dropRightWhile, _countBy, _intersection, _difference, _shuffle, _mapToObject, _findKeyByValue, _anyToError, _anyToErrorObject, _errorToErrorObject, _errorObjectToAppError, _range, _uniq, _uniqBy, _flatten, _flattenDeep, _chunk, SimpleMovingAverage, _average, _averageWeighted, _percentile, _median, _debounce, _throttle, _Debounce, _Throttle, pMap, _passthroughMapper, _passUndefinedMapper, _passthroughPredicate, _passNothingPredicate, _noop, pBatch, ErrorMode, pFilter, pProps, pDelay, pDefer, pHang, pState, AggregatedError, pRetry, pTimeout, pTuple, _Retry, _Timeout, _tryCatch, _TryCatch, _try, pTry, _jsonParseIfPossible, _stringifyAny, _ms, _since, _hb, _gb, _mb, _kb, _snakeCase, _camelCase, _kebabCase, _sum, _sumBy, _clamp, _last, mergeJsonSchemaObjects, jsonSchema, JsonSchemaAnyBuilder, JSON_SCHEMA_ORDER, generateJsonSchemaFromData, _parseQueryString, _defineLazyProperty, _defineLazyProps, _lazyValue, commonLoggerMinLevel, noopLogger, commonLogLevelNumber, _safeJsonStringify, };
|
|
60
|
+
export { is, _Memo, _memoFn, _LogMethod, _getArgsSignature, _createPromiseDecorator, AppError, HttpError, AssertionError, _isErrorObject, _isHttpErrorObject, _isHttpErrorResponse, _assert, _assertEquals, _assertDeepEquals, _assertIsError, _assertIsString, _assertIsNumber, _assertTypeOf, _randomInt, _randomArrayItem, _createDeterministicRandom, _inRange, _stringMapValues, _stringMapEntries, _objectKeys, _capitalize, _upperFirst, _lowerFirst, _split, _removeWhitespace, _substringBefore, _substringBeforeLast, _substringAfter, _substringAfterLast, _substringBetweenLast, _replaceAll, _nl2br, _truncate, _truncateMiddle, _pick, _omit, _filterFalsyValues, _filterUndefinedValues, _filterNullishValues, _filterEmptyArrays, _filterEmptyValues, _filterObject, _undefinedIfEmpty, _isObject, _isPrimitive, _mapKeys, _mapValues, _mapObject, _objectNullValuesToUndefined, _deepEquals, _deepCopy, _isEmptyObject, _isEmpty, _merge, _deepTrim, _sortObjectDeep, _sortObject, _get, _set, _has, _unset, _mask, _invert, _invertMap, _by, _groupBy, _sortBy, _sortNumbers, _toFixed, _toPrecision, _round, _findLast, _takeWhile, _takeRightWhile, _dropWhile, _dropRightWhile, _countBy, _intersection, _difference, _shuffle, _mapToObject, _findKeyByValue, _anyToError, _anyToErrorObject, _errorToErrorObject, _errorObjectToAppError, _range, _uniq, _uniqBy, _flatten, _flattenDeep, _chunk, SimpleMovingAverage, _average, _averageWeighted, _percentile, _median, _debounce, _throttle, _Debounce, _Throttle, pMap, _passthroughMapper, _passUndefinedMapper, _passthroughPredicate, _passNothingPredicate, _noop, pBatch, ErrorMode, pFilter, pProps, pDelay, pDefer, pHang, pState, AggregatedError, pRetry, pTimeout, pTuple, _Retry, _Timeout, _tryCatch, _TryCatch, _try, pTry, _jsonParseIfPossible, _stringifyAny, _ms, _since, _hb, _gb, _mb, _kb, _snakeCase, _camelCase, _kebabCase, _sum, _sumBy, _clamp, _last, mergeJsonSchemaObjects, jsonSchema, JsonSchemaAnyBuilder, JSON_SCHEMA_ORDER, generateJsonSchemaFromData, _parseQueryString, _defineLazyProperty, _defineLazyProps, _lazyValue, commonLoggerMinLevel, noopLogger, commonLogLevelNumber, commonLoggerPipe, _safeJsonStringify, };
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports._isObject = exports._undefinedIfEmpty = exports._filterObject = exports._filterEmptyValues = exports._filterEmptyArrays = exports._filterNullishValues = exports._filterUndefinedValues = exports._filterFalsyValues = exports._omit = exports._pick = exports._truncateMiddle = exports._truncate = exports._nl2br = exports._replaceAll = exports._substringBetweenLast = exports._substringAfterLast = exports._substringAfter = exports._substringBeforeLast = exports._substringBefore = exports._removeWhitespace = exports._split = exports._lowerFirst = exports._upperFirst = exports._capitalize = exports._objectKeys = exports._stringMapEntries = exports._stringMapValues = exports._inRange = exports._createDeterministicRandom = exports._randomArrayItem = exports._randomInt = exports._assertTypeOf = exports._assertIsNumber = exports._assertIsString = exports._assertIsError = exports._assertDeepEquals = exports._assertEquals = exports._assert = exports._isHttpErrorResponse = exports._isHttpErrorObject = exports._isErrorObject = exports.AssertionError = exports.HttpError = exports.AppError = exports._createPromiseDecorator = exports._getArgsSignature = exports._LogMethod = exports._memoFn = exports._Memo = exports.is = void 0;
|
|
4
4
|
exports._average = exports.SimpleMovingAverage = exports._chunk = exports._flattenDeep = exports._flatten = exports._uniqBy = exports._uniq = exports._range = exports._errorObjectToAppError = exports._errorToErrorObject = exports._anyToErrorObject = exports._anyToError = exports._findKeyByValue = exports._mapToObject = exports._shuffle = exports._difference = exports._intersection = exports._countBy = exports._dropRightWhile = exports._dropWhile = exports._takeRightWhile = exports._takeWhile = exports._findLast = exports._round = exports._toPrecision = exports._toFixed = exports._sortNumbers = exports._sortBy = exports._groupBy = exports._by = exports._invertMap = exports._invert = exports._mask = exports._unset = exports._has = exports._set = exports._get = exports._sortObject = exports._sortObjectDeep = exports._deepTrim = exports._merge = exports._isEmpty = exports._isEmptyObject = exports._deepCopy = exports._deepEquals = exports._objectNullValuesToUndefined = exports._mapObject = exports._mapValues = exports._mapKeys = exports._isPrimitive = void 0;
|
|
5
5
|
exports.JSON_SCHEMA_ORDER = exports.JsonSchemaAnyBuilder = exports.jsonSchema = exports.mergeJsonSchemaObjects = exports._last = exports._clamp = exports._sumBy = exports._sum = exports._kebabCase = exports._camelCase = exports._snakeCase = exports._kb = exports._mb = exports._gb = exports._hb = exports._since = exports._ms = exports._stringifyAny = exports._jsonParseIfPossible = exports.pTry = exports._try = exports._TryCatch = exports._tryCatch = exports._Timeout = exports._Retry = exports.pTuple = exports.pTimeout = exports.pRetry = exports.AggregatedError = exports.pState = exports.pHang = exports.pDefer = exports.pDelay = exports.pProps = exports.pFilter = exports.ErrorMode = exports.pBatch = exports._noop = exports._passNothingPredicate = exports._passthroughPredicate = exports._passUndefinedMapper = exports._passthroughMapper = exports.pMap = exports._Throttle = exports._Debounce = exports._throttle = exports._debounce = exports._median = exports._percentile = exports._averageWeighted = void 0;
|
|
6
|
-
exports._safeJsonStringify = exports.commonLogLevelNumber = exports.noopLogger = exports.commonLoggerMinLevel = exports._lazyValue = exports._defineLazyProps = exports._defineLazyProperty = exports._parseQueryString = exports.generateJsonSchemaFromData = void 0;
|
|
6
|
+
exports._safeJsonStringify = exports.commonLoggerPipe = exports.commonLogLevelNumber = exports.noopLogger = exports.commonLoggerMinLevel = exports._lazyValue = exports._defineLazyProps = exports._defineLazyProperty = exports._parseQueryString = exports.generateJsonSchemaFromData = void 0;
|
|
7
7
|
const array_util_1 = require("./array/array.util");
|
|
8
8
|
Object.defineProperty(exports, "_by", { enumerable: true, get: function () { return array_util_1._by; } });
|
|
9
9
|
Object.defineProperty(exports, "_chunk", { enumerable: true, get: function () { return array_util_1._chunk; } });
|
|
@@ -215,5 +215,6 @@ const commonLogger_1 = require("./log/commonLogger");
|
|
|
215
215
|
Object.defineProperty(exports, "commonLoggerMinLevel", { enumerable: true, get: function () { return commonLogger_1.commonLoggerMinLevel; } });
|
|
216
216
|
Object.defineProperty(exports, "noopLogger", { enumerable: true, get: function () { return commonLogger_1.noopLogger; } });
|
|
217
217
|
Object.defineProperty(exports, "commonLogLevelNumber", { enumerable: true, get: function () { return commonLogger_1.commonLogLevelNumber; } });
|
|
218
|
+
Object.defineProperty(exports, "commonLoggerPipe", { enumerable: true, get: function () { return commonLogger_1.commonLoggerPipe; } });
|
|
218
219
|
const safeJsonStringify_1 = require("./string/safeJsonStringify");
|
|
219
220
|
Object.defineProperty(exports, "_safeJsonStringify", { enumerable: true, get: function () { return safeJsonStringify_1._safeJsonStringify; } });
|
|
@@ -38,3 +38,7 @@ export declare const noopLogger: CommonLogger;
|
|
|
38
38
|
* Creates a "child" logger that is "limited" to the specified CommonLogLevel.
|
|
39
39
|
*/
|
|
40
40
|
export declare function commonLoggerMinLevel(logger: CommonLogger, minLevel: CommonLogLevel, mutate?: boolean): CommonLogger;
|
|
41
|
+
/**
|
|
42
|
+
* Creates a "proxy" CommonLogger that pipes log messages to all provided sub-loggers.
|
|
43
|
+
*/
|
|
44
|
+
export declare function commonLoggerPipe(loggers: CommonLogger[]): CommonLogger;
|
package/dist/log/commonLogger.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.commonLoggerMinLevel = exports.noopLogger = exports.commonLogLevelNumber = void 0;
|
|
3
|
+
exports.commonLoggerPipe = exports.commonLoggerMinLevel = exports.noopLogger = exports.commonLogLevelNumber = void 0;
|
|
4
4
|
const index_1 = require("../index");
|
|
5
5
|
exports.commonLogLevelNumber = {
|
|
6
6
|
log: 10,
|
|
@@ -34,10 +34,29 @@ function commonLoggerMinLevel(logger, minLevel, mutate = false) {
|
|
|
34
34
|
}
|
|
35
35
|
return logger;
|
|
36
36
|
}
|
|
37
|
+
if (level <= exports.commonLogLevelNumber['log']) {
|
|
38
|
+
// All levels are kept
|
|
39
|
+
return logger;
|
|
40
|
+
}
|
|
41
|
+
if (level > exports.commonLogLevelNumber['error']) {
|
|
42
|
+
// "Log nothing" logger
|
|
43
|
+
return exports.noopLogger;
|
|
44
|
+
}
|
|
37
45
|
return {
|
|
38
|
-
log:
|
|
39
|
-
warn: level <= exports.commonLogLevelNumber['warn'] ?
|
|
40
|
-
error:
|
|
46
|
+
log: index_1._noop,
|
|
47
|
+
warn: level <= exports.commonLogLevelNumber['warn'] ? logger.warn.bind(logger) : index_1._noop,
|
|
48
|
+
error: logger.error.bind(logger), // otherwise it's "log nothing" logger (same as noopLogger)
|
|
41
49
|
};
|
|
42
50
|
}
|
|
43
51
|
exports.commonLoggerMinLevel = commonLoggerMinLevel;
|
|
52
|
+
/**
|
|
53
|
+
* Creates a "proxy" CommonLogger that pipes log messages to all provided sub-loggers.
|
|
54
|
+
*/
|
|
55
|
+
function commonLoggerPipe(loggers) {
|
|
56
|
+
return {
|
|
57
|
+
log: (...args) => loggers.forEach(logger => logger.log(...args)),
|
|
58
|
+
warn: (...args) => loggers.forEach(logger => logger.warn(...args)),
|
|
59
|
+
error: (...args) => loggers.forEach(logger => logger.error(...args)),
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
exports.commonLoggerPipe = commonLoggerPipe;
|
package/dist-esm/index.js
CHANGED
|
@@ -50,6 +50,6 @@ import { _ms, _since } from './time/time.util';
|
|
|
50
50
|
import { _noop, _objectKeys, _passNothingPredicate, _passthroughMapper, _passthroughPredicate, _passUndefinedMapper, _stringMapEntries, _stringMapValues, } from './types';
|
|
51
51
|
import { _gb, _hb, _kb, _mb } from './unit/size.util';
|
|
52
52
|
import { is } from './vendor/is';
|
|
53
|
-
import { commonLoggerMinLevel, noopLogger, commonLogLevelNumber, } from './log/commonLogger';
|
|
53
|
+
import { commonLoggerMinLevel, noopLogger, commonLogLevelNumber, commonLoggerPipe, } from './log/commonLogger';
|
|
54
54
|
import { _safeJsonStringify } from './string/safeJsonStringify';
|
|
55
|
-
export { is, _Memo, _memoFn, _LogMethod, _getArgsSignature, _createPromiseDecorator, AppError, HttpError, AssertionError, _isErrorObject, _isHttpErrorObject, _isHttpErrorResponse, _assert, _assertEquals, _assertDeepEquals, _assertIsError, _assertIsString, _assertIsNumber, _assertTypeOf, _randomInt, _randomArrayItem, _createDeterministicRandom, _inRange, _stringMapValues, _stringMapEntries, _objectKeys, _capitalize, _upperFirst, _lowerFirst, _split, _removeWhitespace, _substringBefore, _substringBeforeLast, _substringAfter, _substringAfterLast, _substringBetweenLast, _replaceAll, _nl2br, _truncate, _truncateMiddle, _pick, _omit, _filterFalsyValues, _filterUndefinedValues, _filterNullishValues, _filterEmptyArrays, _filterEmptyValues, _filterObject, _undefinedIfEmpty, _isObject, _isPrimitive, _mapKeys, _mapValues, _mapObject, _objectNullValuesToUndefined, _deepEquals, _deepCopy, _isEmptyObject, _isEmpty, _merge, _deepTrim, _sortObjectDeep, _sortObject, _get, _set, _has, _unset, _mask, _invert, _invertMap, _by, _groupBy, _sortBy, _sortNumbers, _toFixed, _toPrecision, _round, _findLast, _takeWhile, _takeRightWhile, _dropWhile, _dropRightWhile, _countBy, _intersection, _difference, _shuffle, _mapToObject, _findKeyByValue, _anyToError, _anyToErrorObject, _errorToErrorObject, _errorObjectToAppError, _range, _uniq, _uniqBy, _flatten, _flattenDeep, _chunk, SimpleMovingAverage, _average, _averageWeighted, _percentile, _median, _debounce, _throttle, _Debounce, _Throttle, pMap, _passthroughMapper, _passUndefinedMapper, _passthroughPredicate, _passNothingPredicate, _noop, pBatch, ErrorMode, pFilter, pProps, pDelay, pDefer, pHang, pState, AggregatedError, pRetry, pTimeout, pTuple, _Retry, _Timeout, _tryCatch, _TryCatch, _try, pTry, _jsonParseIfPossible, _stringifyAny, _ms, _since, _hb, _gb, _mb, _kb, _snakeCase, _camelCase, _kebabCase, _sum, _sumBy, _clamp, _last, mergeJsonSchemaObjects, jsonSchema, JsonSchemaAnyBuilder, JSON_SCHEMA_ORDER, generateJsonSchemaFromData, _parseQueryString, _defineLazyProperty, _defineLazyProps, _lazyValue, commonLoggerMinLevel, noopLogger, commonLogLevelNumber, _safeJsonStringify, };
|
|
55
|
+
export { is, _Memo, _memoFn, _LogMethod, _getArgsSignature, _createPromiseDecorator, AppError, HttpError, AssertionError, _isErrorObject, _isHttpErrorObject, _isHttpErrorResponse, _assert, _assertEquals, _assertDeepEquals, _assertIsError, _assertIsString, _assertIsNumber, _assertTypeOf, _randomInt, _randomArrayItem, _createDeterministicRandom, _inRange, _stringMapValues, _stringMapEntries, _objectKeys, _capitalize, _upperFirst, _lowerFirst, _split, _removeWhitespace, _substringBefore, _substringBeforeLast, _substringAfter, _substringAfterLast, _substringBetweenLast, _replaceAll, _nl2br, _truncate, _truncateMiddle, _pick, _omit, _filterFalsyValues, _filterUndefinedValues, _filterNullishValues, _filterEmptyArrays, _filterEmptyValues, _filterObject, _undefinedIfEmpty, _isObject, _isPrimitive, _mapKeys, _mapValues, _mapObject, _objectNullValuesToUndefined, _deepEquals, _deepCopy, _isEmptyObject, _isEmpty, _merge, _deepTrim, _sortObjectDeep, _sortObject, _get, _set, _has, _unset, _mask, _invert, _invertMap, _by, _groupBy, _sortBy, _sortNumbers, _toFixed, _toPrecision, _round, _findLast, _takeWhile, _takeRightWhile, _dropWhile, _dropRightWhile, _countBy, _intersection, _difference, _shuffle, _mapToObject, _findKeyByValue, _anyToError, _anyToErrorObject, _errorToErrorObject, _errorObjectToAppError, _range, _uniq, _uniqBy, _flatten, _flattenDeep, _chunk, SimpleMovingAverage, _average, _averageWeighted, _percentile, _median, _debounce, _throttle, _Debounce, _Throttle, pMap, _passthroughMapper, _passUndefinedMapper, _passthroughPredicate, _passNothingPredicate, _noop, pBatch, ErrorMode, pFilter, pProps, pDelay, pDefer, pHang, pState, AggregatedError, pRetry, pTimeout, pTuple, _Retry, _Timeout, _tryCatch, _TryCatch, _try, pTry, _jsonParseIfPossible, _stringifyAny, _ms, _since, _hb, _gb, _mb, _kb, _snakeCase, _camelCase, _kebabCase, _sum, _sumBy, _clamp, _last, mergeJsonSchemaObjects, jsonSchema, JsonSchemaAnyBuilder, JSON_SCHEMA_ORDER, generateJsonSchemaFromData, _parseQueryString, _defineLazyProperty, _defineLazyProps, _lazyValue, commonLoggerMinLevel, noopLogger, commonLogLevelNumber, commonLoggerPipe, _safeJsonStringify, };
|
|
@@ -31,9 +31,27 @@ export function commonLoggerMinLevel(logger, minLevel, mutate = false) {
|
|
|
31
31
|
}
|
|
32
32
|
return logger;
|
|
33
33
|
}
|
|
34
|
+
if (level <= commonLogLevelNumber['log']) {
|
|
35
|
+
// All levels are kept
|
|
36
|
+
return logger;
|
|
37
|
+
}
|
|
38
|
+
if (level > commonLogLevelNumber['error']) {
|
|
39
|
+
// "Log nothing" logger
|
|
40
|
+
return noopLogger;
|
|
41
|
+
}
|
|
42
|
+
return {
|
|
43
|
+
log: _noop,
|
|
44
|
+
warn: level <= commonLogLevelNumber['warn'] ? logger.warn.bind(logger) : _noop,
|
|
45
|
+
error: logger.error.bind(logger), // otherwise it's "log nothing" logger (same as noopLogger)
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Creates a "proxy" CommonLogger that pipes log messages to all provided sub-loggers.
|
|
50
|
+
*/
|
|
51
|
+
export function commonLoggerPipe(loggers) {
|
|
34
52
|
return {
|
|
35
|
-
log:
|
|
36
|
-
warn:
|
|
37
|
-
error:
|
|
53
|
+
log: (...args) => loggers.forEach(logger => logger.log(...args)),
|
|
54
|
+
warn: (...args) => loggers.forEach(logger => logger.warn(...args)),
|
|
55
|
+
error: (...args) => loggers.forEach(logger => logger.error(...args)),
|
|
38
56
|
};
|
|
39
57
|
}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -231,6 +231,7 @@ import {
|
|
|
231
231
|
commonLoggerMinLevel,
|
|
232
232
|
noopLogger,
|
|
233
233
|
commonLogLevelNumber,
|
|
234
|
+
commonLoggerPipe,
|
|
234
235
|
} from './log/commonLogger'
|
|
235
236
|
import { _safeJsonStringify } from './string/safeJsonStringify'
|
|
236
237
|
|
|
@@ -468,5 +469,6 @@ export {
|
|
|
468
469
|
commonLoggerMinLevel,
|
|
469
470
|
noopLogger,
|
|
470
471
|
commonLogLevelNumber,
|
|
472
|
+
commonLoggerPipe,
|
|
471
473
|
_safeJsonStringify,
|
|
472
474
|
}
|
package/src/log/commonLogger.ts
CHANGED
|
@@ -71,9 +71,30 @@ export function commonLoggerMinLevel(
|
|
|
71
71
|
return logger
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
+
if (level <= commonLogLevelNumber['log']) {
|
|
75
|
+
// All levels are kept
|
|
76
|
+
return logger
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
if (level > commonLogLevelNumber['error']) {
|
|
80
|
+
// "Log nothing" logger
|
|
81
|
+
return noopLogger
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
return {
|
|
85
|
+
log: _noop, // otherwise it is "log everything" logger (same logger as input)
|
|
86
|
+
warn: level <= commonLogLevelNumber['warn'] ? logger.warn.bind(logger) : _noop,
|
|
87
|
+
error: logger.error.bind(logger), // otherwise it's "log nothing" logger (same as noopLogger)
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Creates a "proxy" CommonLogger that pipes log messages to all provided sub-loggers.
|
|
93
|
+
*/
|
|
94
|
+
export function commonLoggerPipe(loggers: CommonLogger[]): CommonLogger {
|
|
74
95
|
return {
|
|
75
|
-
log:
|
|
76
|
-
warn:
|
|
77
|
-
error:
|
|
96
|
+
log: (...args) => loggers.forEach(logger => logger.log(...args)),
|
|
97
|
+
warn: (...args) => loggers.forEach(logger => logger.warn(...args)),
|
|
98
|
+
error: (...args) => loggers.forEach(logger => logger.error(...args)),
|
|
78
99
|
}
|
|
79
100
|
}
|