CPU 负载高 (100%)
未捕获的异常导致崩溃
仅依靠用户投诉导致问题识别延迟
增加出现问题后解决问题的停机时间
停机会扰乱用户体验并损害我们的声誉。
被动的故障排除方法效率低下,并会导致进一步的停机。
缺乏API行为监控阻碍了主动的问题检测和预防措施。
实施一个系统,针对生产服务器问题主动向指定的 Slack 通道发送警报,包括:
CPU 使用率高
服务器崩溃
API 错误
实时了解 API 行为,以便在潜在问题导致停机之前识别并解决它们。
对生产服务器问题实现更快的反应时间,最大限度地减少停机时间并改善用户体验。
使用 Slack Bot 警报可以解决这个问题
这里我做了一个全局函数用于松弛警报
const axios = require("axios");
exports.responseInClientSlack = async (body) => {
try {
return await axios.post(process.env.SLACK_URL, body);
} catch (error) {
console.log(error);
}
};
定义此全局函数后,您可以在 Node JS 项目中使用
我在全局错误处理函数中有这个 这是此代码的示例
responseInClientSlack({
attachments: [
{
title: `error`,
text: `\n\nstatusCode: ${err?.status} \n\nMessage : ${err?.message}\n\n stack: ${err?.stack} \n\n user:${req?.user?.id}`,
color: "#FF0000",
},
],
});
要在 slack 内设置 webhook 并获取 SLACK_URL,您可以选择此 YouTube 视频 https://www.youtube.com/watch?v=sxtC40gUS2A