elasticsearch/dist/elasticlog.classes.elasticlog.d.ts

38 lines
1.1 KiB
TypeScript

export declare type Environment = "local" | "test" | "staging" | "production";
import { Client as ElasticClient } from "elasticsearch";
import { LogScheduler } from "./elasticlog.classes.logscheduler";
export interface LogContext {
zone?: string;
containerName?: string;
environment: Environment;
}
export declare type TLogSeverity = "log" | "info" | "warn" | "error" | "fatal";
export interface IStandardLogParams {
message: string;
severity: string;
}
export interface IElasticLogConstructorOptions {
port: number;
domain: string;
ssl: boolean;
user?: string;
pass?: string;
logContext: LogContext;
}
export declare class ElasticLog<T> {
client: ElasticClient;
logContext: LogContext;
logScheduler: LogScheduler;
/**
* sets up an instance of Elastic log
* @param optionsArg
*/
constructor(optionsArg: IElasticLogConstructorOptions);
/**
* computes the host string from the constructor options
* @param optionsArg
*/
private computeHostString(optionsArg);
log(logObject: IStandardLogParams, scheduleOverwrite?: boolean): Promise<void>;
}