UNPKG

winston-seq2

Version:
50 lines (49 loc) 1.63 kB
/// <reference types="winston" /> /** Imports */ import { TransportInstance, Transport } from 'winston'; import { ISeqLevels } from './seq-logging'; /** Interfaces */ export declare type IWinstonLogMeta = any; export declare type IWinstonLogCallback = (err?: any, res?: any) => void; export interface ISeqOption { serverUrl?: string; apiKey?: string; maxBatchingTime?: number; eventSizeLimit?: number; batchSizeLimit?: number; levelMapper?(level: string): ISeqLevels; } export interface ISeqTransportInstance extends TransportInstance { new (options?: ISeqOption): ISeqTransportInstance; } declare module 'winston' { interface Transports { Seq: ISeqTransportInstance; } } export declare class Seq extends Transport implements ISeqTransportInstance { readonly name: string; serverUrl?: string; apiKey?: string; maxBatchingTime?: number; eventSizeLimit?: number; batchSizeLimit?: number; levelMapper: (level: string) => ISeqLevels; private _seq; constructor(options?: ISeqOption); log(level: string, msg: string, meta: IWinstonLogMeta, callback: IWinstonLogCallback): void; connect(): Promise<void>; close(): Promise<boolean>; flush(): Promise<boolean>; private _isError(obj?); private _isPrimitive(obj); private _levelMapper(level?); private _formatMeta(meta); private _getErrorStach(err, id); private _formatProperty(prop, errors); private _formatError(err, id); private _formatDate(date); private _formatFunction(fn); private _formatArray(arr, errors); private _formatBuffer(buffer); }