nestjs-eureka
Version:
A NestJS module that integrate eureka-js-client
45 lines (44 loc) • 1.72 kB
TypeScript
import { EurekaClient } from 'eureka-js-client';
import { ServiceDefinition } from './service.definition';
export interface EurekaModuleClientLogger {
warn(...args: any[]): void;
info(...args: any[]): void;
debug(...args: any[]): void;
error(...args: any[]): void;
}
export interface EurekaInstanceConfigExtra {
app?: string;
hostName?: string;
ipAddr?: string;
vipAddress?: string;
dataCenterInfo?: EurekaClient.DataCenterInfo;
port?: number | EurekaClient.PortWrapper | EurekaClient.LegacyPortWrapper | undefined;
instanceId?: string | undefined;
appGroupName?: string | undefined;
sid?: string | undefined;
securePort?: number | EurekaClient.PortWrapper | EurekaClient.LegacyPortWrapper | undefined;
homePageUrl?: string | undefined;
statusPageUrl?: string | undefined;
healthCheckUrl?: string | undefined;
secureHealthCheckUrl?: string | undefined;
secureVipAddress?: string | undefined;
countryId?: number | undefined;
status?: EurekaClient.InstanceStatus | undefined;
overriddenstatus?: EurekaClient.InstanceStatus | undefined;
leaseInfo?: EurekaClient.LeaseInfo | undefined;
isCoordinatingDiscoveryServer?: boolean | undefined;
lastUpdatedTimestamp?: number | undefined;
lastDirtyTimestamp?: number | undefined;
actionType?: EurekaClient.ActionType | undefined;
metadata?: {
[index: string]: string;
} | undefined;
}
export interface EurekaModuleOptions {
eureka?: EurekaClient.EurekaClientConfig;
instanceExtra?: EurekaInstanceConfigExtra;
service?: ServiceDefinition;
disableDiscovery?: boolean;
disable?: boolean;
clientLogger?: EurekaModuleClientLogger;
}