From 4aadffd8bcffa7dc0ba170414e78b020aa08b633 Mon Sep 17 00:00:00 2001 From: "Matt R. Wilson" Date: Tue, 5 Mar 2019 20:35:03 -0700 Subject: [PATCH] [express-bunyan-logger] Update Options. The options are passed through to bunyan.createLogger so all those options need to be valid. A `Partial` is used because the only required option by `createLogger` is `name` but the middleware provides a default. --- .../express-bunyan-logger/express-bunyan-logger-tests.ts | 9 +++++++++ types/express-bunyan-logger/index.d.ts | 4 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/types/express-bunyan-logger/express-bunyan-logger-tests.ts b/types/express-bunyan-logger/express-bunyan-logger-tests.ts index daac949c0e..564f27d020 100644 --- a/types/express-bunyan-logger/express-bunyan-logger-tests.ts +++ b/types/express-bunyan-logger/express-bunyan-logger-tests.ts @@ -22,3 +22,12 @@ const logger = Bunyan.createLogger({ const middleware5 = expressBunyan({ logger }); + +expressBunyan({ + format: () => "some format", + genReqId: req => req.header("foo") || "other", + name: "foo_app", + parseUA: false, + serializers: Bunyan.stdSerializers, + streams: [{ level: 'info', stream: process.stdout }] +}); diff --git a/types/express-bunyan-logger/index.d.ts b/types/express-bunyan-logger/index.d.ts index 6697a26a20..45e3544a3d 100644 --- a/types/express-bunyan-logger/index.d.ts +++ b/types/express-bunyan-logger/index.d.ts @@ -1,6 +1,7 @@ // Type definitions for express-bunyan-logger 1.3 // Project: https://github.com/villadora/express-bunyan-logger // Definitions by: Shrey Jain +// Matt R. Wilson // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 @@ -17,7 +18,7 @@ declare namespace Factory { type RequestIdGenFunction = (req: express.Request) => string; type LevelFunction = (status: number, err: Error | null, meta: any) => string; - interface Options { + interface Options extends Partial { logger?: Bunyan; format?: string | FormatFunction; parseUA?: boolean; @@ -26,7 +27,6 @@ declare namespace Factory { excludes?: string[]; obfuscate?: string[]; obfuscatePlaceholder?: string; - serializers?: { [field: string]: Bunyan.Serializer }; immediate?: boolean; genReqId?: RequestIdGenFunction; }