UNPKG

@lskjs/bots-plugin-notify

Version:

LSK.js plugin for @lskjs/bots module for telegram, slack, discord, whatsapp, twitter, instagram and vk bots creation

66 lines (58 loc) 2.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.alertmanager = alertmanager; exports["default"] = void 0; var statuses = { firing: '🔥', warn: '❕', resolved: '✅', "default": '❓' }; var getStatus = function getStatus() { var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, status = _ref.status, severity = _ref.severity; return (severity === 'warn' ? statuses[status] : statuses[status]) || statuses["default"]; }; // const alertLog = ({ status, labels: { severity, alertname, instance }, annotations: { grafana, description } }) => (`\ // ${getStatus(status)} ${severity}: \`${alertname}\` // ${instance} // \`\`\` // ${description} // \`\`\` // ${grafana ? `\n[grafana](${grafana})` : ''}\ // `); var alertLog = function alertLog(_ref2, bot) { var status = _ref2.status, _ref2$labels = _ref2.labels, severity = _ref2$labels.severity, alertname = _ref2$labels.alertname, instance = _ref2$labels.instance, _ref2$annotations = _ref2.annotations, grafana = _ref2$annotations.grafana, description = _ref2$annotations.description; var formatStatus = getStatus({ status: status, severity: severity }); var formatCode = bot.formatCode(alertname); var formatDescription = bot.ignoreMd(description); var formatLink = grafana ? "\n".concat(bot.formatLink('grafana', grafana)) : ''; return " ".concat(formatStatus, " ").concat(formatCode, "\n \n ").concat(formatDescription, "\n \n ").concat(formatLink, " "); }; var alertsLog = function alertsLog(_ref3, bot) { var alerts = _ref3.alerts; return alerts.map(function (alert) { return alertLog(alert, bot); }).join('\n\n------\n\n'); }; function alertmanager(message, bot) { if (this !== null && this !== void 0 && this.debug) this.log.trace('alertmanager.message', message); return { msg: alertsLog(message.meta, bot) }; } var _default = alertmanager; exports["default"] = _default; //# sourceMappingURL=AlertmanagerProvider.js.map