UNPKG

@voicenter-team/mysql-dynamic-cluster

Version:

Galera cluster with implementation of dynamic choose mysql server for queries, caching, hashing it and metrics

35 lines 1.87 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.LOGLEVEL = exports.createPoolCluster = void 0; const GaleraCluster_1 = require("./src/cluster/GaleraCluster"); const LoggerInterfaces_1 = require("./src/types/LoggerInterfaces"); Object.defineProperty(exports, "LOGLEVEL", { enumerable: true, get: function () { return LoggerInterfaces_1.LOGLEVEL; } }); const Logger_1 = __importDefault(require("./src/utils/Logger")); const Settings_1 = require("./src/utils/Settings"); const Redis_1 = __importDefault(require("./src/Redis/Redis")); const Metrics_1 = __importDefault(require("./src/metrics/Metrics")); const configs_1 = __importDefault(require("./src/configs")); const ioredis_1 = require("ioredis"); function createPoolCluster(userSettings) { userSettings = Settings_1.Settings.mixSettings(userSettings); let redisInstant = userSettings.redisInstant; delete userSettings.redisInstant; configs_1.default.load(userSettings).validate; init(redisInstant); return new GaleraCluster_1.GaleraCluster(); } exports.createPoolCluster = createPoolCluster; function init(redisInstant) { var _a; Logger_1.default.init(); Metrics_1.default.init(configs_1.default.get('clusterName'), configs_1.default.get('showMetricKeys')); // tslint:disable-next-line:no-bitwise if (redisInstant instanceof ioredis_1.Cluster || ((_a = redisInstant === null || redisInstant === void 0 ? void 0 : redisInstant.constructor) === null || _a === void 0 ? void 0 : _a.name) === 'Redis') { Redis_1.default.init(redisInstant, configs_1.default.get('clusterName'), configs_1.default.get('redis')); } Logger_1.default.info("Initialized app"); } //# sourceMappingURL=index.js.map