首页 > 知识百科 > 正文

windows 11+docker Desktop+grafana+influxDB+python 写入 原创

下载安装docker桌面

出现WSL相关的错误。WSL是一个linux内核的子系统,docker是基于linux内核的,所以运行docker需要WSL。

以管理员权限打开powershell,查看WSL状态

wsl --status

我遇到的错误是我关闭了windows的某些更新< /p>

执行上述命令后提示我启动wslupdate,使用wsl --update命令更新后变正常

正常后如下: 

部署容器

再images的hub中搜到grafana和influxDB,拉到本地

点镜像的启动按钮会弹出配置窗口,配置完成后即启动了一个容器

配置容器名和端口映射(这里使用默认的端口,不做修改。grafana是3000,influxDB是8086)

 配置influxDB

浏览器打开localhost:8086访问influxDB

组织名称随便写,记住后边用

存储桶名称后边也可用。存储桶虚拟关系数据库的一个数据库

配置完成继续,点快速开始会生成一个shtoken长字符串,存下来之后用

grafana配置influxDB数据源

浏览器访问localhost:3000

设置用户名和密码

配置数据源名、查询语言、查询URL

< p>注意

1.URL填写本机地址,不要写localhost,在命令行中使用ip命令config查看本机地址

2.influxDB2 .x刚才生成了按键,因此不再需要用户名密码验证,所以这里取消Basic auth勾选

3.influxDB2.x可以选择Flux这类查询语言

配置相同influxDB中配置组织的名称,密钥,bucket名

 测试成功

此时在grafana的explore中就可以刚刚看到导入的数据源

就可以了看到了,grafana到数据库的连接地址用本地计算机的地址,为了防止本机ip变更导致断连,登录路由器管理页面,将本机mac地址与ip地址绑定。这样路由器本给机就不行了会分配其他ip了。

python写入数据

influxDB数据格式

InfluxDb的一个点为一条记录,每条记录个点包含四个key:measurements、tags、fields、time。它们的值可以直接写,不需要提前创建

1)measurement,他的值关系数据库中的表,包含tag ,field,time

2)time 每条数据记录时间,是数据库中的主索引(会自动生成)

3)标签是可选的,用来做索引的属性,以字符串的形式存放的

4) fields各种记录值(没有索引的属性),随时间变化的值

用关系型数据库的SQL来描述上述四个元素的关系:

select随时间变化的字段值,其中tags=xxx

显示案例

红箱的参数是下面“配置influxDB”时写入的/生成的参数

bucket相当于关系型数据库的一个数据库

注意:

url跟前文“配置grafana”中用的url一样

我的项目中订阅了一个价格频次道,不间断的循环写点

influxDB查看数据

浏览器登陆influxDB

找到刚写入数据的桶

根据读取的测量、标签、字段筛选读取的数据,点提交查询

grafana查询influxDB

浏览器登陆grafana

新建一个仪表板

选择其他中配置的influxDB数据源

< p>

查询语言用知识配置数据源时选择的Flux

 filter方法承担了虚拟关系数据库SQL中的select、from、where三个的作用。可以写在一行中,也可以拆开

选多个或者字段标签时,也用and,不用or

< p>

 添加更多面板有了自己的grafana看板

聚合查询

直接查询返回的数据量太大导致grafana无法显示,需要调理聚合函数

如下,聚合时间用的5s,方法是意思,即求天主教

windows 11+docker Desktop+grafana+influxDB+python 写入 原创由知识百科栏目发布,感谢您对的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“windows 11+docker Desktop+grafana+influxDB+python 写入 原创