From e1bc35c34ebe0d19a040bcdd1d65ba6baaead4e2 Mon Sep 17 00:00:00 2001 From: TANAKA Koichi Date: Thu, 10 Mar 2016 18:27:34 +0900 Subject: [PATCH] winston: allow a specific TransportOptions as 2nd arg of logger.add and winston.add --- winston/winston-tests.ts | 2 ++ winston/winston.d.ts | 18 ++++++++++-------- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/winston/winston-tests.ts b/winston/winston-tests.ts index 5251811d06..34fc19875d 100644 --- a/winston/winston-tests.ts +++ b/winston/winston-tests.ts @@ -99,6 +99,7 @@ winston.query((err: Error, results: any): void => { logger = winston.add(transport, transportOptions); logger = winston.remove(transport); +logger = winston.add(transport, {filename: 'path/to/file.log'}); winston.clear(); logger = winston.profile(str, str, metadata, (err: Error, level: string, msg: string, meta: any):void => { @@ -150,6 +151,7 @@ logger.handleExceptions(transport); logger.unhandleExceptions(transport); logger = logger.add(transport, transportOptions, bool); logger = logger.add(transport); +logger = logger.add(transport, {filename: 'path/to/file.log'}); logger.clear(); logger = logger.remove(transport); diff --git a/winston/winston.d.ts b/winston/winston.d.ts index a4fc77bb79..df0288d095 100644 --- a/winston/winston.d.ts +++ b/winston/winston.d.ts @@ -155,7 +155,9 @@ declare module "winston" { Webhook: WebhookTransportInstance; } - export interface TransportOptions { + export type TransportOptions = ConsoleTransportOptions|DailyRotateFileTransportOptions|FileTransportOptions|HttpTransportOptions|MemoryTransportOptions|WebhookTransportOptions|WinstonModuleTransportOptions; + + export interface GenericTransportOptions { level?: string; silent?: boolean; raw?: boolean; @@ -188,12 +190,12 @@ declare module "winston" { path?: string; } - export interface ConsoleTransportOptions extends TransportOptions, GenericTextTransportOptions { + export interface ConsoleTransportOptions extends GenericTransportOptions, GenericTextTransportOptions { logstash?: boolean; debugStdout?: boolean; } - export interface DailyRotateFileTransportOptions extends TransportOptions, GenericTextTransportOptions { + export interface DailyRotateFileTransportOptions extends GenericTransportOptions, GenericTextTransportOptions { logstash?: boolean; maxsize?: number; maxFiles?: number; @@ -209,7 +211,7 @@ declare module "winston" { stream?: NodeJS.WritableStream; } - export interface FileTransportOptions extends TransportOptions, GenericTextTransportOptions { + export interface FileTransportOptions extends GenericTransportOptions, GenericTextTransportOptions { logstash?: boolean; maxsize?: number; rotationFormat?: boolean; @@ -227,14 +229,14 @@ declare module "winston" { stream?: NodeJS.WritableStream; } - export interface HttpTransportOptions extends TransportOptions, GenericNetworkTransportOptions { + export interface HttpTransportOptions extends GenericTransportOptions, GenericNetworkTransportOptions { ssl?: boolean; } - export interface MemoryTransportOptions extends TransportOptions, GenericTextTransportOptions { + export interface MemoryTransportOptions extends GenericTransportOptions, GenericTextTransportOptions { } - export interface WebhookTransportOptions extends TransportOptions, GenericNetworkTransportOptions { + export interface WebhookTransportOptions extends GenericTransportOptions, GenericNetworkTransportOptions { method?: string; ssl?: { key?: any; @@ -243,7 +245,7 @@ declare module "winston" { }; } - export interface WinstonModuleTransportOptions extends TransportOptions { + export interface WinstonModuleTransportOptions extends GenericTransportOptions { [optionName: string]: any; }