pandora
Version:
A powerful and lightweight application manager for Node.js applications powered by TypeScript.
139 lines • 4.37 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const path_1 = require("path");
const os_1 = require("os");
const { DefaultEnvironment } = require('pandora-env');
const { ErrorEndPoint, HealthEndPoint, InfoEndPoint, ProcessEndPoint, MetricsEndPoint, TraceEndPoint, DaemonEndPoint, ErrorResource, MetricsResource, HealthResource, TraceResource, InfoResource, ProcessResource, DaemonResource, FileMetricManagerReporter, MetricsClient, MetricsServerManager, CompactMetricsCollector, NormalMetricsCollector, } = require('pandora-metrics');
const { LoggerService } = require('pandora-service-logger');
const hooks = require('pandora-hook');
exports.default = {
environment: DefaultEnvironment,
procfile(pandora) {
const globalConfig = require('./universal/GlobalConfigProcessor')
.GlobalConfigProcessor.getInstance().getAllProperties();
pandora.defaultServiceCategory('worker');
pandora.environment(globalConfig.environment);
pandora.process('agent')
.scale(1)
.env({ agent: 'true' });
pandora.process('worker')
.scale(pandora.dev ? 1 : 'auto')
.env({ worker: 'true' });
pandora.process('background')
.scale(1)
.env({ background: 'true' });
pandora.service('logger', LoggerService)
.name('logger')
.process('weak-all');
},
logger: {
logsDir: path_1.join(os_1.homedir(), 'logs'),
appLogger: {
stdoutLevel: 'NONE',
level: 'INFO'
},
daemonLogger: {
stdoutLevel: 'ERROR',
level: 'INFO',
},
isolatedServiceLogger: false
},
metricsManager: MetricsServerManager,
metricsClient: MetricsClient,
actuator: {
http: {
enabled: true,
port: 7002,
},
endPoint: {
daemon: {
enabled: true,
target: DaemonEndPoint,
resource: DaemonResource,
},
error: {
enabled: true,
target: ErrorEndPoint,
resource: ErrorResource,
initConfig: {
cacheSize: 100
}
},
health: {
enabled: true,
target: HealthEndPoint,
resource: HealthResource,
initConfig: {
port: {
enabled: true,
checkUrl: `http://127.1:6001`
},
disk_space: {
enabled: true,
rate: 80,
}
}
},
info: {
enabled: true,
target: InfoEndPoint,
resource: InfoResource,
},
process: {
enabled: true,
target: ProcessEndPoint,
resource: ProcessResource,
},
metrics: {
enabled: true,
target: MetricsEndPoint,
resource: MetricsResource,
initConfig: {
collector: NormalMetricsCollector
}
},
trace: {
enabled: true,
target: TraceEndPoint,
resource: TraceResource,
initConfig: {
cacheSize: 1000,
rate: 10
}
}
},
},
hook: {
global: {
enabled: true,
target: hooks.GlobalPatcher
},
eggLogger: {
enabled: true,
target: hooks.EggLoggerPatcher,
},
urllib: {
enabled: true,
target: hooks.UrllibPatcher
},
bluebird: {
enabled: true,
target: hooks.BluebirdPatcher
},
http: {
enabled: true,
target: hooks.HttpPatcher
}
},
reporter: {
file: {
enabled: true,
target: FileMetricManagerReporter,
interval: 5,
initConfig: {
collector: CompactMetricsCollector
}
}
}
};
//# sourceMappingURL=default.js.map