fnMessageBots是一款基于飞牛日志操作的监控通知器。当飞牛出发既定的动作的时候会发送日志到接收平台。支持一键化部署。可以消息通知到多应用。重要的是支持微信接收。

目前已定义的触发动作:
- LoginSucc (登录成功)
- LoginSucc2FA1 (二次验证登录)
- LoginFail (登录失败)
- Logout (退出登录)
- FoundDisk (发现新硬盘)
- DiskWakeup (磁盘唤醒)
- DiskSpindown (磁盘休眠)
- APP_CRASH (应用崩溃)
- APP_UPDATE_FAILED (应用更新失败)
- APP_START_FAILED_LOCAL_APP_RUN_EXCEPTION (应用启动失败-本地运行异常)
- APP_AUTO_START_FAILED_DOCKER_NOT_AVAILABLE (应用自启动失败-Docker不可用)
- CPU_USAGE_ALARM (CPU使用率告警)
- CPU_TEMPERATURE_ALARM (CPU温度告警)
- UPS_ONBATT (UPS电池供电)
- UPS_ONBATT_LOWBATT (UPS低电量预警)
- UPS_ONLINE (UPS市电供电)
- SSH_SERVICE_STARTED (SSH服务启动)
- SSH_SERVICE_STOPPED (SSH服务停止)
- SSH_LISTEN (SSH监听端口)
- SSH_INVALID_USER (SSH无效用户尝试)
- SSH_AUTH_FAILED (SSH认证失败)
- SSH_LOGIN_SUCCESS (SSH登录成功)
- SSH_SESSION_OPENED (SSH会话开启)
- SSH_DISCONNECTED (SSH断开连接)
- SSH_SESSION_CLOSED (SSH会话关闭)
触发的样式(部分):
- LoginSucc (登录成功)
- LoginSucc2FA1 (二次验证登录)
- Logout (退出登录)
- FoundDisk (发现新硬盘)
- DiskWakeup (磁盘唤醒)
- DiskSpindown (磁盘休眠)
- APP_CRASH (应用崩溃)
- APP_UPDATE_FAILED (应用更新失败)
- UPS_ONBATT_LOWBATT (UPS电池供电)
- UPS_ONLINE (UPS市电供电)
消息接收平台:
- 企业微信(可直接在微信接收)
- 钉钉
- 飞书
- Bark
部署脚本docker-compose.yml
services:
fn-message-bot:
image: sunanang/fn-message-bots:latest # 使用预构建镜像
container_name: fn-message-bot
restart: unless-stopped
network_mode: host
privileged: true
pid: host
# 挂载系统日志目录(关键配置)
volumes:
# journal二进制日志(如果存在)
- /var/log/journal:/var/log/journal:ro
- /run/log/journal:/run/log/journal:ro
# 文本日志(可选)
- /var/log/syslog:/var/log/syslog:ro
# 应用数据目录
- ./data/logs:/app/logs:rw
- ./data/cursor:/tmp/cursor:rw
# 配置文件目录
- ./config:/app/config:ro
# 环境变量配置
environment:
# - WECHAT_WEBHOOK_URL=YOUR_WECHAT_WEBHOOK_URL
# - DINGTALK_WEBHOOK_URL=YOUR_DINGTALK_WEBHOOK_URL
# - FEISHU_WEBHOOK_URL=YOUR_FEISHU_WEBHOOK_URL
# - BARK_URL=YOUR_BARK_URL
#必须最少有一个,将链接替换成你的链接!!记得替换链接,如果获取下面有写
- TZ=Asia/Shanghai
cap_add:
- SYS_ADMIN
- DAC_READ_SEARCH
- SYS_PTRACE
- AUDIT_READ
- AUDIT_READ
WECHAT_WEBHOOK_URL、DINGTALK_WEBHOOK_URL、FEISHU_WEBHOOK_URL、BARK_URL选择你需要的。其他的删除即可。可以配置多个,但是最少配置一个。并且,如果不需要,你就删除!!不要留下
关于如何获取WebHook Url:
1.飞书:需要注册个人账号,然后建立群组就好,然后在群设置里面打开群机器人,就可以获取到webHook url
2.企业微信:需要注册一个企业(只是注册就好,不需要任何认证),然后注册成功后会默认有一个大群,可以直接在群设置里面打开群机器人,就可以获取到webHook url
3.钉钉:需要注册个人账号,然后建立群组,在群设置里面打开群机器人,这里需要注意的是,钉钉机器人需要开启安全设置,我们需要开启“自定义关键词”验证。内容填写**“飞牛NAS”**
4.Bark:APP下载完成后,在首页就可以看到各种推送消息的api,复制前面的请求链接,不要/后面的内容。记住,不要/后面的内容。
微信配置可以看这里:https://club.fnnas.com/forum.php?mod=viewthread&tid=55212,其他渠道类似
最简单的就是下载Bark,下载app后就可以获取url,配置上就可用。
V1.0.3(20260210)发布:
1.新增ssh相关推送,ssh开启/关闭,ssh登录/退出登录等
2.新增cpu相关推送
3.优化系统,提高存活时间,避免频繁杀死重启
4.修复登录误判,提示unknow问题
5.优化控制台输出,减少不必要内容输出
6.修复Bark配置{content}后无法正常接收消息问题
V1.0.2(20260203)发布:
1.添加多个推送日志类型(cpu使用率和cpu温度,APP启动失败)
2.bark升级,支持多种样式配置
3.Bark磁盘唤醒优化提示
4.异常日志删除
5.日志权限删除部分过高权限。去掉了危险权限,降低权限使用
6.修复长时间运行后,无法收到推送的问题
Bark自定义配置:
只要把链接里面的推送内容修改为{content},我会替换内容。其他的配置都可以自己设置。设置成你希望的样式。请注意,推送内容替换成{content},最好直接复制使用,避免中英文错误

V1.0.1(20260128):
1.规范化时间展示
2.优化磁盘唤醒和磁盘休眠推送提示
3.修复钉钉磁盘唤醒和磁盘休眠推送问题
4.修复UPS电池供电不提示问题
论坛回复有点不及时,也很麻烦,如果需要,就加群吧,在群里也方便排查问题。项目刚刚启动,问题还比较多,不太成熟,请大家理解。
