Skip to content

Commit 902178b

Browse files
clean
1 parent b3df934 commit 902178b

2 files changed

Lines changed: 12 additions & 15 deletions

File tree

packages/server/shared/src/lib/logger/log-cleaner.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ const SENSITIVE_FIELDS = [
2424
'passphrase',
2525
];
2626

27+
const SENSITIVE_FIELD_PATTERNS = SENSITIVE_FIELDS.map(
28+
(field) => new RegExp(`"${field}"\\s*:\\s*"[^"]*"`, 'gi'),
29+
);
30+
2731
const isSensitiveField = (key: string): boolean => {
2832
return SENSITIVE_FIELDS.includes(key.toLowerCase());
2933
};
@@ -67,9 +71,9 @@ const redactSensitiveDataInString = (
6771
return value;
6872
}
6973
let result = value;
70-
SENSITIVE_FIELDS.forEach((field) => {
74+
SENSITIVE_FIELDS.forEach((field, index) => {
7175
result = result.replace(
72-
new RegExp(`"${field}"\\s*:\\s*"[^"]*"`, 'gi'),
76+
SENSITIVE_FIELD_PATTERNS[index],
7377
`"${field}":"${REDACTED}"`,
7478
);
7579
});
@@ -173,9 +177,5 @@ function extractErrorFields(
173177
}
174178

175179
function stringify(value: any) {
176-
try {
177-
return truncate(JSON.stringify(value));
178-
} catch (error) {
179-
return `Logger error - could not stringify object. ${error}`;
180-
}
180+
return truncate(JSON.stringify(value));
181181
}

packages/server/shared/test/log-cleaner.test.ts

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -129,10 +129,7 @@ describe('log-cleaner', () => {
129129

130130
expect(result).toEqual({
131131
event: {
132-
circularObject:
133-
'Logger error - could not stringify object. TypeError: Converting circular structure to JSON\n' +
134-
" --> starting at object with constructor 'Object'\n" +
135-
" --- property 'circular' closes the circle",
132+
circularObject: '{"key":"value","circular":"[Circular]"}',
136133
},
137134
});
138135
});
@@ -337,8 +334,8 @@ describe('log-cleaner', () => {
337334

338335
const result = cleanLogEvent(logEvent);
339336

340-
expect(result.event.errorContext).toMatch(
341-
/^Logger error - could not stringify object\./,
337+
expect(result.event.errorContext).toBe(
338+
'{"key":"value","circular":{"key":"value","circular":"[Circular]"}}',
342339
);
343340
});
344341

@@ -361,8 +358,8 @@ describe('log-cleaner', () => {
361358

362359
const result = cleanLogEvent(logEvent);
363360

364-
expect(result.event.errorParams).toMatch(
365-
/^Logger error - could not stringify object\./,
361+
expect(result.event.errorParams).toBe(
362+
'{"message":"test","data":{"circular":"[Circular]"}}',
366363
);
367364
});
368365

0 commit comments

Comments
 (0)