@jmlq/logger 0.1.0-alpha.18 → 0.1.0-alpha.19
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.
|
@@ -7,6 +7,4 @@ import { ILoggerFactoryConfig, ILogger } from "../../domain/ports";
|
|
|
7
7
|
* - Instanciar y conectar los casos de uso
|
|
8
8
|
* - Exponer un servicio de logger de alto nivel
|
|
9
9
|
*/
|
|
10
|
-
export declare
|
|
11
|
-
static create(config: ILoggerFactoryConfig, source?: string): ILogger;
|
|
12
|
-
}
|
|
10
|
+
export declare function createLogger(config: ILoggerFactoryConfig, source?: string): ILogger;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.createLogger = createLogger;
|
|
4
4
|
const value_objects_1 = require("../../domain/value-objects");
|
|
5
5
|
const pii_redactor_service_1 = require("../../domain/services/pii-redactor.service");
|
|
6
6
|
const services_1 = require("../../infrastructure/services");
|
|
@@ -13,62 +13,59 @@ const use_cases_1 = require("../use-cases");
|
|
|
13
13
|
* - Instanciar y conectar los casos de uso
|
|
14
14
|
* - Exponer un servicio de logger de alto nivel
|
|
15
15
|
*/
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
return service;
|
|
72
|
-
}
|
|
16
|
+
function createLogger(config, source = "app-logger") {
|
|
17
|
+
// 1) Normalizar config
|
|
18
|
+
const minLevel = config.minLevel ?? value_objects_1.LogLevel.INFO;
|
|
19
|
+
const datasources = Array.isArray(config.datasources)
|
|
20
|
+
? config.datasources
|
|
21
|
+
: [config.datasources];
|
|
22
|
+
// 2) Componer datasource (si hay varios) con DataSourceService
|
|
23
|
+
const ds = datasources.length === 1
|
|
24
|
+
? datasources[0]
|
|
25
|
+
: new services_1.DataSourceService(datasources);
|
|
26
|
+
// 3) Crear/usar redactor de PII
|
|
27
|
+
const redactor = config.redactor ?? new pii_redactor_service_1.PiiRedactor(config.redactorOptions);
|
|
28
|
+
// 4) Construir casos de uso de Application
|
|
29
|
+
const saveLogUseCase = new use_cases_1.SaveLogUseCase({
|
|
30
|
+
ds,
|
|
31
|
+
minLevel,
|
|
32
|
+
redactor,
|
|
33
|
+
});
|
|
34
|
+
const getLogsUseCase = new use_cases_1.GetLogsUseCase(ds);
|
|
35
|
+
const flushBuffersUseCase = new use_cases_1.FlushBuffersUseCase(ds);
|
|
36
|
+
// 5) Construir facade de servicio de logging
|
|
37
|
+
const service = {
|
|
38
|
+
// Método genérico de logging
|
|
39
|
+
async log(level, message, meta) {
|
|
40
|
+
await saveLogUseCase.execute("app-logger", level, message, meta);
|
|
41
|
+
},
|
|
42
|
+
// Helpers por nivel
|
|
43
|
+
trace(message, meta) {
|
|
44
|
+
return saveLogUseCase.execute(source, value_objects_1.LogLevel.TRACE, message, meta);
|
|
45
|
+
},
|
|
46
|
+
debug(message, meta) {
|
|
47
|
+
return saveLogUseCase.execute(source, value_objects_1.LogLevel.DEBUG, message, meta);
|
|
48
|
+
},
|
|
49
|
+
info(message, meta) {
|
|
50
|
+
return saveLogUseCase.execute(source, value_objects_1.LogLevel.INFO, message, meta);
|
|
51
|
+
},
|
|
52
|
+
warn(message, meta) {
|
|
53
|
+
return saveLogUseCase.execute(source, value_objects_1.LogLevel.WARN, message, meta);
|
|
54
|
+
},
|
|
55
|
+
error(message, meta) {
|
|
56
|
+
return saveLogUseCase.execute(source, value_objects_1.LogLevel.ERROR, message, meta);
|
|
57
|
+
},
|
|
58
|
+
fatal(message, meta) {
|
|
59
|
+
return saveLogUseCase.execute(source, value_objects_1.LogLevel.FATAL, message, meta);
|
|
60
|
+
},
|
|
61
|
+
// Lectura de logs con filtros
|
|
62
|
+
async getLogs(filter) {
|
|
63
|
+
return getLogsUseCase.execute(filter);
|
|
64
|
+
},
|
|
65
|
+
// Flush explícito (si el datasource lo soporta)
|
|
66
|
+
async flush() {
|
|
67
|
+
await flushBuffersUseCase.execute();
|
|
68
|
+
},
|
|
69
|
+
};
|
|
70
|
+
return service;
|
|
73
71
|
}
|
|
74
|
-
exports.LoggerFactory = LoggerFactory;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
export
|
|
2
|
-
export type { ILogger, ILoggerFactoryConfig,
|
|
1
|
+
export { createLogger } from "./application/factory";
|
|
2
|
+
export type { ILogger, ILoggerFactoryConfig, } from "./domain/ports";
|
|
3
3
|
export { LogLevel } from "./domain/value-objects";
|
|
4
|
-
export type { LogMessage } from "./domain/types";
|
|
5
4
|
export type { LogFilterRequest as LogSearchRequest } from "./domain/request";
|
|
6
5
|
export type { ILogResponse as LogRecord } from "./domain/response";
|
|
7
6
|
export type { PiiOptions as PiiRedactorOptions, LogEntry, } from "./domain/model";
|
package/dist/index.js
CHANGED
|
@@ -33,13 +33,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.LoggerUtils = exports.PiiRedactor = exports.LogLevel = void 0;
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
// 1) API principal de creación
|
|
40
|
-
function createLogger(config, source) {
|
|
41
|
-
return factory_1.LoggerFactory.create(config, source);
|
|
42
|
-
}
|
|
36
|
+
exports.LoggerUtils = exports.PiiRedactor = exports.LogLevel = exports.createLogger = void 0;
|
|
37
|
+
var factory_1 = require("./application/factory");
|
|
38
|
+
Object.defineProperty(exports, "createLogger", { enumerable: true, get: function () { return factory_1.createLogger; } });
|
|
43
39
|
// 3) Tipos de dominio útiles
|
|
44
40
|
var value_objects_1 = require("./domain/value-objects");
|
|
45
41
|
Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function () { return value_objects_1.LogLevel; } });
|