sdg
Version:
pomelo ts
45 lines • 3.55 kB
JavaScript
;
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==