From 39b215bda19e2efded075126f847d5bfb7155f23 Mon Sep 17 00:00:00 2001 From: Antoine LUCAS Date: Thu, 20 Oct 2016 00:51:23 +1100 Subject: [PATCH] - Changed the definition of a Serializer, that returns any instead of string (#12080) - Also add definition for default stDSerialiers (err, res and req) --- bunyan/bunyan-tests.ts | 13 +++++++++++++ bunyan/bunyan.d.ts | 18 ++++++++++++++---- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/bunyan/bunyan-tests.ts b/bunyan/bunyan-tests.ts index 2575f043d8..c44d918d2d 100644 --- a/bunyan/bunyan-tests.ts +++ b/bunyan/bunyan-tests.ts @@ -56,7 +56,20 @@ var options:bunyan.LoggerOptions = { var log = bunyan.createLogger(options); +var customSerializer = function(anything: any) { + return { obj: anything}; +}; + +log.addSerializers({anything: customSerializer}); log.addSerializers(bunyan.stdSerializers); +log.addSerializers( + { + err: bunyan.stdSerializers.err, + req: bunyan.stdSerializers.req, + res: bunyan.stdSerializers.res + } +); + var child = log.child({name: 'child'}); child.reopenFileStreams(); log.addStream({path: '/dev/null'}); diff --git a/bunyan/bunyan.d.ts b/bunyan/bunyan.d.ts index dd569301f5..a4c6c8efc1 100644 --- a/bunyan/bunyan.d.ts +++ b/bunyan/bunyan.d.ts @@ -11,7 +11,7 @@ declare module "bunyan" { class Logger extends EventEmitter { constructor(options:LoggerOptions); addStream(stream:Stream):void; - addSerializers(serializers:Serializers):void; + addSerializers(serializers:Serializers | StdSerializers):void; child(options:LoggerOptions, simple?:boolean):Logger; child(obj:Object, simple?:boolean):Logger; reopenFileStreams():void; @@ -21,7 +21,7 @@ declare module "bunyan" { levels(name: number | string, value: number | string):void; fields:any; - src:boolean; + src:boolean; trace(error:Error, format?:any, ...params:any[]):void; trace(buffer:Buffer, format?:any, ...params:any[]):void; @@ -58,8 +58,18 @@ declare module "bunyan" { src?: boolean; } + interface Serializer { + (input:any): any; + } + interface Serializers { - [key:string]: (input:any) => string; + [key:string]: Serializer; + } + + interface StdSerializers { + err: Serializer; + res: Serializer; + req: Serializer; } interface Stream { @@ -72,7 +82,7 @@ declare module "bunyan" { count?: number; } - export var stdSerializers:Serializers; + export var stdSerializers: StdSerializers; export var TRACE:number; export var DEBUG:number;