【亲测免费】 MongoDB数据源插件使用指南
2026-01-25 06:10:56作者:董宙帆
安装指南
安装Grafana插件组件
- 将
mongodb-grafana目录复制到Grafana的插件目录中(通常为/usr/local/var/lib/grafana/plugins)。 - 重启Grafana服务器。如果通过Homebrew安装,可以使用命令
brew services restart grafana。
安装并启动MongoDB代理服务器
- 在
mongodb-grafana目录下打开命令提示符。 - 运行
npm install安装Node.js依赖。 - 运行
npm run server启动REST API代理到MongoDB。默认情况下,服务器监听http://localhost:3333。
项目使用说明
创建MongoDB数据源
- 在Grafana中创建一个新的数据源,类型选择为MongoDB。
- 填写MongoDB的详细信息:
- MongoDB URL:
mongodb://rpiread:rpiread@rpi-sensor-data-shard-00-00-ifxxs.mongodb.net:27017,rpi-sensor-data-shard-00-01-ifxxs.mongodb.net:27017,rpi-sensor-data-shard-00-02-ifxxs.mongodb.net:27017/test?ssl=true&replicaSet=rpi-sensor-data-shard-0&authSource=admin - MongoDB Database:
rpi
- MongoDB URL:
- 保存数据源。
示例1 - 简单聚合以重命名字段
- 导入
examples\RPI MongoDB - Atlas.json中的仪表盘。 - 该仪表盘显示了来自Raspberry PI的灯光传感器值,数据每分钟通过EnviroPHAT板传输到MongoDB Atlas数据库。
- 点击图表标题查看针对'RPI Atlas'数据源运行的聚合查询。
示例2 - 使用$bucketAuto进行数据点聚合
- 导入
examples\RPI MongoDB Bucket - Atlas.json中的仪表盘。 - 该仪表盘展示了使用MongoDB的$bucketAuto操作符自动将数据点分桶到显示点的查询。
示例3 - 使用表格面板
- 导入
examples\Sensor Values Count - Atlas.json中的仪表盘。 - 该仪表盘展示了使用表格面板的查询。
项目API使用文档
API请求格式
API期望返回的文档包含以下字段:
name- 系列的名称(将在图表上显示)value- 点的浮点数值ts- 点的时间,作为BSON日期
这些文档将被转换为Grafana API格式。
模板变量
$sensor和$host是模板变量,由Grafana根据下拉菜单填充。示例模板查询如下:
db.sensor_value.aggregate(
[
{ "$match" : { "ts" : { "$gte" : "$from", "$lt" : "$to" }}},
{ "$group": { "_id": { "sensor_name" : "$sensor_name", "sensor_type" : "$sensor_type" }, "cnt" : { "$sum" : 1 }, "ts" : { "$max" : "$ts" } } },
{ "$project": { "name" : { "$concat" : ["$_id.sensor_name",":","$_id.sensor_type" ]}, "value" : "$cnt", "ts" : 1, "_id" : 0} }
])
项目安装方式
在Mac上作为服务运行代理
- 安装
forever-mac。 - 将
server/mongodb-grafana-proxy.plist复制到~/Library/LaunchAgents。 - 运行
launchctl load mongodb-grafana-proxy。 - 使用
forever list检查是否运行。日志位于/usr/local/var/lib/grafana/plugins/mongodb-grafana/dist/server。
开发环境配置
- 停止Grafana服务:
brew services stop grafana。 - 在
/debugging目录下打开命令提示符。 - 运行
./start_grafana.sh。 - 修改代码后,运行
npm run build构建UI。 - 使用开发者工具清空缓存并强制刷新。
注意:Homebrew安装的Grafana版本位于/usr/local/Cellar。
登录后查看全文
热门项目推荐
相关项目推荐
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C0134
let_datasetLET数据集 基于全尺寸人形机器人 Kuavo 4 Pro 采集,涵盖多场景、多类型操作的真实世界多任务数据。面向机器人操作、移动与交互任务,支持真实环境下的可扩展机器人学习00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python059
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
AgentCPM-ReportAgentCPM-Report是由THUNLP、中国人民大学RUCBM和ModelBest联合开发的开源大语言模型智能体。它基于MiniCPM4.1 80亿参数基座模型构建,接收用户指令作为输入,可自主生成长篇报告。Python00
项目优选
收起
deepin linux kernel
C
27
11
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
501
3.66 K
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
11
1
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
66
20
暂无简介
Dart
748
180
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
870
490
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
23
0
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
318
134
仓颉编译器源码及 cjdb 调试工具。
C++
150
882
React Native鸿蒙化仓库
JavaScript
298
347