ADF Web Activity反序列化报错及Notebook轴长度不匹配问题求助
Azure Data Factory Web Activity 序列化错误处理问题
在Azure Data Factory(ADF)的Web Activity中收到如下错误:
请求内容无效,无法反序列化:'解析值后遇到意外字符。
经排查,该错误源于Notebook执行时抛出的异常:
--------------------------------------------------------------------------- ValueError Traceback (most recent call last) /tmp/ipykernel_10465/628309876.py in <module> 7 8 ----> 9 split_df.columns = ['dot1', 'dot2', 'dot3', 'dot4', 'dot5'] 10 print(split_df) ~/cluster-env/env/lib/python3.8/site-packages/pandas/core/generic.py in __setattr__(self, name, value) 5476 try: 5477 object.__getattribute__(self, name) -> 5478 return object.__setattr__(self, name, value) 5479 except AttributeError: 5480 pass pandas/_libs/properties.pyx in pandas._libs.properties.AxisProperty.__set__() ~/cluster-env/env/lib/python3.8/site-packages/pandas/core/generic.py in _set_axis(self, axis, labels) 668 def _set_axis(self, axis: int, labels: Index) -> None: 669 labels = ensure_index(labels) -> 670 self._mgr.set_axis(axis, labels) 671 self._clear_item_cache() 672 ~/cluster-env/env/lib/python3.8/site-packages/pandas/core/internals/managers.py in set_axis(self, axis, new_labels) 218 219 if new_len != old_len: -> 220 raise ValueError( 221 f"Length mismatch: Expected axis has {old_len} elements, new " 222 f"values have {new_len} elements" ValueError: Length mismatch: Expected axis has 9 elements, new values have 5 elements"
将该错误信息传入Web Activity以发送邮件时,触发了上述Web Activity错误。
已尝试的解决方案
- 创建变量
ErrorMessage存储Notebook的错误信息:@activity('Notebook1').error.Message - 创建变量
CleanErrorMessage,尝试替换换行符清理信息:@replace(variables('ErrorMessage'),'\n','')
但该方法未达到预期效果。
请求帮助
如何清理Notebook错误信息中的特殊符号与换行符,使其能以JSON格式传入Web Activity并正常执行?
Web Activity的JSON内容如下:
{ "Pipeline":"@{pipeline().Pipeline}", "ErrorMessage": "@{variables('CleanErrorMessage')}", "DataFactoryName":"@{pipeline().DataFactory}", "Runid":"@{pipeline().RunId}" }
内容的提问来源于stack exchange,提问作者Govind Gupta
相关产品推荐
相关产品推荐

