ADF调试Copy数据移动转换功能时如何验证Kusto侧操作有效性
查看ADF调试运行的执行明细
- 查看ADF调试输出面板:每次调试运行结束后,界面右侧的「输出」标签页会列出所有活动的执行状态,点击对应活动(比如创建临时表的Kusto查询活动、Cosmos到Kusto的复制活动)旁的详情按钮,可以获取以下关键信息:
- 活动实际执行的完整命令(比如建表的KQL语句,可直接确认生成的临时表名是否符合预期)
- 复制活动的读取/写入行数、吞吐量,验证是否从Cosmos读取了预期规模的数据
- 活动执行的错误提示(如果操作因权限、语法问题失败会直接展示)
- 查看ADF诊断日志:如果你已经开启了ADF诊断日志导出到Log Analytics,可以用如下查询筛选调试运行的全量记录:
AzureDataFactoryPipelineRunLog | where RunType == "Debug" | project PipelineName, RunId, ActivityName, Status, ExecutionDetails
验证Kusto侧的实际操作结果
注意:ADF调试模式仅不会发布ADF自身的配置变更到生产环境,不会阻止活动对外部关联资源(Kusto、Cosmos等)的实际操作,如果你在Kusto中看不到预期的表变更,优先排查Kusto链接服务指向的集群/库是否和你查询的目标一致、表名动态表达式是否生成了不符合预期的名称。
你可以通过两种方式验证Kusto侧的操作结果:
- 在管道中追加临时校验活动:在现有管道步骤末尾新增若干Kusto查询活动,执行校验语句后可以直接在ADF活动详情中查看返回结果:
- 校验表是否存在:
.show tables | where TableName has "你设置的临时表名关键词" - 校验临时表数据写入是否正确:
['你的临时表名'] | count可以返回写入行数,['你的临时表名'] | take 10可以返回前10条数据,对比Cosmos侧的字段和内容即可验证正确性 - 校验重命名后的原始表:
['你的原始表名'] | getschema可以确认表结构是否符合预期
- 校验表是否存在:
- 直接查询Kusto操作日志:Kusto会记录所有对库的操作记录,在你操作的目标Kusto库执行如下命令,即可筛选调试时间范围内的所有相关操作:
.show operations | where StartedOn between (datetime(调试开始时间).. datetime(调试结束时间)) | where OperationName in ("TableCreate", "TableDrop", "TableRename", "DataIngest") | project StartedOn, OperationName, State, EntityName, Details
常见问题排查
- 如果未查询到任何Kusto操作记录:优先检查Kusto链接服务使用的认证身份,是否具备目标库的建表、删表、数据写入权限,权限不足时操作会直接失败,相关报错可以在ADF活动详情中查看
- 如果表名和预期不符:检查你定义表名时使用的动态表达式是否正确,确认调试时传入的管道参数、全局参数值是否和设计预期一致
内容的提问来源于stack exchange,提问作者user3391465
相关产品推荐
相关产品推荐

