@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 class LoggerFactory {
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.LoggerFactory = void 0;
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
- class LoggerFactory {
17
- static create(config, source = "app-logger") {
18
- // 1) Normalizar config
19
- const minLevel = config.minLevel ?? value_objects_1.LogLevel.INFO;
20
- const datasources = Array.isArray(config.datasources)
21
- ? config.datasources
22
- : [config.datasources];
23
- // 2) Componer datasource (si hay varios) con DataSourceService
24
- const ds = datasources.length === 1
25
- ? datasources[0]
26
- : new services_1.DataSourceService(datasources);
27
- // 3) Crear/usar redactor de PII
28
- const redactor = config.redactor ?? new pii_redactor_service_1.PiiRedactor(config.redactorOptions);
29
- // 4) Construir casos de uso de Application
30
- const saveLogUseCase = new use_cases_1.SaveLogUseCase({
31
- ds,
32
- minLevel,
33
- redactor,
34
- });
35
- const getLogsUseCase = new use_cases_1.GetLogsUseCase(ds);
36
- const flushBuffersUseCase = new use_cases_1.FlushBuffersUseCase(ds);
37
- // 5) Construir facade de servicio de logging
38
- const service = {
39
- // Método genérico de logging
40
- async log(level, message, meta) {
41
- await saveLogUseCase.execute("app-logger", level, message, meta);
42
- },
43
- // Helpers por nivel
44
- trace(message, meta) {
45
- return saveLogUseCase.execute(source, value_objects_1.LogLevel.TRACE, message, meta);
46
- },
47
- debug(message, meta) {
48
- return saveLogUseCase.execute(source, value_objects_1.LogLevel.DEBUG, message, meta);
49
- },
50
- info(message, meta) {
51
- return saveLogUseCase.execute(source, value_objects_1.LogLevel.INFO, message, meta);
52
- },
53
- warn(message, meta) {
54
- return saveLogUseCase.execute(source, value_objects_1.LogLevel.WARN, message, meta);
55
- },
56
- error(message, meta) {
57
- return saveLogUseCase.execute(source, value_objects_1.LogLevel.ERROR, message, meta);
58
- },
59
- fatal(message, meta) {
60
- return saveLogUseCase.execute(source, value_objects_1.LogLevel.FATAL, message, meta);
61
- },
62
- // Lectura de logs con filtros
63
- async getLogs(filter) {
64
- return getLogsUseCase.execute(filter);
65
- },
66
- // Flush explícito (si el datasource lo soporta)
67
- async flush() {
68
- await flushBuffersUseCase.execute();
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 declare function createLogger(config: import("./domain/ports").ILoggerFactoryConfig, source?: string): import("./domain/ports").ILogger;
2
- export type { ILogger, ILoggerFactoryConfig, ILogDatasource, IPiiRedactor, } from "./domain/ports";
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
- exports.createLogger = createLogger;
38
- const factory_1 = require("./application/factory");
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; } });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@jmlq/logger",
3
3
  "description": "logger package with clean architecture",
4
- "version": "0.1.0-alpha.18",
4
+ "version": "0.1.0-alpha.19",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "scripts": {