Nodejs 开源个自用服务监控,然后使用云函数下发模板消息通知的小脚本

发布于 1周前 作者 zlyuanteng 来自 nodejs/Nestjs

Nodejs 开源个自用服务监控,然后使用云函数下发模板消息通知的小脚本

限制比较多,首先你需要一个认证过的服务号和一个已上线的小程序。

没做工程化,纯能跑就行。

https://github.com/iKeepLearn/nodeScript

1 回复

当然,这里有一个简单的Node.js项目结构示例,用于服务监控和通过云函数下发模板消息通知。

项目结构

/my-service-monitor
  ├── index.js
  ├── package.json
  └── cloud-function/
      ├── index.js
      └── package.json

步骤

  1. 创建index.js进行服务监控
const axios = require('axios');
const cloudFunction = require('./cloud-function');

setInterval(async () => {
  try {
    const response = await axios.get('http://your-service-url/health');
    if (response.status !== 200) {
      await cloudFunction.sendAlert('Service is down!');
    }
  } catch (error) {
    await cloudFunction.sendAlert('Service check failed: ' + error.message);
  }
}, 60000); // 每分钟检查一次
  1. 创建cloud-function/index.js用于发送模板消息
const axios = require('axios');

exports.sendAlert = async (message) => {
  const cloudFunctionUrl = 'https://your-cloud-function-url';
  const data = {
    message: message,
    template: 'ALERT_TEMPLATE_ID',
    // 其他参数
  };
  await axios.post(cloudFunctionUrl, data);
};
  1. 安装依赖
npm install axios
cd cloud-function
npm init -y
npm install axios
  1. 配置云函数

确保云函数能够接收POST请求,并处理消息发送逻辑。具体实现依赖于你使用的云服务提供商(如AWS Lambda, Azure Functions, 腾讯云函数等)。

这个示例展示了基本的框架,你可以根据实际需求进行调整和扩展。

回到顶部