我的本地blob存储未将blob上载到我的云存储帐户。它会返回报告
"configurationValidation": {
"deviceAutoDeleteProperties": {
"deleteOn": {
"Status": "Success"
},
"deleteAfterMinutes": {
"Status": "Warning",
"Message": "Auto Delete after minutes value not specified, auto deletion turned off."
},
"retainWhileUploading": {
"Status": "Success"
}
},
"deviceToCloudUploadProperties": {
"uploadOn": {
"Status": "Success"
},
"cloudStorageAccountName": {
"Status": "Error",
"Message": "Target container connection not specified, upload turned off."
},
"cloudStorageAccountKey": {
"Status": "Error",
"Message": "Target container connection not specified, upload turned off."
},
"uploadOrder": {
"Status": "Success"
},
"deleteAfterUpload": {
"Status": "Success"
}
}
},我非常确定它应该可以工作。我想要的属性是
"deviceToCloudUploadProperties": {
"uploadOn": true,
"uploadOrder": "OldestFirst",
"cloudStorageConnectionString": "DefaultEndpointsProtocol=https;AccountName=*****;AccountKey=******;EndpointSuffix=core.windows.net",
"storageContainersForUpload": {
"***": {
"target": "***"
}
},
"deleteAfterUpload": true
}容器存在于本地和云站点上。我将主连接字符串从本地存储帐户复制到配置中。本地存储工作正常,我可以看到我的容器是创建的,包含数据,但它不想与云同步。为什么会显示“目标容器连接未指定,上传已关闭”?听起来好像这部分不见了
"storageContainersForUpload": {
"***": {
"target": "***"
}
},但显然不是这样的。
我使用的是此服务的最新docker图像。有没有机会使用旧版本?几个月前,我已经可以让它工作了。我尝试使用一个不同的版本,比如mcr.microsoft.com/azure-blob-storage:1.4.0,但它只接受最新的标签。
谢谢!
发布于 2021-07-09 16:09:02
我的本地blob存储模块的工作版本和非工作版本之间的不同之处在于,非工作版本是由部署计划部署的。在部署计划中,您不能像https://docs.microsoft.com/en-us/azure/iot-edge/how-to-deploy-blob?view=iotedge-2020-11一样将blob存储的文档的模块孪生设置粘贴到IoT边缘
您需要将配置拆分为两部分,第一部分如下所示

第二部分看起来像这样

这是完全有道理的。如果你想更新你的模块,你可能想要保留你的配置,因为可能有一些更改,例如由客户做出的更改。这使您可以在以后向初始配置中添加一些属性,而无需更改已配置的任何内容。事实上,每个设备都可以在任何时候保持其各自的配置。
我错误配置的报告属性隐藏在建议的默认路径"properties.desired.settings“中,因此边缘运行时无法找到它。
https://stackoverflow.com/questions/68128916
复制相似问题