查询ADF管道运行时LatestOnly过滤器失效问题求助
解决Azure Data Factory queryPipelineRuns中LatestOnly过滤器不生效的问题
问题分析
你尝试使用LatestOnly过滤器排除失败后重跑成功的管道记录,但始终无效,核心原因是过滤器的values传入了字符串类型的"true",而该过滤器要求传入布尔类型的true。
正确的请求体配置
将LatestOnly过滤器的values改为布尔值true(不带引号),以下是修正后的请求体示例:
{ "lastUpdatedAfter": "2024-01-07T21:00:00.0000000Z", "lastUpdatedBefore": "2024-01-09T16:59:39.7436021Z", "filters": [ {"operand": "LatestOnly", "operator": "Equals", "values": [true]}, {"operand": "Status", "operator": "Equals", "values": ["Failed"]}, {"operand": "PipelineName", "operator": "In", "values": ["Pipeline1", "Pipeline2"]} ] }
关键说明
LatestOnly过滤器的作用是仅保留每个触发实例对应的最新管道运行记录:当管道失败后重跑成功时,原失败记录的isLatest会变为false,设置values: [true]即可过滤掉这类非最新的失败记录。- 严格遵循JSON格式要求:布尔值不需要加引号,字符串值(如状态、管道名称)则必须用双引号包裹。
- 验证标准:修改后返回的记录中
isLatest字段应为true,且状态为Failed,完全符合你排查“最终失败且未被成功重跑”管道的需求。
内容的提问来源于stack exchange,提问作者huisek
相关产品推荐
相关产品推荐

