生态集成
MiBee Steward 专注于设备发现与资产管理,同时为周边可观测生态提供官方桥梁:面向其导出指标的 Grafana 面板、面向团队常用聊天平台的通知渠道,以及面向自动化工具的 webhook 示例。
Grafana
MiBee 在 /metrics 暴露 Prometheus 指标(Prometheus 抓取配置与内置告警规则见部署指南)。仓库在 deploy/grafana/ 下附带五张开箱即用的面板:
| 面板 | 内容 |
|---|---|
mibee-overview |
总览:设备状态分布、扫描运行、心跳结果、API 请求率、数据库大小 |
mibee-devices |
设备面:在线/离线数量、在线率、类型分布、各 agent 上报时延 |
mibee-heartbeat |
心跳健康:结果速率、失败占比、按探测方式的 p50/p95 时延 |
mibee-probes |
拨测:按目标的 up/down 状态、成功率、探测耗时、证书剩余天数 |
mibee-scanner |
扫描活动:运行速率、耗时分位数、发现主机数、扫描表增长 |
通过 provisioning 导入(推荐)
将整个 deploy/grafana/ 目录挂载进 Grafana:
# docker-compose.yml 片段
volumes:
- ./deploy/grafana/provisioning/datasources:/etc/grafana/provisioning/datasources:ro
- ./deploy/grafana/provisioning/dashboards:/etc/grafana/provisioning/dashboards:ro
- ./deploy/grafana/dashboards:/var/lib/grafana/dashboards:ro
内置的 datasource provisioning 假定 Prometheus 位于 http://prometheus:9090,若不同请编辑 deploy/grafana/provisioning/datasources/prometheus.yml。启动后面板出现在 MiBee 目录。
手动导入
Grafana → Dashboards → Import → 粘贴 JSON 文件内容 → 选择 Prometheus 数据源。
通知渠道
通知规则(事件 → 渠道,见 Web UI → 设置 → 通知)支持六种渠道类型:
| 类型 | 配置字段 | 鉴权 |
|---|---|---|
webhook |
url、可选 headers |
自定义请求头(如接收方 token) |
email |
SMTP host/port/username/password、from、to |
SMTP 认证 |
feishu |
url、可选 secret |
飞书自定义机器人 HMAC 签名(在机器人上开启"签名校验"并粘贴密钥) |
wecom |
url |
无(webhook URL 即凭证,请按密钥对待) |
telegram |
bot_token、chat_id |
Bot API token |
discord |
url、可选 username |
无(webhook URL 即凭证) |
四个聊天平台渠道是"格式化 webhook":MiBee 会把事件转换成平台的消息格式(标题 + 详情的文本消息)。若需要原始 JSON 载荷,请使用通用 webhook 类型,它 POST 完整事件结构:
{
"subject": "Device Lost: cam-01",
"body": "Device: cam-01\nIP: 192.168.1.133\n...",
"metadata": {
"event_type": "device_lost",
"device_name": "cam-01",
"ip_address": "192.168.1.133",
"mac_address": "...",
"device_type": "camera",
"detected_at": "2026-08-22T00:02:43Z"
}
}
每个渠道在 UI(设置 → 通知 → 渠道行)都有测试发送按钮,绑定规则前先用它验证连通性。
自动化示例
现成示例位于 deploy/integrations/:
- n8n,
n8n/mibee-device-alerts.json:可导入的工作流,接收通用 webhook 载荷、过滤device_lost,交给任意目标节点(聊天、工单……)。 - Home Assistant,
homeassistant/mibee-device-webhook.yaml:webhook触发器自动化,设备离线时推送持久通知;另含从 HA 触发 MiBee 扫描的rest_command。
模式都一样:创建一个指向你工具入站 URL 的 webhook 渠道,绑定通知规则,然后按 metadata.event_type 做路由。