diff --git a/spec/logger.spec.ts b/spec/logger.spec.ts index 517f50f1d..c6859b60a 100644 --- a/spec/logger.spec.ts +++ b/spec/logger.spec.ts @@ -65,6 +65,15 @@ describe(`logger (${ }); sandbox.restore(); // to avoid swallowing test runner output }); + + it('should not recognize null as a structured logging object', () => { + logger.log('hello', 'world', null); + expectStdout({ + severity: 'INFO', + message: 'hello world null', + }); + sandbox.restore(); // to avoid swallowing test runner output + }); }); describe('write', () => { diff --git a/src/logger.ts b/src/logger.ts index 4bc851cec..7958ca457 100644 --- a/src/logger.ts +++ b/src/logger.ts @@ -104,7 +104,7 @@ export function error(...args: any[]) { function entryFromArgs(severity: LogSeverity, args: any[]): LogEntry { let entry = {}; const lastArg = args[args.length - 1]; - if (typeof lastArg == 'object' && lastArg.constructor == Object) { + if (lastArg && typeof lastArg == 'object' && lastArg.constructor == Object) { entry = args.pop(); } return Object.assign({}, entry, {