UNPKG

@63pokupki/nodejs-common

Version:
86 lines 2.82 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.MattermostSys = void 0; const axios_1 = __importDefault(require("axios")); /** Класс для работы с MatterMost'ом */ class MattermostSys { constructor(ctx) { this.ctx = ctx; this.errorSys = ctx.sys.errorSys; } /** * общий метод для отправки сообщения * @param msg * @param hook_url */ send(sUrl, msg) { axios_1.default.post(sUrl, msg); } /** * Отправить сообщение по мониторингу RabbitMQ * @param sTitle - Заголово сообщения * @param sMsg - Сообщение */ sendMsg(sUrl, sTitle, sMsg) { const msg = { attachments: [ { fallback: 'test', color: 'info', text: `:boom: :trollface: ${sTitle}`, title: `Мониторинг на ${this.ctx.common.env}`, fields: [ { short: true, title: sTitle, value: sMsg, }, ], }, ], }; this.send(sUrl, msg); } /** * Отправить сообщение об ошибке в чат errors * @param errorSys * @param err * @param addMessage */ sendMsgList(sUrl, aMsgList) { const msg = { attachments: [ { fallback: 'test', color: 'danger', text: `:boom: :trollface: ApiKey:${this.ctx.sys.apikey} - ID:${this.ctx.sys.userSys.idUser}`, title: `Ошибка на ${this.ctx.common.env}`, fields: [], }, ], }; try { for (let i = 0; i < aMsgList.length; i++) { const v = aMsgList[i]; if (i < 20) { // Максимум 20 ошибок msg.attachments[0].fields.push({ short: true, title: v.title, value: v.value, }); } } } catch (e) { this.errorSys.errorEx(e, 'error_format', 'Некоректный формат ошибок с фронта'); } if (this.errorSys.isOk()) { this.send(sUrl, msg); } } } exports.MattermostSys = MattermostSys; //# sourceMappingURL=MattermostSys.js.map