MongoDB Grafana数据源gydF4y2Ba
MongoDB数据源插件允许您可视化数据在Grafana MongoDB。gydF4y2Ba
需求gydF4y2Ba
这个插件有以下要求:gydF4y2Ba
- MongoDB实例和至少一个用户gydF4y2Ba
- 以下账户类型之一:gydF4y2Ba
- 对用户可用gydF4y2BaGrafana云gydF4y2Ba免费的,先进或试用帐户或与一个gydF4y2Ba激活Grafana企业许可gydF4y2Ba。gydF4y2Ba
已知的限制gydF4y2Ba
- 只有gydF4y2Ba
找到gydF4y2Ba
和gydF4y2Ba总gydF4y2Ba
读命令支持gydF4y2Ba - 目前支持诊断命令参考gydF4y2Ba诊断gydF4y2Ba
- 正则表达式的旗帜gydF4y2Ba
ggydF4y2Ba
和gydF4y2Ba年代gydF4y2Ba
不支持gydF4y2Ba
安装插件gydF4y2Ba
安装的数据源,请参考gydF4y2Ba安装gydF4y2Ba。gydF4y2Ba
在Grafana配置数据源gydF4y2Ba
添加一个数据源gydF4y2Ba通过填写以下字段:gydF4y2Ba
字段名gydF4y2Ba | 描述gydF4y2Ba |
---|---|
的名字gydF4y2Ba | 这个特殊的MongoDB数据源的名称。gydF4y2Ba |
连接字符串gydF4y2Ba | MongoDB实例的连接字符串。gydF4y2Ba |
身份验证gydF4y2Ba | 凭证gydF4y2Ba输入您的用户名和密码。gydF4y2BaCA证书gydF4y2Ba输入您的CA证书和决定是否跳过TLS证书验证。gydF4y2Ba客户端证书gydF4y2Ba输入服务器名称、客户端证书和客户端密钥。gydF4y2Ba |
配置数据源的配置gydF4y2Ba
数据源可以配置Grafana的供应系统。你可以阅读更多关于它是如何工作的和所有的设置可以设置为数据源gydF4y2Ba供应GrafanagydF4y2Ba。gydF4y2Ba
apiVersion: 1数据源:名称:MongoDB类型:grafana-mongodb-datasource访问:代理basicAuth:假可编辑:真正启用:真正的jsonData:连接:连接字符串用户:用户名secureJsonData:密码:密码gydF4y2Ba
查询的数据源gydF4y2Ba
查询编辑器支持MongoDB Shell语法一样,有一些限制:gydF4y2Ba
- 你只能运行一个命令或查询每个查询。gydF4y2Ba
- 只有gydF4y2Ba
找到gydF4y2Ba
和gydF4y2Ba总gydF4y2Ba
读命令支持。gydF4y2Ba ISODategydF4y2Ba
是唯一支持对象的构造函数。gydF4y2Ba
额外的语法gydF4y2Ba
编辑器扩展了MongoDB Shell语法的gydF4y2Ba数据库的选择gydF4y2Ba,你可以使用一个数据库名称代替gydF4y2BadbgydF4y2Ba
。例如,gydF4y2Basample_mflix.movies.find ()gydF4y2Ba
。你仍然可以使用gydF4y2BadbgydF4y2Ba
引用默认的数据库连接字符串。gydF4y2Ba
它还扩展了它的gydF4y2Ba总排序gydF4y2Ba。排序通常发生在总管道。允许扩展语法gydF4y2Ba总gydF4y2Ba
类似于gydF4y2Ba找到gydF4y2Ba
。例如,gydF4y2Basample_mflix.movies.aggregate ({})。排序({“时间”:1})gydF4y2Ba
。gydF4y2Ba
注意:gydF4y2BaMongoDB不执行这个语法。排序之后的查询结果集合。gydF4y2Ba
边界情况gydF4y2Ba
与一个点集合gydF4y2Ba
为集合包含一个点您可以使用以下的语法gydF4y2Ba
my_db.getCollection (“my.collection”); ({})gydF4y2Ba
快捷键gydF4y2Ba
新闻gydF4y2BaCtrlgydF4y2Ba+gydF4y2Ba空间gydF4y2Ba显示代码完成,进入后显示gydF4y2Ba。gydF4y2Ba
一个数据库后,收集、查询方法,或聚合方法名称。gydF4y2Ba
CmdgydF4y2Ba+gydF4y2Ba年代gydF4y2Ba运行查询。gydF4y2Ba
查询的时间序列gydF4y2Ba
做一个时间序列查询混叠一个日期字段gydF4y2Ba时间gydF4y2Ba
。gydF4y2Ba
注意:gydF4y2Ba你可以强迫non-date字段日期字段别名gydF4y2Ba
时间gydF4y2Ba
使用时间序列查询。gydF4y2Ba
下面的例子将gydF4y2BaintgydF4y2Ba
场gydF4y2Ba一年gydF4y2Ba
预计的日期gydF4y2Ba时间gydF4y2Ba
使用MongoDB dateFromParts美元管道操作符:gydF4y2Ba
sample_mflix.movies。总([ {"$match": { "year": {"$gt" : 2000} }}, {"$group": { "_id": "$year", "count": { "$sum": 1 }}}, {"$project": { "_id": 0, "count": 1, "time": { "$dateFromParts": {"year": "$_id", "month": 2}}}} ] ).sort({"time": 1})
如果你想要你的时间序列gydF4y2Ba度规gydF4y2Ba、项目领域gydF4y2Ba__metricgydF4y2Ba
。gydF4y2Ba
下面的例子显示了计数的电影通过电影评级使用gydF4y2Ba__metricgydF4y2Ba
:gydF4y2Ba
sample_mflix.movies。总([ {"$match": { "year": {"$gt" : 2000}}}, {"$group": { "_id": {"year":"$year", "rated":"$rated"}, "count": { "$sum": 1 } }}, {"$project": { "_id": 0, "time": { "$dateFromParts": {"year": "$_id.year", "month": 2}}, "__metric": "$_id.rated", "count": 1}} ] ).sort({"time": 1})
诊断gydF4y2Ba
诊断命令信息,请参考gydF4y2Ba诊断命令gydF4y2Ba。gydF4y2Ba
这个插件支持以下诊断命令:gydF4y2Ba
统计数据gydF4y2Ba
serverStatusgydF4y2Ba
replSetGetStatusgydF4y2Ba
getLoggydF4y2Ba
connPoolStatsgydF4y2Ba
connectionStatusgydF4y2Ba
buildInfogydF4y2Ba
dbStatsgydF4y2Ba
hostInfogydF4y2Ba
lockInfogydF4y2Ba
宏gydF4y2Ba
简化语法,并允许动态的时候,您可以编写查询包含宏。gydF4y2Ba
- __timeFrom美元gydF4y2Ba
-
将取代当前活动的开始时间选择转换成吗gydF4y2Ba
时间gydF4y2Ba
数据类型。gydF4y2Ba - __timeTo美元gydF4y2Ba
-
将被替换的选择转换为当前活动时间gydF4y2Ba
时间gydF4y2Ba
数据类型。gydF4y2Ba
模板和变量gydF4y2Ba
添加一个新的MongoDB查询变量,请参考gydF4y2Ba添加和管理变量gydF4y2Ba。使用MongoDB数据源作为数据源。gydF4y2Ba
这是一个查询的例子,所有电影标题1980年之后:gydF4y2Ba
sample_mflix.movies。总([ {"$match": {year: {"$gt": 1980}}}, {"$project": {"_id": 0, "movie_title": "$title"}} ])
MongoDB支持复合变量,一个变量被用作多个变量执行复杂的多键过滤器。gydF4y2Ba
- 命名您的复合变量从每个人的名字与一个下划线(gydF4y2Ba
_gydF4y2Ba
),比如gydF4y2Ba_var1_var2gydF4y2Ba
。不要使用空格。gydF4y2Ba - 查询的复合变量通过别名使用同一个人的名字由连字符(gydF4y2Ba
- - - - - -gydF4y2Ba
),比如gydF4y2Baval1-val2gydF4y2Ba
。gydF4y2Ba - 打电话给你的变量使用普通变量的语法。例如,gydF4y2Ba
_var1美元gydF4y2Ba
或gydF4y2Ba_var2美元gydF4y2Ba
。gydF4y2Ba
电影的名字和年过滤结果gydF4y2Ba
- 创建一个变量和名称gydF4y2Ba
_movie_yeargydF4y2Ba
。gydF4y2Ba - 选择MongoDB作为数据源。gydF4y2Ba
- 得到一个数组项与一个movie-year属性通过设置查询如下:gydF4y2Ba
sample_mflix.movies。总([ {"$match": {year: {"$gt": 1980}}}, {"$project": {"_id": 0, "movie_year": {"$concat": ["$title", " - ", {"$toString":"$year"}]}}} ]) // [{"movie-year": "Ted - 2016"}, {"movie-year": "The Terminator - 1985"}]
- 在你的查询,参考gydF4y2Ba
_movie美元gydF4y2Ba
和gydF4y2Ba_year美元gydF4y2Ba
作为单独的模板变量:gydF4y2Ba
sample_mflix.movies。找到({"title":"$_movie", year: $_year})
- 在MongoDB中使用变量查询使用gydF4y2Ba变量的语法gydF4y2Ba。gydF4y2Ba
关于变量的更多信息,请参考gydF4y2Ba模板和变量gydF4y2Ba。gydF4y2Ba
使用专用过滤器gydF4y2Ba
除了标准的“临时过滤器”类型变量的名称,必须创建第二个辅助变量。它应该是一个“常数”类型的名称gydF4y2Bamongo_adhoc_querygydF4y2Ba
和一个值兼容gydF4y2Ba查询编辑器gydF4y2Ba。查询结果将用于填充UI的可选择的过滤器。你可以选择隐藏这个变量进一步认为它没有目的。gydF4y2Ba
查询:gydF4y2Ba
sample_mflix.movies。总([ {"$group": { "_id": "$year"}}, {"$project": { "year": "$_id", "_id": 0 }} ] )
…和一个值选择,看起来像:gydF4y2Ba
其他受支持的功能示例查询gydF4y2Ba
ObjectIdgydF4y2Ba
类型支持gydF4y2Ba
sample_mflix.movies。找到({"_id": ObjectId("573a1390f29313caabcd4803")}) sample_mflix.movies.find({"_id": {$in : [ObjectID("573a1391f29313caabcd6f98"), ObjectID("573a1392f29313caabcd9dee"), ObjectID("573a1392f29313caabcd9ca6")] }})
正则表达式搜索支持gydF4y2Ba
- 双引号:gydF4y2Ba
sample_mflix.movies。找到({"title": {$regex: "ace", $options: "$i"} })
- 用单引号:gydF4y2Ba
sample_mflix.movies。找到({"title": {$regex: 'ace', $options: "$i"} })
- 与模式gydF4y2Ba
sample_mflix.movies。找到({"title": /ace/i })
__timeFrom / __timeTo美元gydF4y2Ba
宏的支持gydF4y2Ba
sample_mflix.movies.find({“西红柿。dvd”: {$ gt: $ __timeFrom}}) .limit sample_mflix.movies (10)。找到({$和:[{“西红柿。dvd”: {$ gte: $ __timeFrom}},{“西红柿。dvd”: {$ lt: $ __timeTo}}})gydF4y2Ba
ISODategydF4y2Ba
类型支持gydF4y2Ba
sample_mflix.movies.find({“西红柿。dvd”: {$ gte: ISODate (" 2013-03-01 ")}})gydF4y2Ba
得到最多的插件gydF4y2Ba
- 添加gydF4y2Ba注释gydF4y2Ba。gydF4y2Ba
- 配置和使用gydF4y2Ba模板和变量gydF4y2Ba。gydF4y2Ba
- 添加gydF4y2Ba转换gydF4y2Ba。gydF4y2Ba
- 设置报警;指gydF4y2Ba警报概述gydF4y2Ba。gydF4y2Ba
- 建立代理;指gydF4y2Ba配置一个数据源连接代理gydF4y2Ba。需要Grafana 10和功能切换gydF4y2Ba
secureSocksDSProxyEnabledgydF4y2Ba
。gydF4y2Ba
调试反应大小gydF4y2Ba
注意:gydF4y2Ba该功能目前不支持Grafana云gydF4y2Ba
GF_PLUGIN_LOGGER_LEVELgydF4y2Ba
可以设置一个环境变量或在吗gydF4y2Bagrafana.inigydF4y2Ba
是这样的:gydF4y2Ba
(插件。grafana-mongodb-datasource] # the log level to capture # either 1 (traces) or 2 (debug) will work logger_level = 2
后,每个查询插件将日志信息响应大小。gydF4y2Ba