繁体   English   中英

Azure 逻辑应用表插入导致错误

[英]Azure logic app table insertions causing errors

我们最近开始研究 Azure 逻辑应用程序(标准),并在将一些数据插入普通 Azure 表存储时遇到了一些问题。

服务:Azure 逻辑应用程序(标准)

Function 失败:插入或更新实体(表存储)

错误消息{"statusCode":"InternalServerError","body":{"code":"ServiceProviderActionFailed","message":"The service provider action failed with error code 'ServiceOperationFailed' and error message 'Object reference not set to an instance of an object.'."}}

传递给 function 的对象都具有相同的结构,但是,其中一些对象失败并返回上面写的错误。

调试了一段时间后,我们得出结论, Managed Identity是问题所在。 当切换到表存储的正常连接字符串时,function 工作正常,所有数据都已提交。

function 目前处于预览模式,因此可能仍然存在一些未知的错误。

据我所知,它是将托管身份内置逻辑应用程序操作结合使用以对存储表执行操作,至少在其当前 state 中是这样。如果您使用“非内置”操作,您将不会看不到这个问题。

最近几天我看到了同样的问题,在我的例子中,我的逻辑应用程序只是获取实体而不是插入。 有问题的错误完全不确定地出现,有时有效负载有效,有时相同的有效负载会出现此错误。 唯一的确定性因素是同一批次的有效负载开始工作或大部分工作,但我运行它们的次数越多,我得到的错误就越多。

根据您自己的回复,我尝试暂时更改为连接字符串而不是托管身份,实际上它工作得更好,但是在更改为“非内置”V1 操作(即不是预览中的 V2)之后,它工作正常。

在我的例子中,似乎有一些更重的负载,而带有托管身份的内置操作根本无法解决它。 奇怪的是我们得到的是 502 而不是我们可以正确执行的 429,但它就是这样。

不幸的是,逻辑应用程序设计器在您使用的操作类型方面不是很明显。 通过单击“内置”选项卡或“Azure”选项卡在逻辑应用程序设计器中创建操作时,您可以在两种类型之间切换,并找到非内置存储表操作,您必须专门编写“天蓝色存储表”在搜索框中。 遗漏其中一个词,您将找不到它。

在此处输入图像描述

Managed Identity 是问题所在,请将支持票记录到 Microsoft。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM