树莓派 4B-ubuntu mate-arm64-edgex foundry 定时器功能

1.每个微服务都有自己的定时器,本文中的定时器功能要与微服务内部的定时器区分开来。
2.首先要保证scheduler微服务正常启动:下面截图是正常启动时候的截图
树莓派 4B-ubuntu mate-arm64-edgex foundry 定时器功能

或者:
树莓派 4B-ubuntu mate-arm64-edgex foundry 定时器功能
3.scheduler 微服务正常启动的日志:
树莓派 4B-ubuntu mate-arm64-edgex foundry 定时器功能
树莓派 4B-ubuntu mate-arm64-edgex foundry 定时器功能
树莓派 4B-ubuntu mate-arm64-edgex foundry 定时器功能
4.scheduler 微服务启动失败的日志:
树莓派 4B-ubuntu mate-arm64-edgex foundry 定时器功能
4.1
scheduler 微服务启动失败日志分析:
edgex-ui-go没有表单检查,慎用,创了个空action的估计存入redis了,然后每次读取导致scheduler崩了,估计得重新拉redis那个镜像,获取删除卷。
4.2
解决步骤:
a.查看卷:docker volume ls
树莓派 4B-ubuntu mate-arm64-edgex foundry 定时器功能

b.删除数据库:
docker volume rm software_db-data

c.重新启动scheduler微服务,此时就成功了
docker-compose up -d

5.通过consul 设置interval interval_action
注意:因为你删了数据库 software_db-data,所以你会发现找不到deviceservice 中的mqtt了,那么可以按照以前的创建mqtt的步骤先新建mqtt 设备,然后在创建interval和interval action.
5.1 创建interval
树莓派 4B-ubuntu mate-arm64-edgex foundry 定时器功能
5.2 创建interval action:
树莓派 4B-ubuntu mate-arm64-edgex foundry 定时器功能
6.每分钟主动出发mqtt的get 命令:(mqtt_client.py 是利用python 脚本编写模拟的mqtt 的客户端)
树莓派 4B-ubuntu mate-arm64-edgex foundry 定时器功能