ADF主管道输入参数监控与Trigger Runs显示优化问询
问题解决方案
一、在ADF Monitor中显示带参数的管道运行名称
可以通过动态设置管道运行的显示名称实现直接查看参数的需求,具体操作如下:
- 打开主管道里的
Execute Pipeline活动,切换到「Settings」标签页 - 在「Pipeline run display name」输入框中,用动态表达式拼接管道名和参数值,示例表达式:
@concat('子管道名称_', pipeline().parameters.目标表名) - 保存配置后重新触发主管道,在「Monitor -> Trigger Runs」里就能看到类似
子管道名称_用户表的运行条目,无需进入详情即可识别本次运行的参数值
如果是主管道本身需要显示参数,同样可以在触发配置(手动触发或触发器定义)中,把运行显示名称设为动态表达式,比如:@concat('主管道名称_', trigger().parameters.表名参数)
二、Grafana+Prometheus监控管道输入参数的方案
Azure Monitor默认不会将管道输入参数作为内置指标暴露,需要通过自定义日志上报的方式实现监控,步骤如下:
- 配置Log Analytics工作区:创建或使用已有Log Analytics工作区,用于存储管道参数的自定义日志
- 在ADF中添加参数上报逻辑:
- 在子管道开头添加
Web活动,调用Azure Monitor Data Collector API,将管道参数(如目标表名、运行ID)作为自定义字段发送到Log Analytics - 动态生成的请求体示例:
{ "Time": "@utcNow()", "PipelineName": "@pipeline().PipelineName", "TargetTableName": "@pipeline().parameters.目标表名", "RunId": "@pipeline().RunId" } - 配置Web活动的请求头和URL,使用Service Principal或托管标识完成权限授权
- 在子管道开头添加
- Prometheus抓取自定义日志:
- 配置Azure Monitor Exporter,将Log Analytics中的自定义日志表(如
CustomLogs_管道参数表_CL)作为数据源 - 设置Exporter的查询规则,提取参数字段作为Prometheus指标的标签或值
- 配置Azure Monitor Exporter,将Log Analytics中的自定义日志表(如
- Grafana可视化配置:在Grafana中添加Prometheus数据源,创建面板查询提取后的参数指标,实现按表名、管道名称筛选查看运行记录
备注:也可以通过ADF的「Diagnostic Settings」,将包含参数的管道运行日志发送到Log Analytics,再通过Prometheus Exporter同步到Grafana,这种方式无需额外添加Web活动,但需要在Diagnostic Settings中开启「Pipeline runs」日志并确保参数字段被包含
内容的提问来源于stack exchange,提问作者Karol Bakiera
相关产品推荐
相关产品推荐

