开源监控系统,插件化搞定日志、指标和告警
项目简介
一款集 监控点监控、日志监控、数据可视化、监控告警 于一体的分布式开源监控系统。
-
采用 插件化架构,常用监控需求通过插件实现,无需开发
-
插件支持 一键部署、移除、启用、禁用
-
提供 丰富的图表类型与多维数据展示,满足多样化可视化需求
演示地址(Windows 访问需代理):http://open.xrkmonitor.com
代理客户端:从源码目录下载
AccessDaemon.rar,解压后以管理员权限运行(自动将域名解析至本地回环)
核心优势(相比其他开源监控系统)
1、插件即服务:无需编码,控制台安装插件即可使用

2、内置分布式日志系统:高性能日志上报、过滤、染色、字段扩展,控制台支持多维日志检索
3、自动化配置:Agent 部署后自动注册,视图自动绑定上报机器
4、多用户支持:管理员可创建子账号,分配不同权限
5、双角色友好:
-
运维/产品人员:直接使用现成插件快速搭建监控
-
开发者:提供 API 接口,支持深度定制
6、内网友好:支持完全内网部署,插件仍可从云端下载;Agent 支持 UDP 代理,可调用云端告警等服务
特色功能推荐
IP 地址库:自动将 IP 转为物理地址,生成地域分布图(如插件 monitor_apache_log)

插件市场:监控能力组件化,持续扩展中

分布式日志系统:支持频率限制、日志染色、自定义字段;控制台支持关键字/排除词/时间/机器等多条件过滤

灵活视图机制:图表可按服务器、监控点自由组合,支持在图上直接设置告警阈值

多通道告警:邮件、短信、微信、PC 客户端等,开箱即用

实时表格插件:横向对比分布式集群中各节点指标,支持排序

部署方式
1、集中部署
2、分布式部署
Docker 部署指南(以宿主机 IP 192.168.128.210 为例)
1、拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/xrkmonitor/release:latest
2、启动容器
docker run -idt \ -p27000:27000/udp \ -p38080:38080/udp \ -p28080:28080/udp \ -p80:80 \ --env xrk_http_port=80 \ -v /data/xrkmonitor/docker_mysql:/var/lib/mysql \ -v /data/xrkmonitor/docker_slog:/home/mtreport/slog \ --env xrk_host_ip=192.168.128.210 \ <镜像ID>
参数说明:
端口映射:日志(27000)、监控点(38080)、接入服务(28080)、Web 控制台(80)
挂载目录:MySQL 数据、日志存储
xrk_host_ip:必须设为宿主机真实 IP
3、启动服务
docker attach <容器ID>cd /home/mtreport./start_docker.sh
4、访问控制台
浏览器打开:http://192.168.128.210
默认账号密码:sadmin / sadmin
5、停止服务
/home/mtreport/stop_docker.sh
注意:升级时若 MySQL 表结构变更,需更换或清空挂载的 MySQL 目录,避免兼容问题。
Agent 部署说明
-
Agent 包位于容器内:
/home/mtreport/slog_mtreport_client.tar.gz -
拷贝至目标机器,解压后修改
SERVER_MASTER为宿主机 IP -
若在宿主机部署 Agent,需指定
AGENT_CLIENT_IP为容器网卡 IP -
不建议在容器内部署插件,易与宿主机冲突
源码编译(支持离线部署)
方式一:使用 Docker 编译镜像
# 拉取编译镜像docker pull registry.cn-hangzhou.aliyuncs.com/xrkmonitor/compile:latest# 启动并进入容器docker run -idt <镜像ID>docker attach <容器ID># 编译cd /home/xrkmonitor/openmake# 生成部署包cd tools_sh./make_all.sh # 生成 slog_all.tar.gz
建议挂载宿主机目录进行二次开发,避免代码丢失
方式二:本地编译
git clone https://gitee.com/xrkmonitorcom/open.gitcd openmakecd tools_sh./make_all.sh # 生成 slog_all.tar.gz# 安装tar -zxvf slog_all.tar.gz -C /home/mtreportcd /home/mtreport./local_install.sh# 卸载./uninstall_xrkmonitor.sh
OpenSUSE 用户可直接使用源码中的
slog_all.tar.gz离线包
技术栈
-
后端存储:Apache + MySQL(监控数据、配置信息)
-
前端框架:DWZ(Web 控制台)
-
可视化图表:ECharts
-
CGI 引擎:ClearSilver(支持 FastCGI 部署)
-
网络通信:C++ Sockets 开源框架
-
API 支持语言:C/C++、PHP、Linux Shell、JavaScript(更多语言开发中)
插件市场(部分示例)
|
|
|
|
|---|---|---|
linux_base |
|
|
monitor_apache_log |
|
|
linux_file_monitor |
|
|
monitor_website |
|
|
open_source_star |
|
|
common_log |
|
|
common_log演示视频:https://www.bilibili.com/video/BV18i4y1c7rJ/



项目源码
项目演示:http://open.xrkmonitor.com
在线文档:http://xrkmonitor.com/monitor/dmt_open_doc.html
源码仓库:https://gitee.com/xrkmonitorcom/open.git
关键词
#开源监控、#插件化架构、#分布式日志、#数据可视化、#监控告警、#一键部署、#IP地址库、#自动化注册、#多协议支持、#内网可用
作者:小码编匠
出处:gitee.com/smallcore/DotNetCore
声明:网络内容,仅供学习,尊重版权,侵权速删,歉意致谢!


方便大家交流、资源共享和共同成长
纯技术交流群、需要的小伙伴请扫码
有收获?不妨分享让更多人受益
关注「程序员开源栈」,共同提升技术实力




夜雨聆风

