@digital-alchemy/core 24.11.3 → 25.1.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/dist/helpers/async.mjs +0 -1
- package/dist/helpers/async.mjs.map +1 -1
- package/dist/helpers/config-environment-loader.mjs +0 -1
- package/dist/helpers/config-environment-loader.mjs.map +1 -1
- package/dist/helpers/logger.d.mts +10 -7
- package/dist/helpers/logger.mjs.map +1 -1
- package/dist/helpers/wiring.d.mts +19 -6
- package/dist/helpers/wiring.mjs.map +1 -1
- package/dist/services/logger.service.mjs +62 -35
- package/dist/services/logger.service.mjs.map +1 -1
- package/package.json +23 -23
package/dist/helpers/async.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async.mjs","sourceRoot":"","sources":["../../src/helpers/async.mts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"async.mjs","sourceRoot":"","sources":["../../src/helpers/async.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE9D,4EAA4E;AAC5E,mDAAmD;AACnD,kEAAkE;AAClE,EAAE;AAEF,cAAc;AACd,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,IAAkB,EAClB,QAA8C;IAE9C,IAAI,IAAI,YAAY,GAAG,EAAE,CAAC;QACxB,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5B,CAAC;IACD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED,oBAAoB;AACpB,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAkB,EAClB,QAA8C;IAE9C,IAAI,IAAI,YAAY,GAAG,EAAE,CAAC;QACxB,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,SAAS,CAAC,uBAAuB,CAAC,CAAC;IAC/C,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;QACzD,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,mBAAmB;AACnB,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,KAAU,EACV,KAAa,EACb,QAA8C;IAE9C,4DAA4D;IAC5D,MAAM,cAAc,GAAiC,IAAI,GAAG,EAAE,CAAC;IAE/D,sCAAsC;IACtC,KAAK,UAAU,OAAO,CAAC,IAAO;QAC5B,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACvC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,qDAAqD;QACvF,CAAC,CAAC,CAAC;QACH,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,cAAc,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;YACjC,MAAM,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,iDAAiD;QACvF,CAAC;IACH,CAAC;IAED,oCAAoC;IACpC,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAE3E,wDAAwD;IACxD,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEhC,+DAA+D;IAC/D,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,YAAY,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzD,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAED,2CAA2C;IAC3C,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-environment-loader.mjs","sourceRoot":"","sources":["../../src/helpers/config-environment-loader.mts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"config-environment-loader.mjs","sourceRoot":"","sources":["../../src/helpers/config-environment-loader.mts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
import { Get } from "type-fest";
|
|
1
2
|
import { TContext } from "./context.mts";
|
|
3
|
+
import { TBlackHole } from "./utilities.mts";
|
|
4
|
+
export interface ReplacementLogger {
|
|
5
|
+
}
|
|
6
|
+
export type GetLogger = Get<ReplacementLogger, "logger"> extends object ? Get<ReplacementLogger, "logger"> : ILogger;
|
|
7
|
+
export type LogStreamTarget = (message: string, data: object) => TBlackHole;
|
|
2
8
|
export type DigitalAlchemyLogger = {
|
|
9
|
+
addTarget: (logger: GetLogger | LogStreamTarget) => void;
|
|
3
10
|
/**
|
|
4
11
|
* Create a new logger instance for a given context
|
|
5
12
|
*/
|
|
@@ -7,7 +14,7 @@ export type DigitalAlchemyLogger = {
|
|
|
7
14
|
/**
|
|
8
15
|
* Retrieve a reference to the base logger used to emit from
|
|
9
16
|
*/
|
|
10
|
-
getBaseLogger: () => Record<keyof
|
|
17
|
+
getBaseLogger: () => Record<keyof GetLogger, (context: TContext, ...data: Parameters<TLoggerFunction>) => void>;
|
|
11
18
|
getPrettyFormat: () => boolean;
|
|
12
19
|
/**
|
|
13
20
|
* exposed for testing
|
|
@@ -18,7 +25,7 @@ export type DigitalAlchemyLogger = {
|
|
|
18
25
|
*
|
|
19
26
|
* Note: Extension still handles LOG_LEVEL logic
|
|
20
27
|
*/
|
|
21
|
-
setBaseLogger: (base:
|
|
28
|
+
setBaseLogger: (base: GetLogger) => GetLogger;
|
|
22
29
|
/**
|
|
23
30
|
* Set the enabled/disabled state of the message pretty formatting logic
|
|
24
31
|
*/
|
|
@@ -26,15 +33,11 @@ export type DigitalAlchemyLogger = {
|
|
|
26
33
|
/**
|
|
27
34
|
* Logger instance of last resort
|
|
28
35
|
*/
|
|
29
|
-
systemLogger:
|
|
36
|
+
systemLogger: GetLogger;
|
|
30
37
|
/**
|
|
31
38
|
* exposed for testing
|
|
32
39
|
*/
|
|
33
40
|
updateShouldLog: () => void;
|
|
34
|
-
/**
|
|
35
|
-
* If set, logs will be converted to json & sent to target
|
|
36
|
-
*/
|
|
37
|
-
setHttpLogs: (url: string) => void;
|
|
38
41
|
};
|
|
39
42
|
export type TLoggerFunction = ((message: string, ...arguments_: unknown[]) => void) | ((object: object, message?: string, ...arguments_: unknown[]) => void);
|
|
40
43
|
export interface ILogger {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.mjs","sourceRoot":"","sources":["../../src/helpers/logger.mts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logger.mjs","sourceRoot":"","sources":["../../src/helpers/logger.mts"],"names":[],"mappings":"AAgFA,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAgC;IAClE,CAAC,OAAO,EAAE,MAAM,CAAC;IACjB,CAAC,OAAO,EAAE,MAAM,CAAC;IACjB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,OAAO,EAAE,KAAK,CAAC;IAChB,CAAC,MAAM,EAAE,OAAO,CAAC;IACjB,CAAC,OAAO,EAAE,SAAS,CAAC;CACrB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG,yBAAyB,CAAC"}
|
|
@@ -6,7 +6,7 @@ import { AnyConfig, BooleanConfig, DataTypes, InternalConfig, NumberConfig, Opti
|
|
|
6
6
|
import { TContext } from "./context.mts";
|
|
7
7
|
import { CronExpression, ScheduleRemove } from "./cron.mts";
|
|
8
8
|
import { TLifecycleBase } from "./lifecycle.mts";
|
|
9
|
-
import {
|
|
9
|
+
import { GetLogger, TConfigLogLevel } from "./logger.mts";
|
|
10
10
|
import { TBlackHole } from "./utilities.mts";
|
|
11
11
|
export type TServiceReturn<OBJECT extends object = object> = void | OBJECT;
|
|
12
12
|
export type TModuleMappings = Record<string, ServiceFunction>;
|
|
@@ -81,7 +81,14 @@ export type TInjectedConfig = {
|
|
|
81
81
|
[ModuleName in keyof ModuleConfigs]: ConfigTypes<ModuleConfigs[ModuleName]>;
|
|
82
82
|
};
|
|
83
83
|
export interface AsyncLogData {
|
|
84
|
-
|
|
84
|
+
/**
|
|
85
|
+
* return ms since entry, precision is on you
|
|
86
|
+
*/
|
|
87
|
+
duration?: () => number;
|
|
88
|
+
/**
|
|
89
|
+
* thread local child logger
|
|
90
|
+
*/
|
|
91
|
+
logger?: GetLogger;
|
|
85
92
|
}
|
|
86
93
|
export interface AsyncLocalData {
|
|
87
94
|
logs: AsyncLogData;
|
|
@@ -121,7 +128,7 @@ export type TServiceParams = {
|
|
|
121
128
|
/**
|
|
122
129
|
* context aware logger instance
|
|
123
130
|
*/
|
|
124
|
-
logger:
|
|
131
|
+
logger: GetLogger;
|
|
125
132
|
/**
|
|
126
133
|
* run commands on intervals & schedules
|
|
127
134
|
*
|
|
@@ -223,7 +230,7 @@ export type BootstrapOptions = {
|
|
|
223
230
|
/**
|
|
224
231
|
* use this logger, instead of the baked in one. Maybe you want some custom transports or something? Put your customized thing here
|
|
225
232
|
*/
|
|
226
|
-
customLogger?:
|
|
233
|
+
customLogger?: GetLogger;
|
|
227
234
|
/**
|
|
228
235
|
* fine tine the built in logger
|
|
229
236
|
*/
|
|
@@ -285,6 +292,12 @@ export type LoggerOptions = {
|
|
|
285
292
|
* Override the `LOG_LEVEL` per service or module
|
|
286
293
|
*/
|
|
287
294
|
levelOverrides?: Partial<Record<LoadedModuleNames | FlatServiceNames, TConfigLogLevel>>;
|
|
295
|
+
/**
|
|
296
|
+
* default: true (unless a replacement logger is provided)
|
|
297
|
+
*
|
|
298
|
+
* emit logs to stdout
|
|
299
|
+
*/
|
|
300
|
+
stdOut?: boolean;
|
|
288
301
|
};
|
|
289
302
|
export declare const WIRE_PROJECT: unique symbol;
|
|
290
303
|
type Wire = {
|
|
@@ -300,14 +313,14 @@ export type LibraryDefinition<S extends ServiceMap, C extends OptionalModuleConf
|
|
|
300
313
|
type: "library";
|
|
301
314
|
};
|
|
302
315
|
export type ApplicationDefinition<S extends ServiceMap, C extends OptionalModuleConfiguration> = ApplicationConfigurationOptions<S, C> & Wire & {
|
|
303
|
-
logger:
|
|
316
|
+
logger: GetLogger;
|
|
304
317
|
type: "application";
|
|
305
318
|
booted: boolean;
|
|
306
319
|
bootstrap: (options?: BootstrapOptions) => Promise<TServiceParams>;
|
|
307
320
|
teardown: () => Promise<void>;
|
|
308
321
|
};
|
|
309
322
|
export type TLibrary = LibraryDefinition<ServiceMap, OptionalModuleConfiguration>;
|
|
310
|
-
export declare function buildSortOrder<S extends ServiceMap, C extends OptionalModuleConfiguration>(app: ApplicationDefinition<S, C>, logger:
|
|
323
|
+
export declare function buildSortOrder<S extends ServiceMap, C extends OptionalModuleConfiguration>(app: ApplicationDefinition<S, C>, logger: GetLogger): TLibrary[];
|
|
311
324
|
export declare const COERCE_CONTEXT: (context: string) => TContext;
|
|
312
325
|
export declare const WIRING_CONTEXT: TContext;
|
|
313
326
|
export declare function validateLibrary<S extends ServiceMap>(project: string, serviceList: S): void | never;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wiring.mjs","sourceRoot":"","sources":["../../src/helpers/wiring.mts"],"names":[],"mappings":"AAIA,OAAO,EAAqC,EAAE,EAAmB,YAAY,EAAE,MAAM,cAAc,CAAC;AACpG,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAazC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"wiring.mjs","sourceRoot":"","sources":["../../src/helpers/wiring.mts"],"names":[],"mappings":"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"}
|
|
@@ -24,26 +24,16 @@ const LEVEL_MAX = 7;
|
|
|
24
24
|
export async function Logger({ lifecycle, config, event, internal, als, }) {
|
|
25
25
|
let lastMessage = performance.now();
|
|
26
26
|
let logCounter = START;
|
|
27
|
-
|
|
27
|
+
const extraTargets = new Set();
|
|
28
28
|
internal.boot.options ??= {};
|
|
29
29
|
const { loggerOptions = {} } = internal.boot.options;
|
|
30
|
+
loggerOptions.stdOut ??= true;
|
|
30
31
|
const timestampFormat = loggerOptions.timestampFormat ?? "ddd HH:mm:ss.SSS";
|
|
31
32
|
loggerOptions.mergeData ??= {};
|
|
32
33
|
const YELLOW_DASH = chalk.yellowBright(frontDash);
|
|
33
34
|
const BLUE_TICK = chalk.blue(`>`);
|
|
34
35
|
let prettyFormat = is.boolean(loggerOptions.pretty) ? loggerOptions.pretty : true;
|
|
35
|
-
|
|
36
|
-
if (is.empty(httpLogTarget)) {
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
// validated with datadog, probably is fine elsewhere too
|
|
40
|
-
// https://http-intake.logs.datadoghq.com/v1/input/{API_KEY}
|
|
41
|
-
globalThis.fetch(httpLogTarget, {
|
|
42
|
-
body: JSON.stringify(data),
|
|
43
|
-
headers: { "Content-Type": "application/json" },
|
|
44
|
-
method: "POST",
|
|
45
|
-
});
|
|
46
|
-
}
|
|
36
|
+
// #MARK: mergeData
|
|
47
37
|
function mergeData(data) {
|
|
48
38
|
let out = { ...data, ...loggerOptions.mergeData };
|
|
49
39
|
if (loggerOptions.counter) {
|
|
@@ -52,14 +42,18 @@ export async function Logger({ lifecycle, config, event, internal, als, }) {
|
|
|
52
42
|
}
|
|
53
43
|
let logger;
|
|
54
44
|
if (loggerOptions.als) {
|
|
55
|
-
const data = als.getLogData();
|
|
56
|
-
logger =
|
|
57
|
-
|
|
58
|
-
|
|
45
|
+
const { duration, logger: replacement, ...data } = als.getLogData();
|
|
46
|
+
logger = replacement;
|
|
47
|
+
const extra = {};
|
|
48
|
+
if (duration) {
|
|
49
|
+
extra.elapsed = duration();
|
|
50
|
+
}
|
|
51
|
+
out = { ...out, ...data, ...extra };
|
|
59
52
|
}
|
|
60
53
|
return [out, logger];
|
|
61
54
|
}
|
|
62
|
-
|
|
55
|
+
// #MARK: prettyFormatMessage
|
|
56
|
+
function prettyFormatMessage(message) {
|
|
63
57
|
if (!message) {
|
|
64
58
|
return ``;
|
|
65
59
|
}
|
|
@@ -79,43 +73,71 @@ export async function Logger({ lifecycle, config, event, internal, als, }) {
|
|
|
79
73
|
message = `${YELLOW_DASH}${message.slice(frontDash.length)}`;
|
|
80
74
|
}
|
|
81
75
|
return message;
|
|
82
|
-
}
|
|
76
|
+
}
|
|
83
77
|
if (is.empty(internal.boot.options?.customLogger)) {
|
|
84
78
|
// #MARK: formatter
|
|
85
79
|
[...METHOD_COLORS.keys()].forEach(key => {
|
|
86
|
-
const level = `[${key.toUpperCase()}]`.padStart(LEVEL_MAX, " ");
|
|
87
80
|
logger[key] = (context, ...parameters) => {
|
|
88
81
|
const [data, child] = mergeData(is.object(parameters[FIRST])
|
|
89
82
|
? parameters.shift()
|
|
90
83
|
: {});
|
|
84
|
+
// common for functions to be thrown in
|
|
85
|
+
// extract it's declared name and discard the rest of the info
|
|
86
|
+
data.name = is.object(data.name) || is.function(data.name) ? data.name.name : data.name;
|
|
87
|
+
// ? full data object representing this log
|
|
88
|
+
// used with cloud logging (graylog, datadog, etc)
|
|
91
89
|
const rawData = {
|
|
92
90
|
...data,
|
|
91
|
+
context: data.context || context,
|
|
93
92
|
level: key,
|
|
94
93
|
timestamp: Date.now(),
|
|
95
94
|
};
|
|
96
|
-
const highlighted = chalk.bold[METHOD_COLORS.get(key)](`[${data.context || context}]`);
|
|
97
|
-
const name = is.object(data.name) || is.function(data.name) ? data.name.name : data.name;
|
|
98
|
-
delete data.context;
|
|
99
|
-
delete data.name;
|
|
100
|
-
const timestamp = chalk.white(`[${dayjs().format(timestampFormat)}]`);
|
|
101
95
|
let prettyMessage;
|
|
96
|
+
let msg = "";
|
|
97
|
+
// > logger.info("text", ...parameters);
|
|
98
|
+
// convert a message + parameters set down to a simple string
|
|
102
99
|
if (!is.empty(parameters)) {
|
|
103
100
|
const text = parameters.shift();
|
|
104
|
-
|
|
105
|
-
|
|
101
|
+
msg = format(text, ...parameters);
|
|
102
|
+
if (loggerOptions.stdOut) {
|
|
103
|
+
prettyMessage = format(prettyFormatMessage(text), ...parameters);
|
|
104
|
+
}
|
|
106
105
|
}
|
|
106
|
+
// ms since last log message
|
|
107
107
|
let ms = "";
|
|
108
108
|
if (loggerOptions.ms) {
|
|
109
109
|
const now = performance.now();
|
|
110
|
-
|
|
110
|
+
const duration = (now - lastMessage).toFixed(DECIMALS);
|
|
111
|
+
ms = `+${duration}ms`;
|
|
111
112
|
lastMessage = now;
|
|
112
113
|
rawData.ms = ms;
|
|
113
114
|
}
|
|
115
|
+
// emit logs to external targets
|
|
116
|
+
extraTargets.forEach(target => {
|
|
117
|
+
// stream targets, just take all messages and do the exact same thing with them
|
|
118
|
+
// ex: send to http endpoint
|
|
119
|
+
if (is.function(target)) {
|
|
120
|
+
target(msg, rawData);
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
// something that conforms to the basic logger interface
|
|
124
|
+
target[key](msg, rawData);
|
|
125
|
+
});
|
|
126
|
+
// minor performance tuning option:
|
|
127
|
+
// don't do any work to output to stdout if nobody is gonna look at it
|
|
128
|
+
if (!loggerOptions.stdOut) {
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
// #MARK: pretty logs
|
|
132
|
+
const level = `[${key.toUpperCase()}]`.padStart(LEVEL_MAX, " ");
|
|
133
|
+
const highlighted = chalk.bold[METHOD_COLORS.get(key)](`[${data.context || context}]`);
|
|
134
|
+
const timestamp = chalk.white(`[${dayjs().format(timestampFormat)}]`);
|
|
114
135
|
let message = `${ms}${timestamp} ${level}${highlighted}`;
|
|
115
|
-
|
|
116
|
-
|
|
136
|
+
delete data.context;
|
|
137
|
+
delete data.name;
|
|
138
|
+
if (!is.empty(data.name)) {
|
|
139
|
+
message += chalk.blue(` (${String(data.name)})`);
|
|
117
140
|
}
|
|
118
|
-
emitHttpLogs(rawData);
|
|
119
141
|
if (!is.empty(prettyMessage)) {
|
|
120
142
|
message += `: ${chalk.cyan(prettyMessage)}`;
|
|
121
143
|
}
|
|
@@ -137,6 +159,7 @@ export async function Logger({ lifecycle, config, event, internal, als, }) {
|
|
|
137
159
|
child[key](message);
|
|
138
160
|
return;
|
|
139
161
|
}
|
|
162
|
+
// #MARK: globalThis.console
|
|
140
163
|
switch (key) {
|
|
141
164
|
case "warn": {
|
|
142
165
|
globalThis.console.warn(message);
|
|
@@ -161,13 +184,13 @@ export async function Logger({ lifecycle, config, event, internal, als, }) {
|
|
|
161
184
|
else {
|
|
162
185
|
logger = internal.boot.options.customLogger;
|
|
163
186
|
}
|
|
164
|
-
// #MARK: instances
|
|
165
187
|
// if bootstrap hard coded something specific, then start there
|
|
166
188
|
// otherwise, be noisy until config loads a user preference
|
|
167
189
|
//
|
|
168
190
|
// stored as separate variable to cut down on internal config lookups
|
|
169
191
|
let CURRENT_LOG_LEVEL = internal.utils.object.get(internal, "boot.options.configuration.boilerplate.LOG_LEVEL") ||
|
|
170
192
|
"trace";
|
|
193
|
+
// #MARK: context
|
|
171
194
|
function context(context) {
|
|
172
195
|
const name = context;
|
|
173
196
|
const shouldILog = {};
|
|
@@ -198,23 +221,27 @@ export async function Logger({ lifecycle, config, event, internal, als, }) {
|
|
|
198
221
|
warn: (...params) => shouldILog.warn && logger.warn(context, ...params),
|
|
199
222
|
};
|
|
200
223
|
}
|
|
201
|
-
|
|
224
|
+
// #MARK updateShouldLog:
|
|
225
|
+
function updateShouldLog() {
|
|
202
226
|
if (!is.empty(config.boilerplate.LOG_LEVEL)) {
|
|
203
227
|
CURRENT_LOG_LEVEL = config.boilerplate.LOG_LEVEL;
|
|
204
228
|
}
|
|
205
229
|
event.emit(EVENT_UPDATE_LOG_LEVELS);
|
|
206
|
-
}
|
|
230
|
+
}
|
|
207
231
|
// #MARK: lifecycle
|
|
208
232
|
lifecycle.onPostConfig(() => internal.boilerplate.logger.updateShouldLog());
|
|
209
233
|
internal.boilerplate.configuration.onUpdate(() => internal.boilerplate.logger.updateShouldLog(), "boilerplate", "LOG_LEVEL");
|
|
234
|
+
function addTarget(target) {
|
|
235
|
+
extraTargets.add(target);
|
|
236
|
+
}
|
|
210
237
|
// #MARK: return object
|
|
211
238
|
return {
|
|
239
|
+
addTarget,
|
|
212
240
|
context,
|
|
213
241
|
getBaseLogger: () => logger,
|
|
214
242
|
getPrettyFormat: () => prettyFormat,
|
|
215
243
|
prettyFormatMessage,
|
|
216
244
|
setBaseLogger: base => (logger = base),
|
|
217
|
-
setHttpLogs: url => (httpLogTarget = url),
|
|
218
245
|
setPrettyFormat: state => (prettyFormat = state),
|
|
219
246
|
systemLogger: context("digital-alchemy:system-logger"),
|
|
220
247
|
updateShouldLog,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.service.mjs","sourceRoot":"","sources":["../../src/services/logger.service.mts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEvC,OAAO,EAEL,uBAAuB,EACvB,KAAK,
|
|
1
|
+
{"version":3,"file":"logger.service.mjs","sourceRoot":"","sources":["../../src/services/logger.service.mts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"repository": {
|
|
6
6
|
"url": "git+https://github.com/Digital-Alchemy-TS/core"
|
|
7
7
|
},
|
|
8
|
-
"version": "
|
|
8
|
+
"version": "25.1.1",
|
|
9
9
|
"author": {
|
|
10
10
|
"url": "https://github.com/zoe-codez",
|
|
11
11
|
"name": "Zoe Codez"
|
|
@@ -47,55 +47,55 @@
|
|
|
47
47
|
"node": ">=20"
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"chalk": "^5.
|
|
50
|
+
"chalk": "^5.4.1",
|
|
51
51
|
"dayjs": "^1.11.13",
|
|
52
|
-
"dotenv": "^16.4.
|
|
52
|
+
"dotenv": "^16.4.7",
|
|
53
53
|
"ini": "^5.0.0",
|
|
54
54
|
"js-yaml": "^4.1.0",
|
|
55
55
|
"minimist": "^1.2.8",
|
|
56
56
|
"node-cron": "^3.0.3",
|
|
57
|
-
"uuid": "^11.0.
|
|
57
|
+
"uuid": "^11.0.5"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
|
-
"@cspell/eslint-plugin": "^8.
|
|
61
|
-
"@eslint/compat": "^1.2.
|
|
62
|
-
"@eslint/eslintrc": "^3.
|
|
63
|
-
"@eslint/js": "^9.
|
|
64
|
-
"@faker-js/faker": "^9.
|
|
60
|
+
"@cspell/eslint-plugin": "^8.17.1",
|
|
61
|
+
"@eslint/compat": "^1.2.5",
|
|
62
|
+
"@eslint/eslintrc": "^3.2.0",
|
|
63
|
+
"@eslint/js": "^9.18.0",
|
|
64
|
+
"@faker-js/faker": "^9.3.0",
|
|
65
65
|
"@types/dotenv": "^8.2.3",
|
|
66
66
|
"@types/ini": "^4.1.1",
|
|
67
67
|
"@types/js-yaml": "^4.0.9",
|
|
68
68
|
"@types/minimist": "^1.2.5",
|
|
69
|
-
"@types/node": "^22.
|
|
69
|
+
"@types/node": "^22.10.5",
|
|
70
70
|
"@types/node-cron": "^3.0.11",
|
|
71
71
|
"@types/sinonjs__fake-timers": "^8.1.5",
|
|
72
|
-
"@typescript-eslint/eslint-plugin": "8.
|
|
73
|
-
"@typescript-eslint/parser": "8.
|
|
74
|
-
"chalk": "^5.
|
|
72
|
+
"@typescript-eslint/eslint-plugin": "8.19.1",
|
|
73
|
+
"@typescript-eslint/parser": "8.19.1",
|
|
74
|
+
"chalk": "^5.4.1",
|
|
75
75
|
"dayjs": "^1.11.13",
|
|
76
|
-
"dotenv": "^16.4.
|
|
77
|
-
"eslint": "9.
|
|
76
|
+
"dotenv": "^16.4.7",
|
|
77
|
+
"eslint": "9.18.0",
|
|
78
78
|
"eslint-config-prettier": "9.1.0",
|
|
79
79
|
"eslint-plugin-import": "^2.31.0",
|
|
80
|
-
"eslint-plugin-jsonc": "^2.18.
|
|
80
|
+
"eslint-plugin-jsonc": "^2.18.2",
|
|
81
81
|
"eslint-plugin-no-unsanitized": "^4.1.2",
|
|
82
82
|
"eslint-plugin-prettier": "^5.2.1",
|
|
83
83
|
"eslint-plugin-security": "^3.0.1",
|
|
84
84
|
"eslint-plugin-simple-import-sort": "^12.1.1",
|
|
85
|
-
"eslint-plugin-sonarjs": "^
|
|
85
|
+
"eslint-plugin-sonarjs": "^3.0.1",
|
|
86
86
|
"eslint-plugin-sort-keys-fix": "^1.1.2",
|
|
87
|
-
"eslint-plugin-unicorn": "^56.0.
|
|
87
|
+
"eslint-plugin-unicorn": "^56.0.1",
|
|
88
88
|
"ini": "^5.0.0",
|
|
89
89
|
"js-yaml": "^4.1.0",
|
|
90
90
|
"minimist": "^1.2.8",
|
|
91
91
|
"node-cron": "^3.0.3",
|
|
92
|
-
"prettier": "^3.
|
|
92
|
+
"prettier": "^3.4.2",
|
|
93
93
|
"tslib": "^2.8.1",
|
|
94
94
|
"tsx": "^4.19.2",
|
|
95
|
-
"type-fest": "^4.
|
|
96
|
-
"typescript": "^5.7.
|
|
97
|
-
"uuid": "^11.0.
|
|
98
|
-
"vitest": "^2.1.
|
|
95
|
+
"type-fest": "^4.32.0",
|
|
96
|
+
"typescript": "^5.7.3",
|
|
97
|
+
"uuid": "^11.0.5",
|
|
98
|
+
"vitest": "^2.1.8"
|
|
99
99
|
},
|
|
100
100
|
"packageManager": "yarn@4.5.1"
|
|
101
101
|
}
|