@pristine-ts/logging 0.0.135 → 0.0.139

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.
Files changed (43) hide show
  1. package/dist/lib/cjs/handlers/log.handler.js +25 -3
  2. package/dist/lib/cjs/handlers/log.handler.js.map +1 -1
  3. package/dist/lib/cjs/loggers/base.logger.js +92 -0
  4. package/dist/lib/cjs/loggers/base.logger.js.map +1 -0
  5. package/dist/lib/cjs/loggers/console.logger.js +7 -57
  6. package/dist/lib/cjs/loggers/console.logger.js.map +1 -1
  7. package/dist/lib/cjs/loggers/file.logger.js +17 -50
  8. package/dist/lib/cjs/loggers/file.logger.js.map +1 -1
  9. package/dist/lib/cjs/logging.module.js +11 -1
  10. package/dist/lib/cjs/logging.module.js.map +1 -1
  11. package/dist/lib/cjs/models/diagnostics.model.js +10 -0
  12. package/dist/lib/cjs/models/diagnostics.model.js.map +1 -0
  13. package/dist/lib/cjs/models/log.model.js.map +1 -1
  14. package/dist/lib/cjs/models/models.js +1 -0
  15. package/dist/lib/cjs/models/models.js.map +1 -1
  16. package/dist/lib/cjs/utils/utils.js +30 -7
  17. package/dist/lib/cjs/utils/utils.js.map +1 -1
  18. package/dist/lib/esm/handlers/log.handler.js +27 -5
  19. package/dist/lib/esm/handlers/log.handler.js.map +1 -1
  20. package/dist/lib/esm/loggers/base.logger.js +88 -0
  21. package/dist/lib/esm/loggers/base.logger.js.map +1 -0
  22. package/dist/lib/esm/loggers/console.logger.js +9 -59
  23. package/dist/lib/esm/loggers/console.logger.js.map +1 -1
  24. package/dist/lib/esm/loggers/file.logger.js +19 -52
  25. package/dist/lib/esm/loggers/file.logger.js.map +1 -1
  26. package/dist/lib/esm/logging.module.js +11 -1
  27. package/dist/lib/esm/logging.module.js.map +1 -1
  28. package/dist/lib/esm/models/diagnostics.model.js +6 -0
  29. package/dist/lib/esm/models/diagnostics.model.js.map +1 -0
  30. package/dist/lib/esm/models/log.model.js.map +1 -1
  31. package/dist/lib/esm/models/models.js +1 -0
  32. package/dist/lib/esm/models/models.js.map +1 -1
  33. package/dist/lib/esm/utils/utils.js +30 -7
  34. package/dist/lib/esm/utils/utils.js.map +1 -1
  35. package/dist/types/handlers/log.handler.d.ts +5 -1
  36. package/dist/types/loggers/base.logger.d.ts +25 -0
  37. package/dist/types/loggers/console.logger.d.ts +5 -20
  38. package/dist/types/loggers/file.logger.d.ts +7 -19
  39. package/dist/types/models/diagnostics.model.d.ts +15 -0
  40. package/dist/types/models/log.model.d.ts +2 -0
  41. package/dist/types/models/models.d.ts +1 -0
  42. package/dist/types/utils/utils.d.ts +3 -1
  43. package/package.json +4 -4
@@ -18,9 +18,13 @@ const tsyringe_1 = require("tsyringe");
18
18
  const severity_enum_1 = require("../enums/severity.enum");
19
19
  const log_model_1 = require("../models/log.model");
20
20
  const common_1 = require("@pristine-ts/common");
21
+ const utils_1 = require("../utils/utils");
21
22
  let LogHandler = class LogHandler {
22
- constructor(loggers) {
23
+ constructor(loggers, logSeverityLevelConfiguration, kernelInstantiationId, tracingContext) {
23
24
  this.loggers = loggers;
25
+ this.logSeverityLevelConfiguration = logSeverityLevelConfiguration;
26
+ this.kernelInstantiationId = kernelInstantiationId;
27
+ this.tracingContext = tracingContext;
24
28
  }
25
29
  error(message, extra, module = "application") {
26
30
  return this.log(message, severity_enum_1.SeverityEnum.Error, extra, module);
@@ -39,11 +43,28 @@ let LogHandler = class LogHandler {
39
43
  }
40
44
  log(message, severity = severity_enum_1.SeverityEnum.Error, extra, module = "application") {
41
45
  const log = new log_model_1.LogModel();
46
+ log.traceId = this.tracingContext.traceId;
47
+ log.kernelInstantiationId = this.kernelInstantiationId;
42
48
  log.extra = extra;
43
49
  log.severity = severity;
44
50
  log.message = message;
45
51
  log.module = module;
46
52
  log.date = new Date();
53
+ // If the logSeveritylevel configuration is set to debug, we will include additional information into a __diagnostics path into extra.
54
+ // This is an intensive process and will only be available when in Debug
55
+ if (this.logSeverityLevelConfiguration === severity_enum_1.SeverityEnum.Debug) {
56
+ const diagnostics = utils_1.Utils.getDiagnostics(new Error());
57
+ // Properly define which last stack trace is actually the one we want to report. In this case, it's the stack trace
58
+ // Just before any entries in LogHandler.
59
+ for (const stackTrace of diagnostics.stackTrace) {
60
+ if (stackTrace.className === undefined || stackTrace.className === "" || stackTrace.className.startsWith("LogHandler") || stackTrace.className.startsWith("Array")) {
61
+ continue;
62
+ }
63
+ diagnostics.lastStackTrace = stackTrace;
64
+ break;
65
+ }
66
+ log.extra["__diagnostics"] = diagnostics;
67
+ }
47
68
  for (const writer of this.loggers) {
48
69
  if (writer.isActive()) {
49
70
  writer.readableStream.push(log);
@@ -52,11 +73,12 @@ let LogHandler = class LogHandler {
52
73
  }
53
74
  };
54
75
  LogHandler = __decorate([
55
- tsyringe_1.singleton(),
56
76
  common_1.tag("LogHandlerInterface"),
57
77
  tsyringe_1.injectable(),
58
78
  __param(0, tsyringe_1.injectAll(common_1.ServiceDefinitionTagEnum.Logger)),
59
- __metadata("design:paramtypes", [Array])
79
+ __param(1, tsyringe_1.inject("%pristine.logging.logSeverityLevelConfiguration%")),
80
+ __param(2, tsyringe_1.inject(common_1.InternalContainerParameterEnum.KernelInstantiationId)),
81
+ __metadata("design:paramtypes", [Array, Number, String, common_1.TracingContext])
60
82
  ], LogHandler);
61
83
  exports.LogHandler = LogHandler;
62
84
  //# sourceMappingURL=log.handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"log.handler.js","sourceRoot":"","sources":["../../../../src/handlers/log.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4BAAyB;AACzB,uCAA0D;AAC1D,0DAAoD;AACpD,mDAA6C;AAE7C,gDAAkE;AAMlE,IAAa,UAAU,GAAvB,MAAa,UAAU;IAErB,YAAgF,OAA0B;QAA1B,YAAO,GAAP,OAAO,CAAmB;IAC1G,CAAC;IAEM,KAAK,CAAC,OAAe,EAAE,KAAW,EAAE,SAAiB,aAAa;QACvE,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,4BAAY,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAEM,QAAQ,CAAC,OAAe,EAAE,KAAW,EAAE,SAAiB,aAAa;QAC1E,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,4BAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;IAEM,KAAK,CAAC,OAAe,EAAE,KAAW,EAAE,SAAiB,aAAa;QACvE,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,4BAAY,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAEM,IAAI,CAAC,OAAe,EAAE,KAAW,EAAE,SAAiB,aAAa;QACtE,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,4BAAY,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC7D,CAAC;IAEM,OAAO,CAAC,OAAe,EAAE,KAAW,EAAE,SAAiB,aAAa;QACzE,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,4BAAY,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAChE,CAAC;IAEO,GAAG,CAAC,OAAe,EAAE,WAAyB,4BAAY,CAAC,KAAK,EAAE,KAAW,EAAE,SAAiB,aAAa;QACnH,MAAM,GAAG,GAAG,IAAI,oBAAQ,EAAE,CAAC;QAC3B,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;QAClB,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACxB,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;QACtB,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;QACpB,GAAG,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAEtB,KAAI,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAC;YAC/B,IAAG,MAAM,CAAC,QAAQ,EAAE,EAAE;gBACpB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACjC;SACF;IACH,CAAC;CACF,CAAA;AAvCY,UAAU;IAHtB,oBAAS,EAAE;IACX,YAAG,CAAC,qBAAqB,CAAC;IAC1B,qBAAU,EAAE;IAGS,WAAA,oBAAS,CAAC,iCAAwB,CAAC,MAAM,CAAC,CAAA;;GAFnD,UAAU,CAuCtB;AAvCY,gCAAU"}
1
+ {"version":3,"file":"log.handler.js","sourceRoot":"","sources":["../../../../src/handlers/log.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseLogger = void 0;
4
+ const severity_enum_1 = require("../enums/severity.enum");
5
+ const utils_1 = require("../utils/utils");
6
+ const common_1 = require("@pristine-ts/common");
7
+ const output_mode_enum_1 = require("../enums/output-mode.enum");
8
+ class BaseLogger {
9
+ constructor(numberOfStackedLogs, logSeverityLevelConfiguration, logDebugDepthConfiguration, logInfoDepthConfiguration, logWarningDepthConfiguration, logErrorDepthConfiguration, logCriticalDepthConfiguration, isActivated = true, outputMode = output_mode_enum_1.OutputModeEnum.Json, spaces = 2) {
10
+ this.numberOfStackedLogs = numberOfStackedLogs;
11
+ this.logSeverityLevelConfiguration = logSeverityLevelConfiguration;
12
+ this.logDebugDepthConfiguration = logDebugDepthConfiguration;
13
+ this.logInfoDepthConfiguration = logInfoDepthConfiguration;
14
+ this.logWarningDepthConfiguration = logWarningDepthConfiguration;
15
+ this.logErrorDepthConfiguration = logErrorDepthConfiguration;
16
+ this.logCriticalDepthConfiguration = logCriticalDepthConfiguration;
17
+ this.isActivated = isActivated;
18
+ this.outputMode = outputMode;
19
+ this.spaces = spaces;
20
+ this.stackedLogs = {};
21
+ }
22
+ isActive() {
23
+ return this.isActivated;
24
+ }
25
+ outputLog(log) {
26
+ switch (log.severity) {
27
+ case severity_enum_1.SeverityEnum.Debug:
28
+ return utils_1.Utils.outputLog(log, this.outputMode, this.logDebugDepthConfiguration);
29
+ case severity_enum_1.SeverityEnum.Info:
30
+ return utils_1.Utils.outputLog(log, this.outputMode, this.logInfoDepthConfiguration);
31
+ case severity_enum_1.SeverityEnum.Warning:
32
+ return utils_1.Utils.outputLog(log, this.outputMode, this.logWarningDepthConfiguration);
33
+ case severity_enum_1.SeverityEnum.Error:
34
+ return utils_1.Utils.outputLog(log, this.outputMode, this.logErrorDepthConfiguration);
35
+ case severity_enum_1.SeverityEnum.Critical:
36
+ return utils_1.Utils.outputLog(log, this.outputMode, this.logCriticalDepthConfiguration);
37
+ }
38
+ }
39
+ captureLog(log) {
40
+ this.setupStackedLogsArrayIfRequired(log.traceId);
41
+ if (log.severity < this.logSeverityLevelConfiguration) {
42
+ // We still add a log to the stack to ensure that when there's an error, we log everything.
43
+ this.addStackedLog(log);
44
+ return;
45
+ }
46
+ //todo do we really want to always print the stacked logs ?
47
+ this.outputStackedLogs();
48
+ this.log(log);
49
+ }
50
+ setupStackedLogsArrayIfRequired(traceId) {
51
+ var _a;
52
+ if (this.stackedLogs.hasOwnProperty(common_1.CommonModuleKeyname) === false) {
53
+ this.stackedLogs[common_1.CommonModuleKeyname] = [];
54
+ }
55
+ if (traceId && this.stackedLogs.hasOwnProperty(traceId) === false) {
56
+ this.stackedLogs[traceId] = (_a = this.stackedLogs[common_1.CommonModuleKeyname]) !== null && _a !== void 0 ? _a : [];
57
+ }
58
+ }
59
+ addStackedLog(log) {
60
+ var _a;
61
+ const stackedLogsKey = (_a = log.traceId) !== null && _a !== void 0 ? _a : common_1.CommonModuleKeyname;
62
+ // Push the log at the end of the array
63
+ this.stackedLogs[stackedLogsKey].push(log);
64
+ // If the stacked logs is already at the maximum number of logs, we delete the first log.
65
+ if (this.stackedLogs[stackedLogsKey].length >= this.numberOfStackedLogs) {
66
+ do {
67
+ this.stackedLogs[stackedLogsKey].shift();
68
+ } while (this.stackedLogs[stackedLogsKey].length > this.numberOfStackedLogs);
69
+ }
70
+ }
71
+ outputStackedLogs(traceId) {
72
+ for (const log of this.stackedLogs[common_1.CommonModuleKeyname]) {
73
+ this.log(log);
74
+ }
75
+ if (traceId === undefined || this.stackedLogs.hasOwnProperty(traceId) === false) {
76
+ return;
77
+ }
78
+ for (const log of this.stackedLogs[traceId]) {
79
+ this.log(log);
80
+ }
81
+ this.clearStackedLogs(traceId);
82
+ }
83
+ clearStackedLogs(traceId) {
84
+ this.stackedLogs[common_1.CommonModuleKeyname] = [];
85
+ if (traceId === undefined || this.stackedLogs.hasOwnProperty(traceId) === false) {
86
+ return;
87
+ }
88
+ this.stackedLogs[traceId] = [];
89
+ }
90
+ }
91
+ exports.BaseLogger = BaseLogger;
92
+ //# sourceMappingURL=base.logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.logger.js","sourceRoot":"","sources":["../../../../src/loggers/base.logger.ts"],"names":[],"mappings":"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"}
@@ -16,21 +16,13 @@ exports.ConsoleLogger = void 0;
16
16
  const tsyringe_1 = require("tsyringe");
17
17
  const severity_enum_1 = require("../enums/severity.enum");
18
18
  const stream_1 = require("stream");
19
- const utils_1 = require("../utils/utils");
20
19
  const common_1 = require("@pristine-ts/common");
21
20
  const output_mode_enum_1 = require("../enums/output-mode.enum");
22
- let ConsoleLogger = class ConsoleLogger {
23
- constructor(numberOfStackedLogs, logSeverityLevelConfiguration, logDebugDepthConfiguration, logInfoDepthConfiguration, logWarningDepthConfiguration, logErrorDepthConfiguration, logCriticalDepthConfiguration, consoleLoggerActivated, consoleLoggerOutputMode) {
24
- this.numberOfStackedLogs = numberOfStackedLogs;
25
- this.logSeverityLevelConfiguration = logSeverityLevelConfiguration;
26
- this.logDebugDepthConfiguration = logDebugDepthConfiguration;
27
- this.logInfoDepthConfiguration = logInfoDepthConfiguration;
28
- this.logWarningDepthConfiguration = logWarningDepthConfiguration;
29
- this.logErrorDepthConfiguration = logErrorDepthConfiguration;
30
- this.logCriticalDepthConfiguration = logCriticalDepthConfiguration;
31
- this.consoleLoggerActivated = consoleLoggerActivated;
32
- this.consoleLoggerOutputMode = consoleLoggerOutputMode;
33
- this.stackedLogs = [];
21
+ const logging_module_keyname_1 = require("../logging.module.keyname");
22
+ const base_logger_1 = require("./base.logger");
23
+ let ConsoleLogger = class ConsoleLogger extends base_logger_1.BaseLogger {
24
+ constructor(numberOfStackedLogs, logSeverityLevelConfiguration, logDebugDepthConfiguration, logInfoDepthConfiguration, logWarningDepthConfiguration, logErrorDepthConfiguration, logCriticalDepthConfiguration, isActive, outputMode) {
25
+ super(numberOfStackedLogs, logSeverityLevelConfiguration, logDebugDepthConfiguration, logInfoDepthConfiguration, logWarningDepthConfiguration, logErrorDepthConfiguration, logCriticalDepthConfiguration, isActive, outputMode);
34
26
  this.initialize();
35
27
  }
36
28
  initialize() {
@@ -46,23 +38,6 @@ let ConsoleLogger = class ConsoleLogger {
46
38
  });
47
39
  }
48
40
  }
49
- isActive() {
50
- return this.consoleLoggerActivated;
51
- }
52
- outputLog(log) {
53
- switch (log.severity) {
54
- case severity_enum_1.SeverityEnum.Debug:
55
- return utils_1.Utils.outputLog(log, this.consoleLoggerOutputMode, this.logDebugDepthConfiguration);
56
- case severity_enum_1.SeverityEnum.Info:
57
- return utils_1.Utils.outputLog(log, this.consoleLoggerOutputMode, this.logInfoDepthConfiguration);
58
- case severity_enum_1.SeverityEnum.Warning:
59
- return utils_1.Utils.outputLog(log, this.consoleLoggerOutputMode, this.logWarningDepthConfiguration);
60
- case severity_enum_1.SeverityEnum.Error:
61
- return utils_1.Utils.outputLog(log, this.consoleLoggerOutputMode, this.logErrorDepthConfiguration);
62
- case severity_enum_1.SeverityEnum.Critical:
63
- return utils_1.Utils.outputLog(log, this.consoleLoggerOutputMode, this.logCriticalDepthConfiguration);
64
- }
65
- }
66
41
  log(log) {
67
42
  const outputLog = this.outputLog(log);
68
43
  switch (log.severity) {
@@ -83,35 +58,10 @@ let ConsoleLogger = class ConsoleLogger {
83
58
  break;
84
59
  }
85
60
  }
86
- captureLog(log) {
87
- if (log.severity < this.logSeverityLevelConfiguration) {
88
- // We still add a log to the stack to ensure that when there's an error, we log everything.
89
- this.addStackedLog(log);
90
- return;
91
- }
92
- //todo do we really want to always print the stacked logs ?
93
- this.outputStackedLogs();
94
- this.log(log);
95
- }
96
- addStackedLog(log) {
97
- // Push the log at the end of the array
98
- this.stackedLogs.push(log);
99
- // If the stacked logs is already at the maximum number of logs, we delete the first log.
100
- if (this.stackedLogs.length >= this.numberOfStackedLogs) {
101
- this.stackedLogs.shift();
102
- }
103
- }
104
- outputStackedLogs() {
105
- for (const log of this.stackedLogs) {
106
- this.log(log);
107
- }
108
- this.clearStackedLogs();
109
- }
110
- clearStackedLogs() {
111
- this.stackedLogs = [];
112
- }
113
61
  };
114
62
  ConsoleLogger = __decorate([
63
+ common_1.moduleScoped(logging_module_keyname_1.LoggingModuleKeyname),
64
+ tsyringe_1.singleton(),
115
65
  common_1.tag(common_1.ServiceDefinitionTagEnum.Logger),
116
66
  tsyringe_1.injectable(),
117
67
  __param(0, tsyringe_1.inject("%pristine.logging.numberOfStackedLogs%")),
@@ -1 +1 @@
1
- {"version":3,"file":"console.logger.js","sourceRoot":"","sources":["../../../../src/loggers/console.logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"console.logger.js","sourceRoot":"","sources":["../../../../src/loggers/console.logger.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uCAAwD;AACxD,0DAAoD;AAGpD,mCAAgC;AAGhC,gDAAqG;AACrG,gEAAyD;AAEzD,sEAA+D;AAC/D,+CAAyC;AAMzC,IAAa,aAAa,GAA1B,MAAa,aAAc,SAAQ,wBAAU;IAG3C,YAAqE,mBAA2B,EACjB,6BAAqC,EACxC,0BAAkC,EACnC,yBAAiC,EAC9B,4BAAoC,EACtC,0BAAkC,EAC/B,6BAAqC,EAC5C,QAAiB,EAChB,UAA0B;QAEjG,KAAK,CAAC,mBAAmB,EACrB,6BAA6B,EAC7B,0BAA0B,EAC1B,yBAAyB,EACzB,4BAA4B,EAC5B,0BAA0B,EAC1B,6BAA6B,EAC7B,QAAQ,EACR,UAAU,CAAC,CAAC;QAEhB,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IACS,UAAU;QAClB,IAAG,IAAI,CAAC,QAAQ,EAAE,EAAE;YAClB,IAAI,CAAC,cAAc,GAAG,IAAI,iBAAQ,CAAC;gBACjC,UAAU,EAAE,IAAI;gBAChB,IAAI,CAAC,IAAY;oBACf,OAAO,IAAI,CAAC;gBACd,CAAC;aACF,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE;gBACrC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAES,GAAG,CAAC,GAAa;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAEtC,QAAQ,GAAG,CAAC,QAAQ,EAAE;YACpB,KAAK,4BAAY,CAAC,KAAK;gBACrB,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACzB,MAAM;YAER,KAAK,4BAAY,CAAC,IAAI;gBACpB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxB,MAAM;YAER,KAAK,4BAAY,CAAC,OAAO;gBACvB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxB,MAAM;YAER,KAAK,4BAAY,CAAC,KAAK;gBACrB,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACzB,MAAM;YAER,KAAK,4BAAY,CAAC,QAAQ;gBACxB,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACzB,MAAM;SACT;IACH,CAAC;CACF,CAAA;AAhEY,aAAa;IAJzB,qBAAY,CAAC,6CAAoB,CAAC;IAClC,oBAAS,EAAE;IACX,YAAG,CAAC,iCAAwB,CAAC,MAAM,CAAC;IACpC,qBAAU,EAAE;IAIS,WAAA,iBAAM,CAAC,wCAAwC,CAAC,CAAA;IAChD,WAAA,iBAAM,CAAC,kDAAkD,CAAC,CAAA;IAC1D,WAAA,iBAAM,CAAC,+CAA+C,CAAC,CAAA;IACvD,WAAA,iBAAM,CAAC,8CAA8C,CAAC,CAAA;IACtD,WAAA,iBAAM,CAAC,iDAAiD,CAAC,CAAA;IACzD,WAAA,iBAAM,CAAC,+CAA+C,CAAC,CAAA;IACvD,WAAA,iBAAM,CAAC,kDAAkD,CAAC,CAAA;IAC1D,WAAA,iBAAM,CAAC,2CAA2C,CAAC,CAAA;IACnD,WAAA,iBAAM,CAAC,4CAA4C,CAAC,CAAA;;GAX7D,aAAa,CAgEzB;AAhEY,sCAAa"}
@@ -19,22 +19,15 @@ exports.FileLogger = void 0;
19
19
  const tsyringe_1 = require("tsyringe");
20
20
  const severity_enum_1 = require("../enums/severity.enum");
21
21
  const stream_1 = require("stream");
22
- const utils_1 = require("../utils/utils");
23
22
  const common_1 = require("@pristine-ts/common");
24
23
  const fs_1 = __importDefault(require("fs"));
25
- let FileLogger = class FileLogger {
26
- constructor(numberOfStackedLogs, logSeverityLevelConfiguration, logDebugDepthConfiguration, logInfoDepthConfiguration, logWarningDepthConfiguration, logErrorDepthConfiguration, logCriticalDepthConfiguration, fileLoggerActivated, filePath, fileLoggerPretty) {
27
- this.numberOfStackedLogs = numberOfStackedLogs;
28
- this.logSeverityLevelConfiguration = logSeverityLevelConfiguration;
29
- this.logDebugDepthConfiguration = logDebugDepthConfiguration;
30
- this.logInfoDepthConfiguration = logInfoDepthConfiguration;
31
- this.logWarningDepthConfiguration = logWarningDepthConfiguration;
32
- this.logErrorDepthConfiguration = logErrorDepthConfiguration;
33
- this.logCriticalDepthConfiguration = logCriticalDepthConfiguration;
34
- this.fileLoggerActivated = fileLoggerActivated;
24
+ const logging_module_keyname_1 = require("../logging.module.keyname");
25
+ const output_mode_enum_1 = require("../enums/output-mode.enum");
26
+ const base_logger_1 = require("./base.logger");
27
+ let FileLogger = class FileLogger extends base_logger_1.BaseLogger {
28
+ constructor(numberOfStackedLogs, logSeverityLevelConfiguration, logDebugDepthConfiguration, logInfoDepthConfiguration, logWarningDepthConfiguration, logErrorDepthConfiguration, logCriticalDepthConfiguration, isActive, outputMode, fileLoggerPretty, filePath) {
29
+ super(numberOfStackedLogs, logSeverityLevelConfiguration, logDebugDepthConfiguration, logInfoDepthConfiguration, logWarningDepthConfiguration, logErrorDepthConfiguration, logCriticalDepthConfiguration, isActive, outputMode, fileLoggerPretty ? 2 : 0);
35
30
  this.filePath = filePath;
36
- this.fileLoggerPretty = fileLoggerPretty;
37
- this.stackedLogs = [];
38
31
  this.initialize();
39
32
  }
40
33
  initialize() {
@@ -51,57 +44,30 @@ let FileLogger = class FileLogger {
51
44
  });
52
45
  }
53
46
  }
54
- isActive() {
55
- return this.fileLoggerActivated;
56
- }
57
47
  log(log) {
48
+ const outputLog = this.outputLog(log) + ";\n";
58
49
  switch (log.severity) {
59
50
  case severity_enum_1.SeverityEnum.Debug:
60
- this.writableStream.write(JSON.stringify(utils_1.Utils.truncate(log, this.logDebugDepthConfiguration), null, this.fileLoggerPretty ? 2 : 0) + ";\n");
51
+ this.writableStream.write(outputLog);
61
52
  break;
62
53
  case severity_enum_1.SeverityEnum.Info:
63
- this.writableStream.write(JSON.stringify(utils_1.Utils.truncate(log, this.logInfoDepthConfiguration), null, this.fileLoggerPretty ? 2 : 0) + ";\n");
54
+ this.writableStream.write(outputLog);
64
55
  break;
65
56
  case severity_enum_1.SeverityEnum.Warning:
66
- this.writableStream.write(JSON.stringify(utils_1.Utils.truncate(log, this.logWarningDepthConfiguration), null, this.fileLoggerPretty ? 2 : 0) + ";\n");
57
+ this.writableStream.write(outputLog);
67
58
  break;
68
59
  case severity_enum_1.SeverityEnum.Error:
69
- this.writableStream.write(JSON.stringify(utils_1.Utils.truncate(log, this.logErrorDepthConfiguration), null, this.fileLoggerPretty ? 2 : 0) + ";\n");
60
+ this.writableStream.write(outputLog);
70
61
  break;
71
62
  case severity_enum_1.SeverityEnum.Critical:
72
- this.writableStream.write(JSON.stringify(utils_1.Utils.truncate(log, this.logCriticalDepthConfiguration), null, this.fileLoggerPretty ? 2 : 0) + ";\n");
63
+ this.writableStream.write(outputLog);
73
64
  break;
74
65
  }
75
66
  }
76
- captureLog(log) {
77
- if (log.severity < this.logSeverityLevelConfiguration) {
78
- // We still add a log to the stack to ensure that when there's an error, we log everything.
79
- this.addStackedLog(log);
80
- return;
81
- }
82
- //todo do we really want to always print the stacked logs ?
83
- this.outputStackedLogs();
84
- this.log(log);
85
- }
86
- addStackedLog(log) {
87
- // Push the log at the end of the array
88
- this.stackedLogs.push(log);
89
- // If the stacked logs is already at the maximum number of logs, we delete the first log.
90
- if (this.stackedLogs.length >= this.numberOfStackedLogs) {
91
- this.stackedLogs.shift();
92
- }
93
- }
94
- outputStackedLogs() {
95
- for (const log of this.stackedLogs) {
96
- this.log(log);
97
- }
98
- this.clearStackedLogs();
99
- }
100
- clearStackedLogs() {
101
- this.stackedLogs = [];
102
- }
103
67
  };
104
68
  FileLogger = __decorate([
69
+ common_1.moduleScoped(logging_module_keyname_1.LoggingModuleKeyname),
70
+ tsyringe_1.singleton(),
105
71
  common_1.tag(common_1.ServiceDefinitionTagEnum.Logger),
106
72
  tsyringe_1.injectable(),
107
73
  __param(0, tsyringe_1.inject("%pristine.logging.numberOfStackedLogs%")),
@@ -112,9 +78,10 @@ FileLogger = __decorate([
112
78
  __param(5, tsyringe_1.inject("%pristine.logging.logErrorDepthConfiguration%")),
113
79
  __param(6, tsyringe_1.inject("%pristine.logging.logCriticalDepthConfiguration%")),
114
80
  __param(7, tsyringe_1.inject("%pristine.logging.fileLoggerActivated%")),
115
- __param(8, tsyringe_1.inject("%pristine.logging.filePath%")),
81
+ __param(8, tsyringe_1.inject("%pristine.logging.fileLoggerOutputMode%")),
116
82
  __param(9, tsyringe_1.inject("%pristine.logging.fileLoggerPretty%")),
117
- __metadata("design:paramtypes", [Number, Number, Number, Number, Number, Number, Number, Boolean, String, Boolean])
83
+ __param(10, tsyringe_1.inject("%pristine.logging.filePath%")),
84
+ __metadata("design:paramtypes", [Number, Number, Number, Number, Number, Number, Number, Boolean, String, Boolean, String])
118
85
  ], FileLogger);
119
86
  exports.FileLogger = FileLogger;
120
87
  //# sourceMappingURL=file.logger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file.logger.js","sourceRoot":"","sources":["../../../../src/loggers/file.logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file.logger.js","sourceRoot":"","sources":["../../../../src/loggers/file.logger.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ exports.LoggingModule = void 0;
14
14
  const logging_module_keyname_1 = require("./logging.module.keyname");
15
15
  const configuration_1 = require("@pristine-ts/configuration");
16
16
  const output_mode_enum_1 = require("./enums/output-mode.enum");
17
+ const common_1 = require("@pristine-ts/common");
17
18
  __exportStar(require("./enums/enums"), exports);
18
19
  __exportStar(require("./handlers/handlers"), exports);
19
20
  __exportStar(require("./interfaces/interfaces"), exports);
@@ -34,7 +35,7 @@ exports.LoggingModule = {
34
35
  },
35
36
  {
36
37
  parameterName: logging_module_keyname_1.LoggingModuleKeyname + ".logSeverityLevelConfiguration",
37
- defaultValue: 0,
38
+ defaultValue: 1,
38
39
  isRequired: false,
39
40
  defaultResolvers: [
40
41
  new configuration_1.NumberResolver(new configuration_1.EnvironmentVariableResolver("PRISTINE_LOGGING_LOG_SEVERITY_LEVEL_CONFIGURATION")),
@@ -96,6 +97,14 @@ exports.LoggingModule = {
96
97
  new configuration_1.EnumResolver(new configuration_1.EnvironmentVariableResolver("PRISTINE_LOGGING_CONSOLE_LOGGER_OUTPUT_MODE"), output_mode_enum_1.OutputModeEnum),
97
98
  ]
98
99
  },
100
+ {
101
+ parameterName: logging_module_keyname_1.LoggingModuleKeyname + ".fileLoggerOutputMode",
102
+ defaultValue: output_mode_enum_1.OutputModeEnum.Json,
103
+ isRequired: false,
104
+ defaultResolvers: [
105
+ new configuration_1.EnumResolver(new configuration_1.EnvironmentVariableResolver("PRISTINE_LOGGING_FILE_LOGGER_OUTPUT_MODE"), output_mode_enum_1.OutputModeEnum),
106
+ ]
107
+ },
99
108
  {
100
109
  parameterName: logging_module_keyname_1.LoggingModuleKeyname + ".fileLoggerActivated",
101
110
  defaultValue: false,
@@ -122,6 +131,7 @@ exports.LoggingModule = {
122
131
  },
123
132
  ],
124
133
  importModules: [
134
+ common_1.CommonModule,
125
135
  configuration_1.ConfigurationModule,
126
136
  ],
127
137
  providerRegistrations: []
@@ -1 +1 @@
1
- {"version":3,"file":"logging.module.js","sourceRoot":"","sources":["../../../src/logging.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logging.module.js","sourceRoot":"","sources":["../../../src/logging.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;AACA,qEAA8D;AAC9D,8DAKoC;AACpC,+DAAwD;AACxD,gDAAiD;AAEjD,gDAA8B;AAC9B,sDAAoC;AACpC,0DAAwC;AACxC,kDAAgC;AAChC,oDAAkC;AAClC,gDAA8B;AAC9B,2DAAwC;AAE3B,QAAA,aAAa,GAAoB;IAC1C,OAAO,EAAE,6CAAoB;IAC7B,wBAAwB,EAAE;QACtB;YACI,aAAa,EAAE,6CAAoB,GAAG,sBAAsB;YAC5D,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,EAAE;YAChB,gBAAgB,EAAE;gBACd,IAAI,8BAAc,CAAC,IAAI,2CAA2B,CAAC,yCAAyC,CAAC,CAAC;aACjG;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,gCAAgC;YACtE,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,8BAAc,CAAC,IAAI,2CAA2B,CAAC,mDAAmD,CAAC,CAAC;aAC3G;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,6BAA6B;YACnE,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,8BAAc,CAAC,IAAI,2CAA2B,CAAC,gDAAgD,CAAC,CAAC;aACxG;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,4BAA4B;YAClE,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,8BAAc,CAAC,IAAI,2CAA2B,CAAC,+CAA+C,CAAC,CAAC;aACvG;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,+BAA+B;YACrE,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,8BAAc,CAAC,IAAI,2CAA2B,CAAC,kDAAkD,CAAC,CAAC;aAC1G;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,6BAA6B;YACnE,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,8BAAc,CAAC,IAAI,2CAA2B,CAAC,gDAAgD,CAAC,CAAC;aACxG;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,gCAAgC;YACtE,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,8BAAc,CAAC,IAAI,2CAA2B,CAAC,mDAAmD,CAAC,CAAC;aAC3G;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,yBAAyB;YAC/D,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,2CAA2C,CAAC,CAAC;aACpG;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,0BAA0B;YAChE,YAAY,EAAE,iCAAc,CAAC,IAAI;YACjC,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,4BAAY,CAAC,IAAI,2CAA2B,CAAC,6CAA6C,CAAC,EAAE,iCAAc,CAAC;aACnH;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,uBAAuB;YAC7D,YAAY,EAAE,iCAAc,CAAC,IAAI;YACjC,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,4BAAY,CAAC,IAAI,2CAA2B,CAAC,0CAA0C,CAAC,EAAE,iCAAc,CAAC;aAChH;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,sBAAsB;YAC5D,YAAY,EAAE,KAAK;YACnB,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,wCAAwC,CAAC,CAAC;aACjG;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,WAAW;YACjD,YAAY,EAAE,YAAY;YAC1B,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,4BAA4B,CAAC,CAAC;aACrF;SACJ;QACD;YACI,aAAa,EAAE,6CAAoB,GAAG,mBAAmB;YACzD,YAAY,EAAE,KAAK;YACnB,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,qCAAqC,CAAC,CAAC;aAC9F;SACJ;KACJ;IACD,aAAa,EAAE;QACX,qBAAY;QACZ,mCAAmB;KACtB;IACD,qBAAqB,EAAE,EAAE;CAC5B,CAAA"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DiagnosticsModel = void 0;
4
+ class DiagnosticsModel {
5
+ constructor() {
6
+ this.stackTrace = [];
7
+ }
8
+ }
9
+ exports.DiagnosticsModel = DiagnosticsModel;
10
+ //# sourceMappingURL=diagnostics.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostics.model.js","sourceRoot":"","sources":["../../../../src/models/diagnostics.model.ts"],"names":[],"mappings":";;;AAAA,MAAa,gBAAgB;IAA7B;QAEI,eAAU,GAKJ,EAAE,CAAC;IAOb,CAAC;CAAA;AAdD,4CAcC"}
@@ -1 +1 @@
1
- {"version":3,"file":"log.model.js","sourceRoot":"","sources":["../../../../src/models/log.model.ts"],"names":[],"mappings":";;;AAEA,MAAa,QAAQ;IAArB;QACE,SAAI,GAAS,IAAI,IAAI,EAAE,CAAC;QACxB,WAAM,GAAW,aAAa,CAAC;IAIjC,CAAC;CAAA;AAND,4BAMC"}
1
+ {"version":3,"file":"log.model.js","sourceRoot":"","sources":["../../../../src/models/log.model.ts"],"names":[],"mappings":";;;AAEA,MAAa,QAAQ;IAArB;QAGE,SAAI,GAAS,IAAI,IAAI,EAAE,CAAC;QACxB,WAAM,GAAW,aAAa,CAAC;IAIjC,CAAC;CAAA;AARD,4BAQC"}
@@ -10,5 +10,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./diagnostics.model"), exports);
13
14
  __exportStar(require("./log.model"), exports);
14
15
  //# sourceMappingURL=models.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../src/models/models.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA4B"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../src/models/models.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAoC;AACpC,8CAA4B"}
@@ -7,6 +7,7 @@ exports.Utils = void 0;
7
7
  const output_mode_enum_1 = require("../enums/output-mode.enum");
8
8
  const severity_enum_1 = require("../enums/severity.enum");
9
9
  const format_1 = __importDefault(require("date-fns/format"));
10
+ const diagnostics_model_1 = require("../models/diagnostics.model");
10
11
  class Utils {
11
12
  static isDefined(val) {
12
13
  return val !== null && val !== undefined;
@@ -79,23 +80,45 @@ class Utils {
79
80
  return "CRITICAL";
80
81
  }
81
82
  }
82
- static outputLog(log, outputMode, logDepth) {
83
- const jsonSortOrders = ["severity", "module", "message", "date"];
83
+ static outputLog(log, outputMode, logDepth, spaceNumber = 0) {
84
+ const jsonSortOrders = ["severity", "message", "date", "module", "traceId", "kernelInstantiationId",];
84
85
  switch (outputMode) {
85
86
  case output_mode_enum_1.OutputModeEnum.Json:
86
87
  const truncatedLog = Utils.truncate(log, logDepth);
87
88
  truncatedLog.severity = Utils.getSeverityText(truncatedLog.severity);
88
89
  const truncatedLogKeys = Utils.getDeepKeys(truncatedLog);
89
- delete truncatedLogKeys["severity"];
90
- delete truncatedLogKeys["module"];
91
- delete truncatedLogKeys["message"];
92
- delete truncatedLogKeys["date"];
90
+ jsonSortOrders.forEach(jsonSortOrder => {
91
+ delete truncatedLogKeys[jsonSortOrder];
92
+ });
93
93
  jsonSortOrders.push(...truncatedLogKeys);
94
- return JSON.stringify(truncatedLog, jsonSortOrders);
94
+ return JSON.stringify(truncatedLog, jsonSortOrders, spaceNumber);
95
95
  case output_mode_enum_1.OutputModeEnum.Simple:
96
96
  return format_1.default(log.date, "yyyy-MM-dd HH:mm:ss") + " - " + " [" + this.getSeverityText(log.severity) + "] - " + log.message + " - " + JSON.stringify(Utils.truncate(log.extra, 2));
97
97
  }
98
98
  }
99
+ static getDiagnostics(error) {
100
+ const diagnostics = new diagnostics_model_1.DiagnosticsModel();
101
+ const errorStack = error.stack;
102
+ const regex = new RegExp("at (?:(.+?)\\s+\\()?(?:(.+?):(\\d+)(?::(\\d+))?|([^)]+))\\)?", "g");
103
+ if (errorStack === undefined) {
104
+ return diagnostics;
105
+ }
106
+ let match = regex.exec(errorStack);
107
+ while (match !== null) {
108
+ const stackTrace = {
109
+ className: match[1],
110
+ filename: match[2],
111
+ line: match[3],
112
+ column: match[4],
113
+ };
114
+ diagnostics.stackTrace.push(stackTrace);
115
+ match = regex.exec(errorStack);
116
+ }
117
+ if (diagnostics.lastStackTrace === undefined && diagnostics.stackTrace.length > 0) {
118
+ diagnostics.lastStackTrace = diagnostics.stackTrace[0];
119
+ }
120
+ return diagnostics;
121
+ }
99
122
  }
100
123
  exports.Utils = Utils;
101
124
  Utils.flatTypes = [String, Number, Boolean, Date];