一款能够监测告警邮件、采集syslog日志的实时推送至钉钉、企业微信、飞书、短信等的告警推送平台开源软件,含syslog发送测试工具

一款能够监测告警邮件、采集syslog日志的实时推送至钉钉、企业微信、飞书、短信等的告警推送平台开源软件,含syslog发送测试工具

一个功能完整的syslog日志接收和告警推送系统,支持钉钉、企业微信、飞书和阿里云短信等多种告警方式。

功能特性

  • 🔍 实时日志监控: 接收并显示syslog日志
  • 🚨 智能告警推送: 基于关键词匹配自动发送告警
  • 📱 多平台支持: 支持钉钉、企业微信、飞书群机器人和阿里云短信
  • 📊 统计分析: 实时统计接收日志数、告警发送成功/失败数量
  • 🎛️ Web管理界面: 现代化的Web界面管理系统
  • 🧪 测试功能: 内置告警测试功能
  • ⚙️ 灵活配置: 支持在线配置各种参数

系统要求

  • Python 3.7+
  • Windows/Linux/macOS
  • 网络连接(用于发送告警)

安装步骤

1. 安装依赖

pip install -r requirements.txt

2. 配置系统

启动系统后,通过Web界面进行配置:

  • 基础配置: Syslog端口(默认514)、Web端口(默认5000)
  • 告警关键词: 设置触发告警的关键词(如:error, critical, alert)
  • 钉钉配置: 钉钉群机器人Webhook URL
  • 企业微信配置: 企业微信群机器人Webhook URL
  • 飞书配置: 飞书群机器人Webhook URL和签名密钥
  • 阿里云短信: Access Key、签名、模板代码、手机号码

3. 启动系统

python app.py

系统启动后:

  • Syslog服务器监听端口:514(可配置)
  • Web管理界面:http://localhost:5000

使用说明

Web管理界面

访问 http://localhost:5000 打开管理界面,包含以下功能模块:

  1. 实时日志: 查看接收到的syslog日志
  2. 告警事件: 查看触发的告警事件
  3. 服务状态: 管理syslog服务的启停,查看服务日志
  4. 系统配置: 配置各种告警推送参数
  5. 测试功能: 测试告警推送是否正常工作
界面截图

主界面 - 实时日志监控
在这里插入图片描述

告警事件管理
在这里插入图片描述

服务状态监控
在这里插入图片描述

系统配置界面
在这里插入图片描述

告警测试功能
在这里插入图片描述

配置告警推送

钉钉群机器人
  1. 在钉钉群中添加自定义机器人
  2. 获取Webhook URL
  3. 在系统配置中填入URL
企业微信群机器人
  1. 在企业微信群中添加群机器人
  2. 获取Webhook URL
  3. 在系统配置中填入URL
飞书群机器人
  1. 在飞书群中添加自定义机器人
  2. 获取Webhook URL
  3. 配置签名密钥(可选,用于消息验证)
  4. 设置@用户列表(可选,格式:user_id1,user_id2)
  5. 在系统配置中填入相关信息
阿里云短信
  1. 开通阿里云短信服务
  2. 创建短信签名和模板
  3. 获取Access Key ID和Secret
  4. 在系统配置中填入相关信息

发送测试日志

可以使用以下方法向系统发送测试syslog消息:

使用logger命令(Linux/macOS)
logger -n localhost -P 514 "This is a test error message"
使用Python脚本
import socket

sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.sendto(b"Test error message from python", ('localhost', 514))
sock.close()
使用PowerShell(Windows)
$udpClient = New-Object System.Net.Sockets.UdpClient
$bytes = [System.Text.Encoding]::UTF8.GetBytes("Test error message")
$udpClient.Send($bytes, $bytes.Length, "localhost", 514)
$udpClient.Close()

告警规则

系统会检查接收到的syslog消息,如果消息内容包含配置的关键词(默认:error, critical, alert, emergency),则会触发告警推送。

系统架构

┌─────────────────┐    ┌──────────────────┐    ┌─────────────────────┐
│   Syslog源      │───▶│  Syslog服务器     │───▶│     告警推送         │
│ (设备/应用)      │    │  (UDP 514端口)   │    │ (钉钉/微信/飞书/短信) │
└─────────────────┘    └──────────────────┘    └─────────────────────┘
                              │
                              ▼
                       ┌──────────────────┐
                       │   Web管理界面     │
                       │  (HTTP 5000端口) │
                       └──────────────────┘

故障排除

常见问题

  1. 端口被占用

    • 检查514端口是否被其他程序占用
    • 可以修改配置使用其他端口
  2. 告警发送失败

    • 检查网络连接
    • 验证Webhook URL是否正确(钉钉/企业微信/飞书)
    • 检查飞书签名密钥配置是否正确
    • 检查阿里云短信配置是否正确
  3. 权限问题

    • Linux下监听514端口需要root权限
    • 可以使用其他端口(如5140)避免权限问题

日志查看

系统运行日志可以通过以下方式查看:

  • Web界面的"服务状态"页面
  • 控制台输出

安全建议

  1. 不要在公网暴露syslog端口
  2. 定期更换API密钥
  3. 限制Web管理界面的访问
  4. 使用防火墙限制访问来源

许可证

MIT License

贡献

https://gitee.com/jiuchang-longshan-shanxi_0/Alarmpush
欢迎提交Issue和Pull Request来改进这个项目。

安装包下载链接

已打包成exe,支持windows系统,双击运行即可;
https://gitee.com/jiuchang-longshan-shanxi_0/Alarmpush/tree/master/dist

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT召唤狮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值