程序聚合 软件案例 告警巡检平台

告警巡检平台

2025-06-05 11:53:46
行业:企业内部管理、企业服务(saas)
载体:爬虫/脚本、嵌入式软件
技术:Go、Gin、Gorm、JMeter

业务和功能介绍

在现代信息技术环境中,企业和组织需要对各种设备和系统的运行状态进行实时监控和管理。例如,服务器的性能指标、网络设备的连接状态、应用程序的运行情况等。同时,当出现异常情况或达到特定阈值时,需要及时通知相关人员进行处理。Vigilix 项目就是为满足这些需求而开发的,它提供了一套完整的监控和告警解决方案,帮助企业及时发现和解决问题,保障系统的稳定运行。
分布式C/S架构:
1. 客户端(Client)
参数获取:从命令行或配置文件中获取服务器的 IP 地址、端口号、用户名和密码等连接参数。
连接服务器:使用获取到的参数与服务器建立连接,实现与服务器的交互。
2. 服务器(Server)
配置加载:从配置文件中加载服务器的各种配置信息,如 WebSocket 配置、代理配置、客户端工具配置等。
WebSocket 服务:提供 WebSocket 服务,与客户端和代理进行通信,实现实时数据传输。
代理管理:管理代理的连接和状态,检测代理的可用性,定期获取代理的信息。
告警处理(对接Zabbix接口):根据配置的规则,对监控数据进行分析,当出现异常情况时触发告警。
数据推送:将告警信息推送给指定的接收方,如邮件、短信、钉钉、企业微信等。
3. 代理(Agent)
配置加载:从配置文件中加载代理的各种配置信息,如服务器地址、认证密钥、告警配置等。
数据采集:定期采集本地设备的各种性能指标,如 CPU 使用率、内存使用率、磁盘使用率、网络流量等。
数据发送:将采集到的数据发送给服务器,实现数据的实时上传。
心跳检测:定期向服务器发送心跳包,保持与服务器的连接。
4. 推送模块(Push)
配置加载:从配置文件中加载推送的各种配置信息,如邮件配置、短信配置、钉钉配置、企业微信配置等。
消息推送:根据配置的规则,将告警信息推送给指定的接收方,支持多种推送方式,如邮件、短信、钉钉、企业微信等。
异步处理:使用异步处理机制,提高推送的效率和可靠性。

项目实现

1. 系统架构
微服务设计:拆分为客户端、服务器、代理、推送四大模块,通过 WebSocket 实现实时通信
分层架构:业务逻辑、数据访问、表示层分离,提升可维护性
配置驱动:YAML 配置集中管理,支持动态加载
2. 核心功能
客户端:命令行参数解析,WebSocket 长连接,断线重连机制
服务器:Gorilla WebSocket 高性能服务,代理管理、告警规则引擎、异步推送
代理:轻量级数据采集框架,支持 CPU / 内存 / 磁盘 / 网络监控,本地缓存与批量发送
推送:多渠道消息接口(邮件 / 短信 / 钉钉 / 企业微信),异步队列处理,模板引擎
3. 技术亮点
高性能:WebSocket 全双工通信,连接池复用技术
可靠性:熔断机制、数据持久化、自动重连
扩展性:插件化架构、动态规则加载
4. 项目成果
性能指标:单服务器支持 10,000+ 代理,告警响应 < 100ms
技术栈:Go 语言开发,Gorilla WebSocket 通信,Viper 配置管理
业务价值:IT 设施全面监控,故障响应时间从小时级降至分钟级,运维成本降低 30%

示例图片视频


梦在远方
30天前活跃
方向: 后端-Go、运维-运维、
交付率:100.00%
相似推荐
宜昌市公办福利机构智能监管平台
当前,我市公办养老机构及其他公办福利机构,在“人、财、物”监管、食品安全及整体安全管理方面存在数据孤岛、监管手段滞后、风险预警不足等问题。面对“突击战”严峻形势,亟需通过定制化开发构建一个覆盖全市、统一高效的智慧监管平台,实现对公办福利机构(特别是农村福利院)的规范化、透明化、智能化监管。
WebServer
TinyWebServer 是一个用 C++14 从零构建的 Web 服务器,适用于学习 Linux 网络编程、I/O 多路复用、并发模型与 HTTP 协议实现。 ### 核心技术 | 技术点 | 实现 | |--------|------| | **I/O 多路复用** | epoll (ET/LT 可切换) | | **并发模型** | Reactor + 半同步/半反应堆 (HSHA) | | **线程池** | 固定大小线程池 + 条件变量 + shared_ptr 安全设计 | | **HTTP/1.1** | 手写状态机解析器 + Keep-Alive 长连接 | | **零拷贝** | mmap 内存映射文件传输 + writev 集中写 | | **定时器** | 小根堆 (二叉堆 + 哈希索引) O(log n) 超时管理 | | **数据库** | MySQL 连接池 + RAII 守卫 + SQL 注入防护 | | **日志** | 异步日志系统 (生产者-消费者 BlockDeque) + 日期/行数切分 | | **缓冲区** | 用户态 Buffer (readv 分散读 + 动态扩容 + 原子指针) |
物联网-远程机械管理系统
此平台为针对特种设备(主要是起重机)传感器数据采集及监控的多租户平台,含pc端和小程序端;实现在线及历史数据可视化展示;同时引入大模型,搜索知识库,知识库基于国标和行标,以及生产实践积累的实施文档和技术文档;并可对设备故障预警及告警。
智慧校园问卷与环境监测系统 - 基于 Flask + MQTT 的校园数据采集与可视化平台
项目背景 在教育信息化快速发展的背景下,学校需要高效收集学生学习情况数据,同时对教学环境进行实时监测。本系统解决以下问题: 1. 问卷调查效率低:传统纸质问卷收集困难、统计耗时 2. 数据分析不直观:缺乏可视化的数据展示方式 3. 环境监测缺失:教室温湿度等环境数据无法实时掌握 核心功能模块 模块1:学习情况问卷调查系统 - 年级选择(高一/高二/高三) - 学习态度评估(主动进取/按部就班/佛系学习/抵触厌烦) - 学习主动性评价 - 学习负担感受 - 作业完成时间统计 - 教学参考书使用评价 - 最满意学科及原因 - 9大学科满意度评分(1-5分制):语文、数学、英语、物理、化学、生物、政治、历史、地理 - 教学建议提交 模块2:管理员数据管理后台 - 安全登录:账号密码认证,Session会话管理 - 数据统计:各年级问卷提交数量统计 - 数据详情:分页查看所有问卷记录 - 数据导出:一键导出Excel报表 - 密码管理:管理员密码修改功能 模块3:物联网环境监测系统 - 实时数据采集:通过MQTT协议接收IoT设备数据 - 数据存储:温度、湿度、设备名称、采集时间 - 可视化展示:实时折线图展示温湿度变化趋势 数据流向:IoT设备 → MQTT服务器(broker.emqx.io) → Flask后端 → 数据库 → Web前端(ECharts) 数据流程 学生用户填写问卷 → 数据验证 → 存入SQLite数据库 管理员用户登录认证 → 权限校验 → 数据查询 → 数据可视化(ECharts) → 报表导出(Excel)
植物灯智能控制APP-MaxGrow
作为多功能控制器的配套移动应用,本终端致力于构建一套闭环的智慧种植管理体系。通过对植物灯、空调、喷淋系统及土壤传感器等多品类设备的集中管控,实现了对种植环境关键参数的实时监测与自动化调控,推动种植流程的智能化与精细化。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服