@aifabrix/miso-client 4.6.0 → 4.6.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/CHANGELOG.md +27 -0
- package/dist/services/logger/log-entry-builder.d.ts +34 -0
- package/dist/services/logger/log-entry-builder.d.ts.map +1 -0
- package/dist/services/logger/log-entry-builder.js +132 -0
- package/dist/services/logger/log-entry-builder.js.map +1 -0
- package/dist/services/logger/logger-context.d.ts.map +1 -1
- package/dist/services/logger/logger-context.js +37 -18
- package/dist/services/logger/logger-context.js.map +1 -1
- package/dist/services/logger/logger.service.d.ts +0 -9
- package/dist/services/logger/logger.service.d.ts.map +1 -1
- package/dist/services/logger/logger.service.js +5 -95
- package/dist/services/logger/logger.service.js.map +1 -1
- package/dist/services/logger/trace-field-utils.d.ts +13 -0
- package/dist/services/logger/trace-field-utils.d.ts.map +1 -0
- package/dist/services/logger/trace-field-utils.js +34 -0
- package/dist/services/logger/trace-field-utils.js.map +1 -0
- package/dist/services/logger/unified-logger.service.d.ts +5 -0
- package/dist/services/logger/unified-logger.service.d.ts.map +1 -1
- package/dist/services/logger/unified-logger.service.js +34 -4
- package/dist/services/logger/unified-logger.service.js.map +1 -1
- package/package.json +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,33 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [4.6.1] - 2026-03-04
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **Deterministic trace-field normalization utilities** - Added shared logger trace helpers and centralized log entry builder modules.
|
|
13
|
+
- New `trace-field-utils.ts` for first-non-empty resolution.
|
|
14
|
+
- New `log-entry-builder.ts` to consolidate log entry construction and enriched context serialization.
|
|
15
|
+
- **Production safety marker gate** - Added `check:forbidden-markers` script and scanner utility to prevent temporary debug/trace markers from shipping in production code paths.
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
|
|
19
|
+
- **Logger serialization hardening** - Unified precedence and non-empty clobber protection for key trace fields across logger paths.
|
|
20
|
+
- `applicationId`, `correlationId`, `requestId`, `userId`, `application`, and `environment` now follow centralized resolution behavior.
|
|
21
|
+
- Empty or whitespace context values no longer overwrite resolved non-empty trace values.
|
|
22
|
+
- **Unified logger parity** - `UnifiedLoggerService` now forwards traceability context to underlying logger methods for consistent behavior with direct, chain, and request-bound logging flows.
|
|
23
|
+
- **Audit/logging documentation** - Added production-safety check guidance and marker-gate usage in `docs/audit-and-logging.md`.
|
|
24
|
+
|
|
25
|
+
### Fixed
|
|
26
|
+
|
|
27
|
+
- **Traceability regression coverage** - Added/expanded regression tests to verify serialized payload preservation of `applicationId` and path parity in audit/general/error flows.
|
|
28
|
+
- **Context merge edge cases** - Added explicit test coverage for null/empty clobber scenarios and nested context preservation in audit payloads.
|
|
29
|
+
|
|
30
|
+
### Technical
|
|
31
|
+
|
|
32
|
+
- **Validation hardening** - Revalidated formatting/lint/tests and marker gate in release preparation pipeline.
|
|
33
|
+
- **Plan and validation artifacts** - Updated implementation/validation plans for SDK-only scope and release readiness.
|
|
34
|
+
|
|
8
35
|
## [4.6.0] - 2026-02-27
|
|
9
36
|
|
|
10
37
|
### Added
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { LogEntry } from "../../types/config.types";
|
|
2
|
+
import { ApplicationContextService } from "../application-context.service";
|
|
3
|
+
import { LoggerContextStorage } from "./logger-context-storage";
|
|
4
|
+
import { extractEnvironmentMetadata, extractJwtContext } from "./logger-context";
|
|
5
|
+
export interface BuildLogEntryParams {
|
|
6
|
+
level: LogEntry["level"];
|
|
7
|
+
message: string;
|
|
8
|
+
maskedContext: Record<string, unknown> | undefined;
|
|
9
|
+
stackTrace: string | undefined;
|
|
10
|
+
options: {
|
|
11
|
+
sourceKey?: string;
|
|
12
|
+
sourceDisplayName?: string;
|
|
13
|
+
externalSystemKey?: string;
|
|
14
|
+
externalSystemDisplayName?: string;
|
|
15
|
+
recordKey?: string;
|
|
16
|
+
recordDisplayName?: string;
|
|
17
|
+
credentialId?: string;
|
|
18
|
+
credentialType?: string;
|
|
19
|
+
responseSize?: number;
|
|
20
|
+
durationMs?: number;
|
|
21
|
+
errorCategory?: string;
|
|
22
|
+
httpStatusCategory?: string;
|
|
23
|
+
} | undefined;
|
|
24
|
+
jwtContext: ReturnType<typeof extractJwtContext>;
|
|
25
|
+
metadata: ReturnType<typeof extractEnvironmentMetadata>;
|
|
26
|
+
appContext: ReturnType<ApplicationContextService["getApplicationContext"]>;
|
|
27
|
+
loggerContext: ReturnType<LoggerContextStorage["getContext"]> | null;
|
|
28
|
+
correlationId: string;
|
|
29
|
+
clientId: string;
|
|
30
|
+
}
|
|
31
|
+
export declare function resolveCorrelationId(context: Record<string, unknown> | undefined, loggerCorrelationId: string | undefined, generateCorrelationId: () => string): string;
|
|
32
|
+
export declare function buildLogEntryFromParams(params: BuildLogEntryParams): LogEntry;
|
|
33
|
+
export declare function buildEnrichedLogContext(logEntry: LogEntry): Record<string, unknown>;
|
|
34
|
+
//# sourceMappingURL=log-entry-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log-entry-builder.d.ts","sourceRoot":"","sources":["../../../src/services/logger/log-entry-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IACnD,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,OAAO,EACH;QACE,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,yBAAyB,CAAC,EAAE,MAAM,CAAC;QACnC,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,GACD,SAAS,CAAC;IACd,UAAU,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IACjD,QAAQ,EAAE,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;IACxD,UAAU,EAAE,UAAU,CAAC,yBAAyB,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAC3E,aAAa,EAAE,UAAU,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC,GAAG,IAAI,CAAC;IACrE,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC5C,mBAAmB,EAAE,MAAM,GAAG,SAAS,EACvC,qBAAqB,EAAE,MAAM,MAAM,GAClC,MAAM,CAKR;AAsDD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,mBAAmB,GAAG,QAAQ,CAkC7E;AA2FD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAWnF"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveCorrelationId = resolveCorrelationId;
|
|
4
|
+
exports.buildLogEntryFromParams = buildLogEntryFromParams;
|
|
5
|
+
exports.buildEnrichedLogContext = buildEnrichedLogContext;
|
|
6
|
+
const trace_field_utils_1 = require("./trace-field-utils");
|
|
7
|
+
function resolveCorrelationId(context, loggerCorrelationId, generateCorrelationId) {
|
|
8
|
+
return ((0, trace_field_utils_1.pickFirstNonEmpty)(context?.correlationId, loggerCorrelationId) ||
|
|
9
|
+
generateCorrelationId());
|
|
10
|
+
}
|
|
11
|
+
function resolvePrimaryTraceFields(params) {
|
|
12
|
+
const environment = (0, trace_field_utils_1.pickFirstNonEmpty)(params.maskedContext?.environment, params.appContext.environment, "unknown") || "unknown";
|
|
13
|
+
const application = (0, trace_field_utils_1.pickFirstNonEmpty)(params.maskedContext?.application, params.appContext.application, params.clientId) || params.clientId;
|
|
14
|
+
const requestId = (0, trace_field_utils_1.pickFirstNonEmpty)(params.maskedContext?.requestId, params.loggerContext?.requestId);
|
|
15
|
+
const userId = (0, trace_field_utils_1.pickFirstNonEmpty)(params.maskedContext?.userId, params.loggerContext?.userId, params.jwtContext.userId);
|
|
16
|
+
const sessionId = (0, trace_field_utils_1.pickFirstNonEmpty)(params.maskedContext?.sessionId, params.loggerContext?.sessionId, params.jwtContext.sessionId);
|
|
17
|
+
const applicationId = (0, trace_field_utils_1.pickFirstNonEmpty)(params.maskedContext?.applicationId, params.loggerContext?.applicationId, params.appContext.applicationId, params.jwtContext.applicationId) || "";
|
|
18
|
+
return {
|
|
19
|
+
environment,
|
|
20
|
+
application,
|
|
21
|
+
applicationId,
|
|
22
|
+
requestId,
|
|
23
|
+
userId,
|
|
24
|
+
sessionId,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
function buildLogEntryFromParams(params) {
|
|
28
|
+
const primaryTraceFields = resolvePrimaryTraceFields(params);
|
|
29
|
+
return {
|
|
30
|
+
timestamp: new Date().toISOString(),
|
|
31
|
+
level: params.level,
|
|
32
|
+
environment: primaryTraceFields.environment,
|
|
33
|
+
application: primaryTraceFields.application,
|
|
34
|
+
applicationId: primaryTraceFields.applicationId,
|
|
35
|
+
message: params.message,
|
|
36
|
+
context: params.maskedContext,
|
|
37
|
+
stackTrace: params.stackTrace,
|
|
38
|
+
correlationId: params.correlationId,
|
|
39
|
+
userId: primaryTraceFields.userId,
|
|
40
|
+
sessionId: primaryTraceFields.sessionId,
|
|
41
|
+
requestId: primaryTraceFields.requestId,
|
|
42
|
+
ipAddress: params.loggerContext?.ipAddress || params.metadata.ipAddress,
|
|
43
|
+
userAgent: params.loggerContext?.userAgent || params.metadata.userAgent,
|
|
44
|
+
referer: params.loggerContext?.referer,
|
|
45
|
+
...params.metadata,
|
|
46
|
+
sourceKey: params.options?.sourceKey,
|
|
47
|
+
sourceDisplayName: params.options?.sourceDisplayName,
|
|
48
|
+
externalSystemKey: params.options?.externalSystemKey,
|
|
49
|
+
externalSystemDisplayName: params.options?.externalSystemDisplayName,
|
|
50
|
+
recordKey: params.options?.recordKey,
|
|
51
|
+
recordDisplayName: params.options?.recordDisplayName,
|
|
52
|
+
credentialId: params.options?.credentialId,
|
|
53
|
+
credentialType: params.options?.credentialType,
|
|
54
|
+
requestSize: params.loggerContext?.requestSize,
|
|
55
|
+
responseSize: params.options?.responseSize,
|
|
56
|
+
durationMs: params.options?.durationMs,
|
|
57
|
+
errorCategory: params.options?.errorCategory,
|
|
58
|
+
httpStatusCategory: params.options?.httpStatusCategory,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
function createBaseEnrichedContext(logEntry, rawContext) {
|
|
62
|
+
return {
|
|
63
|
+
...rawContext,
|
|
64
|
+
userId: logEntry.userId,
|
|
65
|
+
sessionId: logEntry.sessionId,
|
|
66
|
+
requestId: logEntry.requestId,
|
|
67
|
+
ipAddress: logEntry.ipAddress,
|
|
68
|
+
userAgent: logEntry.userAgent,
|
|
69
|
+
referer: logEntry.referer,
|
|
70
|
+
hostname: logEntry.hostname,
|
|
71
|
+
applicationId: logEntry.applicationId,
|
|
72
|
+
sourceKey: logEntry.sourceKey,
|
|
73
|
+
sourceDisplayName: logEntry.sourceDisplayName,
|
|
74
|
+
externalSystemKey: logEntry.externalSystemKey,
|
|
75
|
+
externalSystemDisplayName: logEntry.externalSystemDisplayName,
|
|
76
|
+
recordKey: logEntry.recordKey,
|
|
77
|
+
recordDisplayName: logEntry.recordDisplayName,
|
|
78
|
+
credentialId: logEntry.credentialId,
|
|
79
|
+
credentialType: logEntry.credentialType,
|
|
80
|
+
requestSize: logEntry.requestSize,
|
|
81
|
+
responseSize: logEntry.responseSize,
|
|
82
|
+
durationMs: logEntry.durationMs,
|
|
83
|
+
errorCategory: logEntry.errorCategory,
|
|
84
|
+
httpStatusCategory: logEntry.httpStatusCategory,
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
function applyTraceOverrides(logEntry, rawContext, enrichedContext) {
|
|
88
|
+
const contextApplicationId = (0, trace_field_utils_1.pickFirstNonEmpty)(rawContext.applicationId);
|
|
89
|
+
const resolvedApplicationId = (0, trace_field_utils_1.pickFirstNonEmpty)(logEntry.applicationId, contextApplicationId) ||
|
|
90
|
+
logEntry.applicationId;
|
|
91
|
+
if (resolvedApplicationId !== undefined) {
|
|
92
|
+
enrichedContext.applicationId = resolvedApplicationId;
|
|
93
|
+
}
|
|
94
|
+
const resolvedUserId = (0, trace_field_utils_1.pickFirstNonEmpty)(logEntry.userId, rawContext.userId);
|
|
95
|
+
if (resolvedUserId) {
|
|
96
|
+
enrichedContext.userId = resolvedUserId;
|
|
97
|
+
}
|
|
98
|
+
const resolvedRequestId = (0, trace_field_utils_1.pickFirstNonEmpty)(logEntry.requestId, rawContext.requestId);
|
|
99
|
+
if (resolvedRequestId) {
|
|
100
|
+
enrichedContext.requestId = resolvedRequestId;
|
|
101
|
+
}
|
|
102
|
+
const resolvedCorrelationId = (0, trace_field_utils_1.pickFirstNonEmpty)(logEntry.correlationId, rawContext.correlationId);
|
|
103
|
+
if (resolvedCorrelationId) {
|
|
104
|
+
enrichedContext.correlationId = resolvedCorrelationId;
|
|
105
|
+
}
|
|
106
|
+
const resolvedApplication = (0, trace_field_utils_1.pickFirstNonEmpty)(logEntry.application, rawContext.application);
|
|
107
|
+
if (resolvedApplication) {
|
|
108
|
+
enrichedContext.application = resolvedApplication;
|
|
109
|
+
}
|
|
110
|
+
const resolvedEnvironment = (0, trace_field_utils_1.pickFirstNonEmpty)(logEntry.environment, rawContext.environment);
|
|
111
|
+
if (resolvedEnvironment) {
|
|
112
|
+
enrichedContext.environment = resolvedEnvironment;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
function removeUndefinedFields(context) {
|
|
116
|
+
Object.keys(context).forEach((key) => {
|
|
117
|
+
if (context[key] === undefined) {
|
|
118
|
+
delete context[key];
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
function buildEnrichedLogContext(logEntry) {
|
|
123
|
+
const rawContext = logEntry.context || {};
|
|
124
|
+
const enrichedContext = createBaseEnrichedContext(logEntry, rawContext);
|
|
125
|
+
applyTraceOverrides(logEntry, rawContext, enrichedContext);
|
|
126
|
+
removeUndefinedFields(enrichedContext);
|
|
127
|
+
if (logEntry.stackTrace) {
|
|
128
|
+
enrichedContext.stackTrace = logEntry.stackTrace;
|
|
129
|
+
}
|
|
130
|
+
return enrichedContext;
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=log-entry-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log-entry-builder.js","sourceRoot":"","sources":["../../../src/services/logger/log-entry-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger-context.d.ts","sourceRoot":"","sources":["../../../src/services/logger/logger-context.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"logger-context.d.ts","sourceRoot":"","sources":["../../../src/services/logger/logger-context.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAG3E;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB,CA0BA;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,IAAI,OAAO,CAAC,QAAQ,CAAC,CAuB9D;AAED,MAAM,WAAW,wBAAwB;IACvC,yBAAyB,EAAE,yBAAyB,CAAC;IACrD,qBAAqB,EAAE,MAAM,MAAM,CAAC;IACpC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAyDD;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,YAAS,EACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC5C,OAAO,EAAE,wBAAwB,GAChC,QAAQ,CA4CV;AAED,MAAM,WAAW,qBAAqB;IACpC,yBAAyB,EAAE,yBAAyB,CAAC;IACrD,qBAAqB,EAAE,MAAM,MAAM,CAAC;IACpC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,YAAS,EACjC,OAAO,EAAE,qBAAqB,GAC7B,QAAQ,CAqCV"}
|
|
@@ -14,6 +14,7 @@ exports.getWithContext = getWithContext;
|
|
|
14
14
|
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
|
15
15
|
const data_masker_1 = require("../../utils/data-masker");
|
|
16
16
|
const request_context_1 = require("../../utils/request-context");
|
|
17
|
+
const trace_field_utils_1 = require("./trace-field-utils");
|
|
17
18
|
/**
|
|
18
19
|
* Extract JWT token information
|
|
19
20
|
* @param token - JWT token string
|
|
@@ -63,6 +64,21 @@ function extractEnvironmentMetadata() {
|
|
|
63
64
|
}
|
|
64
65
|
return metadata;
|
|
65
66
|
}
|
|
67
|
+
function maskLogContext(context, maskSensitiveData) {
|
|
68
|
+
if (!maskSensitiveData || !context) {
|
|
69
|
+
return context;
|
|
70
|
+
}
|
|
71
|
+
return data_masker_1.DataMasker.maskSensitiveData(context);
|
|
72
|
+
}
|
|
73
|
+
function resolveRequestTraceFields(input) {
|
|
74
|
+
return {
|
|
75
|
+
applicationId: (0, trace_field_utils_1.pickFirstNonEmpty)(input.context?.applicationId, input.appContext.applicationId, input.jwtContext.applicationId) || "",
|
|
76
|
+
application: (0, trace_field_utils_1.pickFirstNonEmpty)(input.context?.application, input.appContext.application, input.clientId) || "",
|
|
77
|
+
environment: (0, trace_field_utils_1.pickFirstNonEmpty)(input.context?.environment, input.appContext.environment, "unknown") || "unknown",
|
|
78
|
+
requestId: (0, trace_field_utils_1.pickFirstNonEmpty)(input.context?.requestId, input.requestContext.requestId),
|
|
79
|
+
userId: (0, trace_field_utils_1.pickFirstNonEmpty)(input.context?.userId, input.requestContext.userId, input.jwtContext.userId),
|
|
80
|
+
};
|
|
81
|
+
}
|
|
66
82
|
/**
|
|
67
83
|
* Get LogEntry object with request context extracted
|
|
68
84
|
* Extracts IP, method, path, userAgent, correlationId, userId from Express Request
|
|
@@ -81,28 +97,28 @@ function getLogWithRequest(req, message, level = "info", context, options) {
|
|
|
81
97
|
const jwtContext = extractJwtContext(req.headers.authorization?.replace("Bearer ", ""));
|
|
82
98
|
const metadata = extractEnvironmentMetadata();
|
|
83
99
|
const appContext = applicationContextService.getApplicationContext();
|
|
84
|
-
const correlationId = requestContext.correlationId ||
|
|
85
|
-
|
|
86
|
-
const maskedContext = maskSensitiveData
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}
|
|
100
|
+
const correlationId = (0, trace_field_utils_1.pickFirstNonEmpty)(context?.correlationId, requestContext.correlationId) ||
|
|
101
|
+
generateCorrelationId();
|
|
102
|
+
const maskedContext = maskLogContext(context, maskSensitiveData);
|
|
103
|
+
const traceFields = resolveRequestTraceFields({
|
|
104
|
+
context,
|
|
105
|
+
appContext,
|
|
106
|
+
requestContext,
|
|
107
|
+
jwtContext,
|
|
108
|
+
clientId,
|
|
109
|
+
});
|
|
94
110
|
return {
|
|
95
111
|
timestamp: new Date().toISOString(),
|
|
96
112
|
level,
|
|
97
|
-
environment:
|
|
98
|
-
application:
|
|
99
|
-
applicationId,
|
|
113
|
+
environment: traceFields.environment,
|
|
114
|
+
application: traceFields.application,
|
|
115
|
+
applicationId: traceFields.applicationId,
|
|
100
116
|
message,
|
|
101
117
|
context: maskedContext,
|
|
102
118
|
correlationId,
|
|
103
|
-
userId:
|
|
119
|
+
userId: traceFields.userId,
|
|
104
120
|
sessionId: requestContext.sessionId || jwtContext.sessionId,
|
|
105
|
-
requestId:
|
|
121
|
+
requestId: traceFields.requestId,
|
|
106
122
|
ipAddress: requestContext.ipAddress || metadata.ipAddress,
|
|
107
123
|
userAgent: requestContext.userAgent || metadata.userAgent,
|
|
108
124
|
referer: requestContext.referer,
|
|
@@ -135,12 +151,15 @@ function getWithContext(context, message, level = "info", options) {
|
|
|
135
151
|
const maskedContext = maskSensitiveData
|
|
136
152
|
? data_masker_1.DataMasker.maskSensitiveData(context)
|
|
137
153
|
: context;
|
|
154
|
+
const application = (0, trace_field_utils_1.pickFirstNonEmpty)(context.application, appContext.application, clientId) || "";
|
|
155
|
+
const environment = (0, trace_field_utils_1.pickFirstNonEmpty)(context.environment, appContext.environment, "unknown") || "unknown";
|
|
156
|
+
const applicationId = (0, trace_field_utils_1.pickFirstNonEmpty)(context.applicationId, appContext.applicationId) || "";
|
|
138
157
|
return {
|
|
139
158
|
timestamp: new Date().toISOString(),
|
|
140
159
|
level,
|
|
141
|
-
environment
|
|
142
|
-
application
|
|
143
|
-
applicationId
|
|
160
|
+
environment,
|
|
161
|
+
application,
|
|
162
|
+
applicationId,
|
|
144
163
|
message,
|
|
145
164
|
context: maskedContext,
|
|
146
165
|
correlationId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger-context.js","sourceRoot":"","sources":["../../../src/services/logger/logger-context.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;
|
|
1
|
+
{"version":3,"file":"logger-context.js","sourceRoot":"","sources":["../../../src/services/logger/logger-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -89,19 +89,10 @@ export declare class LoggerService extends EventEmitter {
|
|
|
89
89
|
* Mask sensitive data in log context if enabled.
|
|
90
90
|
*/
|
|
91
91
|
private maskContext;
|
|
92
|
-
/**
|
|
93
|
-
* Build LogEntry from inputs and context.
|
|
94
|
-
*/
|
|
95
|
-
private buildLogEntry;
|
|
96
|
-
/**
|
|
97
|
-
* Resolve applicationId from options, app context, or JWT context.
|
|
98
|
-
*/
|
|
99
|
-
private resolveApplicationId;
|
|
100
92
|
private sendToRedis;
|
|
101
93
|
private isCircuitOpen;
|
|
102
94
|
private mapLogType;
|
|
103
95
|
private assertNever;
|
|
104
|
-
private buildEnrichedContext;
|
|
105
96
|
private sendToHttp;
|
|
106
97
|
/** Method chaining with context */
|
|
107
98
|
withContext(context: Record<string, unknown>): LoggerChain;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.service.d.ts","sourceRoot":"","sources":["../../../src/services/logger/logger.service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"logger.service.d.ts","sourceRoot":"","sources":["../../../src/services/logger/logger.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,7 @@ const logger_context_storage_1 = require("./logger-context-storage");
|
|
|
13
13
|
const logger_context_1 = require("./logger-context");
|
|
14
14
|
const logger_http_utils_1 = require("./logger-http-utils");
|
|
15
15
|
const log_level_policy_1 = require("./log-level-policy");
|
|
16
|
+
const log_entry_builder_1 = require("./log-entry-builder");
|
|
16
17
|
class LoggerService extends events_1.EventEmitter {
|
|
17
18
|
constructor(httpClient, redis) {
|
|
18
19
|
super(); // Initialize EventEmitter
|
|
@@ -127,10 +128,10 @@ class LoggerService extends events_1.EventEmitter {
|
|
|
127
128
|
? (0, logger_context_1.extractJwtContext)(loggerContext.token)
|
|
128
129
|
: {};
|
|
129
130
|
const metadata = (0, logger_context_1.extractEnvironmentMetadata)();
|
|
130
|
-
const correlationId = loggerContext.correlationId
|
|
131
|
+
const correlationId = (0, log_entry_builder_1.resolveCorrelationId)(context, loggerContext.correlationId, () => this.generateCorrelationId());
|
|
131
132
|
const maskedContext = this.maskContext(context, options);
|
|
132
133
|
const appContext = this.applicationContextService.getApplicationContext();
|
|
133
|
-
const logEntry =
|
|
134
|
+
const logEntry = (0, log_entry_builder_1.buildLogEntryFromParams)({
|
|
134
135
|
level,
|
|
135
136
|
message,
|
|
136
137
|
maskedContext,
|
|
@@ -141,6 +142,7 @@ class LoggerService extends events_1.EventEmitter {
|
|
|
141
142
|
appContext,
|
|
142
143
|
loggerContext,
|
|
143
144
|
correlationId,
|
|
145
|
+
clientId: this.httpClient.config.clientId,
|
|
144
146
|
});
|
|
145
147
|
if (this.httpClient.config.emitEvents) {
|
|
146
148
|
this.emit("log", logEntry);
|
|
@@ -168,63 +170,6 @@ class LoggerService extends events_1.EventEmitter {
|
|
|
168
170
|
}
|
|
169
171
|
return data_masker_1.DataMasker.maskSensitiveData(context);
|
|
170
172
|
}
|
|
171
|
-
/**
|
|
172
|
-
* Build LogEntry from inputs and context.
|
|
173
|
-
*/
|
|
174
|
-
buildLogEntry(params) {
|
|
175
|
-
const p = params;
|
|
176
|
-
const contextEnvironment = typeof p.maskedContext?.environment === "string"
|
|
177
|
-
? p.maskedContext.environment
|
|
178
|
-
: undefined;
|
|
179
|
-
const contextApplication = typeof p.maskedContext?.application === "string"
|
|
180
|
-
? p.maskedContext.application
|
|
181
|
-
: undefined;
|
|
182
|
-
const applicationId = this.resolveApplicationId(p.jwtContext, p.appContext, p.loggerContext);
|
|
183
|
-
return {
|
|
184
|
-
timestamp: new Date().toISOString(),
|
|
185
|
-
level: p.level,
|
|
186
|
-
environment: contextEnvironment || p.appContext.environment || "unknown",
|
|
187
|
-
application: contextApplication ||
|
|
188
|
-
p.appContext.application ||
|
|
189
|
-
this.httpClient.config.clientId,
|
|
190
|
-
applicationId,
|
|
191
|
-
message: p.message,
|
|
192
|
-
context: p.maskedContext,
|
|
193
|
-
stackTrace: p.stackTrace,
|
|
194
|
-
correlationId: p.correlationId,
|
|
195
|
-
userId: p.loggerContext?.userId || p.jwtContext.userId,
|
|
196
|
-
sessionId: p.loggerContext?.sessionId || p.jwtContext.sessionId,
|
|
197
|
-
requestId: p.loggerContext?.requestId,
|
|
198
|
-
ipAddress: p.loggerContext?.ipAddress || p.metadata.ipAddress,
|
|
199
|
-
userAgent: p.loggerContext?.userAgent || p.metadata.userAgent,
|
|
200
|
-
referer: p.loggerContext?.referer,
|
|
201
|
-
...p.metadata,
|
|
202
|
-
sourceKey: p.options?.sourceKey,
|
|
203
|
-
sourceDisplayName: p.options?.sourceDisplayName,
|
|
204
|
-
externalSystemKey: p.options?.externalSystemKey,
|
|
205
|
-
externalSystemDisplayName: p.options?.externalSystemDisplayName,
|
|
206
|
-
recordKey: p.options?.recordKey,
|
|
207
|
-
recordDisplayName: p.options?.recordDisplayName,
|
|
208
|
-
credentialId: p.options?.credentialId,
|
|
209
|
-
credentialType: p.options?.credentialType,
|
|
210
|
-
requestSize: p.loggerContext?.requestSize,
|
|
211
|
-
responseSize: p.options?.responseSize,
|
|
212
|
-
durationMs: p.options?.durationMs,
|
|
213
|
-
errorCategory: p.options?.errorCategory,
|
|
214
|
-
httpStatusCategory: p.options?.httpStatusCategory,
|
|
215
|
-
};
|
|
216
|
-
}
|
|
217
|
-
/**
|
|
218
|
-
* Resolve applicationId from options, app context, or JWT context.
|
|
219
|
-
*/
|
|
220
|
-
resolveApplicationId(jwtContext, appContext, loggerContext) {
|
|
221
|
-
if (loggerContext?.applicationId)
|
|
222
|
-
return loggerContext.applicationId;
|
|
223
|
-
if (appContext.applicationId) {
|
|
224
|
-
return appContext.applicationId;
|
|
225
|
-
}
|
|
226
|
-
return jwtContext.applicationId || "";
|
|
227
|
-
}
|
|
228
173
|
async sendToRedis(logEntry) {
|
|
229
174
|
if (!this.redis.isConnected()) {
|
|
230
175
|
return false;
|
|
@@ -262,41 +207,6 @@ class LoggerService extends events_1.EventEmitter {
|
|
|
262
207
|
assertNever(value) {
|
|
263
208
|
throw new Error(`Unhandled log level: ${String(value)}`);
|
|
264
209
|
}
|
|
265
|
-
buildEnrichedContext(logEntry) {
|
|
266
|
-
const enrichedContext = {
|
|
267
|
-
...logEntry.context,
|
|
268
|
-
userId: logEntry.userId,
|
|
269
|
-
sessionId: logEntry.sessionId,
|
|
270
|
-
requestId: logEntry.requestId,
|
|
271
|
-
ipAddress: logEntry.ipAddress,
|
|
272
|
-
userAgent: logEntry.userAgent,
|
|
273
|
-
referer: logEntry.referer,
|
|
274
|
-
hostname: logEntry.hostname,
|
|
275
|
-
applicationId: logEntry.applicationId,
|
|
276
|
-
sourceKey: logEntry.sourceKey,
|
|
277
|
-
sourceDisplayName: logEntry.sourceDisplayName,
|
|
278
|
-
externalSystemKey: logEntry.externalSystemKey,
|
|
279
|
-
externalSystemDisplayName: logEntry.externalSystemDisplayName,
|
|
280
|
-
recordKey: logEntry.recordKey,
|
|
281
|
-
recordDisplayName: logEntry.recordDisplayName,
|
|
282
|
-
credentialId: logEntry.credentialId,
|
|
283
|
-
credentialType: logEntry.credentialType,
|
|
284
|
-
requestSize: logEntry.requestSize,
|
|
285
|
-
responseSize: logEntry.responseSize,
|
|
286
|
-
durationMs: logEntry.durationMs,
|
|
287
|
-
errorCategory: logEntry.errorCategory,
|
|
288
|
-
httpStatusCategory: logEntry.httpStatusCategory,
|
|
289
|
-
};
|
|
290
|
-
Object.keys(enrichedContext).forEach((key) => {
|
|
291
|
-
if (enrichedContext[key] === undefined) {
|
|
292
|
-
delete enrichedContext[key];
|
|
293
|
-
}
|
|
294
|
-
});
|
|
295
|
-
if (logEntry.stackTrace) {
|
|
296
|
-
enrichedContext.stackTrace = logEntry.stackTrace;
|
|
297
|
-
}
|
|
298
|
-
return enrichedContext;
|
|
299
|
-
}
|
|
300
210
|
async sendToHttp(level, logEntry) {
|
|
301
211
|
const now = Date.now();
|
|
302
212
|
try {
|
|
@@ -304,7 +214,7 @@ class LoggerService extends events_1.EventEmitter {
|
|
|
304
214
|
throw new Error("ApiClient not initialized. Call setApiClient() before logging.");
|
|
305
215
|
}
|
|
306
216
|
const { logType, logLevel } = this.mapLogType(level);
|
|
307
|
-
const enrichedContext =
|
|
217
|
+
const enrichedContext = (0, log_entry_builder_1.buildEnrichedLogContext)(logEntry);
|
|
308
218
|
if (level === "audit") {
|
|
309
219
|
await (0, logger_http_utils_1.sendAuditLogPayload)(this.apiClient, logEntry, enrichedContext, logType, logLevel);
|
|
310
220
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.service.js","sourceRoot":"","sources":["../../../src/services/logger/logger.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"logger.service.js","sourceRoot":"","sources":["../../../src/services/logger/logger.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utilities for deterministic trace field resolution.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Normalize unknown value to non-empty string.
|
|
6
|
+
* Empty and whitespace-only strings are treated as missing.
|
|
7
|
+
*/
|
|
8
|
+
export declare function toNonEmptyString(value: unknown): string | undefined;
|
|
9
|
+
/**
|
|
10
|
+
* Pick first non-empty string from candidate list.
|
|
11
|
+
*/
|
|
12
|
+
export declare function pickFirstNonEmpty(...candidates: unknown[]): string | undefined;
|
|
13
|
+
//# sourceMappingURL=trace-field-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace-field-utils.d.ts","sourceRoot":"","sources":["../../../src/services/logger/trace-field-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAWnE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,UAAU,EAAE,OAAO,EAAE,GAAG,MAAM,GAAG,SAAS,CAS9E"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Utilities for deterministic trace field resolution.
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.toNonEmptyString = toNonEmptyString;
|
|
7
|
+
exports.pickFirstNonEmpty = pickFirstNonEmpty;
|
|
8
|
+
/**
|
|
9
|
+
* Normalize unknown value to non-empty string.
|
|
10
|
+
* Empty and whitespace-only strings are treated as missing.
|
|
11
|
+
*/
|
|
12
|
+
function toNonEmptyString(value) {
|
|
13
|
+
if (typeof value !== "string") {
|
|
14
|
+
return undefined;
|
|
15
|
+
}
|
|
16
|
+
const trimmed = value.trim();
|
|
17
|
+
if (!trimmed) {
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
return trimmed;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Pick first non-empty string from candidate list.
|
|
24
|
+
*/
|
|
25
|
+
function pickFirstNonEmpty(...candidates) {
|
|
26
|
+
for (const candidate of candidates) {
|
|
27
|
+
const normalized = toNonEmptyString(candidate);
|
|
28
|
+
if (normalized) {
|
|
29
|
+
return normalized;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return undefined;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=trace-field-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace-field-utils.js","sourceRoot":"","sources":["../../../src/services/logger/trace-field-utils.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAMH,4CAWC;AAKD,8CASC;AA7BD;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,KAAc;IAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAAC,GAAG,UAAqB;IACxD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,UAAU,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,UAAU,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -59,6 +59,11 @@ export declare class UnifiedLoggerService implements UnifiedLogger {
|
|
|
59
59
|
* Extracts all relevant fields from LoggerContext
|
|
60
60
|
*/
|
|
61
61
|
private buildLoggingOptions;
|
|
62
|
+
/**
|
|
63
|
+
* Build traceability context passed to LoggerService methods.
|
|
64
|
+
* Keeps logger paths consistent when context exists in AsyncLocalStorage.
|
|
65
|
+
*/
|
|
66
|
+
private buildTraceContext;
|
|
62
67
|
/**
|
|
63
68
|
* Extract error context from error object
|
|
64
69
|
* Extracts stack trace, error name, and error message
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified-logger.service.d.ts","sourceRoot":"","sources":["../../../src/services/logger/unified-logger.service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAwB,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAiB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"unified-logger.service.d.ts","sourceRoot":"","sources":["../../../src/services/logger/unified-logger.service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAwB,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAiB,MAAM,0BAA0B,CAAC;AAG/E;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErC;;;OAGG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErC;;;OAGG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC;;;;OAIG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvD;;;;;;;OAOG;IACH,KAAK,CACH,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB;AAED;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,aAAa;IAEtD,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,cAAc;gBADd,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,oBAAoB;IAG9C;;;OAGG;IACH,OAAO,CAAC,UAAU;IAIlB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAM3B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAuBzB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAe1C;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc1C;;OAEG;IACG,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3C;;OAEG;IACG,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B5D;;OAEG;IACG,KAAK,CACT,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC;CAyBjB"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.UnifiedLoggerService = void 0;
|
|
9
|
+
const trace_field_utils_1 = require("./trace-field-utils");
|
|
9
10
|
/**
|
|
10
11
|
* Unified Logger Service Implementation
|
|
11
12
|
* Wraps LoggerService with minimal API and automatic context extraction
|
|
@@ -31,6 +32,30 @@ class UnifiedLoggerService {
|
|
|
31
32
|
maskSensitiveData: true, // Default: mask sensitive data
|
|
32
33
|
};
|
|
33
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* Build traceability context passed to LoggerService methods.
|
|
37
|
+
* Keeps logger paths consistent when context exists in AsyncLocalStorage.
|
|
38
|
+
*/
|
|
39
|
+
buildTraceContext(context) {
|
|
40
|
+
const traceContext = {};
|
|
41
|
+
const applicationId = (0, trace_field_utils_1.pickFirstNonEmpty)(context.applicationId);
|
|
42
|
+
const correlationId = (0, trace_field_utils_1.pickFirstNonEmpty)(context.correlationId);
|
|
43
|
+
const requestId = (0, trace_field_utils_1.pickFirstNonEmpty)(context.requestId);
|
|
44
|
+
const userId = (0, trace_field_utils_1.pickFirstNonEmpty)(context.userId);
|
|
45
|
+
if (applicationId) {
|
|
46
|
+
traceContext.applicationId = applicationId;
|
|
47
|
+
}
|
|
48
|
+
if (correlationId) {
|
|
49
|
+
traceContext.correlationId = correlationId;
|
|
50
|
+
}
|
|
51
|
+
if (requestId) {
|
|
52
|
+
traceContext.requestId = requestId;
|
|
53
|
+
}
|
|
54
|
+
if (userId) {
|
|
55
|
+
traceContext.userId = userId;
|
|
56
|
+
}
|
|
57
|
+
return Object.keys(traceContext).length > 0 ? traceContext : undefined;
|
|
58
|
+
}
|
|
34
59
|
/**
|
|
35
60
|
* Extract error context from error object
|
|
36
61
|
* Extracts stack trace, error name, and error message
|
|
@@ -69,7 +94,7 @@ class UnifiedLoggerService {
|
|
|
69
94
|
try {
|
|
70
95
|
const context = this.getContext();
|
|
71
96
|
const options = this.buildLoggingOptions(context);
|
|
72
|
-
await this.loggerService.info(message,
|
|
97
|
+
await this.loggerService.info(message, this.buildTraceContext(context), options);
|
|
73
98
|
}
|
|
74
99
|
catch (error) {
|
|
75
100
|
// Error handling in logger should be silent (catch and swallow)
|
|
@@ -83,7 +108,7 @@ class UnifiedLoggerService {
|
|
|
83
108
|
try {
|
|
84
109
|
const context = this.getContext();
|
|
85
110
|
const options = this.buildLoggingOptions(context);
|
|
86
|
-
await this.loggerService.warn(message,
|
|
111
|
+
await this.loggerService.warn(message, this.buildTraceContext(context), options);
|
|
87
112
|
}
|
|
88
113
|
catch (error) {
|
|
89
114
|
// Error handling in logger should be silent (catch and swallow)
|
|
@@ -96,7 +121,7 @@ class UnifiedLoggerService {
|
|
|
96
121
|
try {
|
|
97
122
|
const context = this.getContext();
|
|
98
123
|
const options = this.buildLoggingOptions(context);
|
|
99
|
-
await this.loggerService.debug(message,
|
|
124
|
+
await this.loggerService.debug(message, this.buildTraceContext(context), options);
|
|
100
125
|
}
|
|
101
126
|
catch (error) {
|
|
102
127
|
// Error handling in logger should be silent (catch and swallow)
|
|
@@ -110,8 +135,11 @@ class UnifiedLoggerService {
|
|
|
110
135
|
const context = this.getContext();
|
|
111
136
|
const options = this.buildLoggingOptions(context);
|
|
112
137
|
const errorContext = this.extractErrorContext(error);
|
|
138
|
+
const traceContext = this.buildTraceContext(context);
|
|
113
139
|
// Build context with error details
|
|
114
|
-
const logContext =
|
|
140
|
+
const logContext = traceContext
|
|
141
|
+
? { ...traceContext }
|
|
142
|
+
: {};
|
|
115
143
|
if (errorContext.errorName) {
|
|
116
144
|
logContext.errorName = errorContext.errorName;
|
|
117
145
|
}
|
|
@@ -131,8 +159,10 @@ class UnifiedLoggerService {
|
|
|
131
159
|
try {
|
|
132
160
|
const context = this.getContext();
|
|
133
161
|
const options = this.buildLoggingOptions(context);
|
|
162
|
+
const traceContext = this.buildTraceContext(context);
|
|
134
163
|
// Build audit context with entityId, oldValues, newValues
|
|
135
164
|
const auditContext = {
|
|
165
|
+
...(traceContext || {}),
|
|
136
166
|
entityId: entityId || "unknown",
|
|
137
167
|
};
|
|
138
168
|
if (oldValues !== undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified-logger.service.js","sourceRoot":"","sources":["../../../src/services/logger/unified-logger.service.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;
|
|
1
|
+
{"version":3,"file":"unified-logger.service.js","sourceRoot":"","sources":["../../../src/services/logger/unified-logger.service.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAIH,2DAAwD;AAiDxD;;;GAGG;AACH,MAAa,oBAAoB;IAC/B,YACU,aAA4B,EAC5B,cAAoC;QADpC,kBAAa,GAAb,aAAa,CAAe;QAC5B,mBAAc,GAAd,cAAc,CAAsB;IAC3C,CAAC;IAEJ;;;OAGG;IACK,UAAU;QAChB,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC;IAChD,CAAC;IAED;;;OAGG;IACK,mBAAmB,CAAC,QAAuB;QACjD,OAAO;YACL,iBAAiB,EAAE,IAAI,EAAE,+BAA+B;SACzD,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,iBAAiB,CAAC,OAAsB;QAC9C,MAAM,YAAY,GAA4B,EAAE,CAAC;QACjD,MAAM,aAAa,GAAG,IAAA,qCAAiB,EAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAG,IAAA,qCAAiB,EAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC/D,MAAM,SAAS,GAAG,IAAA,qCAAiB,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,IAAA,qCAAiB,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEjD,IAAI,aAAa,EAAE,CAAC;YAClB,YAAY,CAAC,aAAa,GAAG,aAAa,CAAC;QAC7C,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YAClB,YAAY,CAAC,aAAa,GAAG,aAAa,CAAC;QAC7C,CAAC;QACD,IAAI,SAAS,EAAE,CAAC;YACd,YAAY,CAAC,SAAS,GAAG,SAAS,CAAC;QACrC,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,CAAC,MAAM,GAAG,MAAM,CAAC;QAC/B,CAAC;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;IACzE,CAAC;IAED;;;OAGG;IACK,mBAAmB,CAAC,KAAe;QAKzC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO;gBACL,UAAU,EAAE,KAAK,CAAC,KAAK;gBACvB,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,YAAY,EAAE,KAAK,CAAC,OAAO;aAC5B,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO;gBACL,YAAY,EAAE,KAAK;aACpB,CAAC;QACJ,CAAC;QAED,6BAA6B;QAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAChD,MAAM,QAAQ,GAAG,KAAgC,CAAC;YAClD,OAAO;gBACL,UAAU,EAAE,QAAQ,CAAC,KAA2B;gBAChD,SAAS,EAAE,QAAQ,CAAC,IAA0B;gBAC9C,YAAY,EAAE,QAAQ,CAAC,OAA6B;aACrD,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,OAAe;QACxB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAC3B,OAAO,EACP,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAC/B,OAAO,CACR,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gEAAgE;YAChE,2BAA2B;QAC7B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,OAAe;QACxB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAC3B,OAAO,EACP,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAC/B,OAAO,CACR,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gEAAgE;QAClE,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,OAAe;QACzB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAC5B,OAAO,EACP,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAC/B,OAAO,CACR,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gEAAgE;QAClE,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,OAAe,EAAE,KAAe;QAC1C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACrD,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAErD,mCAAmC;YACnC,MAAM,UAAU,GAA4B,YAAY;gBACtD,CAAC,CAAC,EAAE,GAAG,YAAY,EAAE;gBACrB,CAAC,CAAC,EAAE,CAAC;YACP,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;gBAC3B,UAAU,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;YAChD,CAAC;YACD,IAAI,YAAY,CAAC,YAAY,EAAE,CAAC;gBAC9B,UAAU,CAAC,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC;YACtD,CAAC;YAED,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAC5B,OAAO,EACP,UAAU,EACV,YAAY,CAAC,UAAU,EACvB,OAAO,CACR,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,gEAAgE;QAClE,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CACT,MAAc,EACd,QAAgB,EAChB,QAAiB,EACjB,SAAkB,EAClB,SAAkB;QAElB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAErD,0DAA0D;YAC1D,MAAM,YAAY,GAA4B;gBAC5C,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;gBACvB,QAAQ,EAAE,QAAQ,IAAI,SAAS;aAChC,CAAC;YAEF,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,YAAY,CAAC,SAAS,GAAG,SAAS,CAAC;YACrC,CAAC;YAED,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,YAAY,CAAC,SAAS,GAAG,SAAS,CAAC;YACrC,CAAC;YAED,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QAC1E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gEAAgE;QAClE,CAAC;IACH,CAAC;CACF;AAjND,oDAiNC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aifabrix/miso-client",
|
|
3
|
-
"version": "4.6.
|
|
3
|
+
"version": "4.6.1",
|
|
4
4
|
"description": "AI Fabrix Client SDK - Authentication, authorization, logging, and Express.js utilities",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -81,6 +81,7 @@
|
|
|
81
81
|
"test:integration:api": "node --unhandled-rejections=warn node_modules/jest/bin/jest.js tests/integration/api-endpoints.integration.test.ts --maxWorkers=50% --testPathIgnorePatterns=/node_modules/ --forceExit",
|
|
82
82
|
"lint": "eslint 'src/**/*.ts' --max-warnings 0 --ignore-pattern '**/*.d.ts'",
|
|
83
83
|
"lint:fix": "eslint 'src/**/*.ts' --fix --ignore-pattern '**/*.d.ts'",
|
|
84
|
+
"check:forbidden-markers": "node scripts/check-forbidden-trace-markers.js",
|
|
84
85
|
"tests:typecheck": "tsc -p tests/tsconfig.json --noEmit",
|
|
85
86
|
"all": "pnpm run lint:fix && pnpm run test && pnpm run test:integration:api && pnpm run test:integration && pnpm run build"
|
|
86
87
|
}
|