UNPKG

sdg

Version:

pomelo ts

45 lines 3.55 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MonitorWatcher = void 0; const tslib_1 = require("tslib"); const lodash_1 = tslib_1.__importDefault(require("lodash")); const sdg_admin_1 = require("sdg-admin"); const index_1 = require("../index"); const Constants = tslib_1.__importStar(require("../util/constants")); const masterWatcher_1 = require("./masterWatcher"); class MonitorWatcher { constructor(opts, consoleService) { this.app = opts.app; this.service = consoleService; this.service.on(sdg_admin_1.ESocketEvent.REGISTER, this.onRegister.bind(this)); this.service.on('close', () => this.app.restore()); } /** * 服务器上/下线 * @param agent * @param msg */ async monitorHandler(agent, msg) { this.app.logger.warn('on server change', msg); if (msg.type === index_1.EServerAction.ONLINE) { this.app.addServers([msg.serverInfo]); } else { this.app.removeServers([msg.serverInfo.id]); } this.app.logger.warn('after server change', this.app.getServers()); } /** * 连上master鉴权后,处理逻辑 */ async onRegister() { const servers = await this.service.agent.doSend({ moduleId: masterWatcher_1.MasterWatcher.moduleId }); this.app.addServers(lodash_1.default.values(servers)); this.app.logger.warn('onlineServers', { ids: this.app.getServerIds() }); } } exports.MonitorWatcher = MonitorWatcher; MonitorWatcher.moduleId = Constants.KEYWORDS.MONITOR_WATCHER; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uaXRvcldhdGNoZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kdWxlcy9tb25pdG9yV2F0Y2hlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNERBQXVCO0FBQ3ZCLHlDQUFnRjtBQUVoRixvQ0FBK0Q7QUFDL0QscUVBQStDO0FBQy9DLG1EQUFnRDtBQUVoRCxNQUFhLGNBQWM7SUFNekIsWUFBWSxJQUEwQixFQUFFLGNBQThCO1FBQ3BFLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLGNBQWMsQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyx3QkFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsY0FBYyxDQUFDLEtBQW1CLEVBQUUsR0FBWTtRQUMzRCxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDOUMsSUFBSSxHQUFHLENBQUMsSUFBSSxLQUFLLHFCQUFhLENBQUMsTUFBTSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7U0FDdkM7YUFBTTtZQUNMLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQzdDO1FBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQ7O09BRUc7SUFDSyxLQUFLLENBQUMsVUFBVTtRQUN0QixNQUFNLE9BQU8sR0FBRyxNQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBc0IsQ0FBQyxNQUFNLENBQUM7WUFDaEUsUUFBUSxFQUFFLDZCQUFhLENBQUMsUUFBUTtTQUNqQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxnQkFBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDMUUsQ0FBQzs7QUF0Q0gsd0NBdUNDO0FBbkNlLHVCQUFRLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMifQ==