【发布时间】:2021-09-18 10:34:18
【问题描述】:
我想在 ADF 中对我的输入数据执行一些验证检查,并且任何验证失败都想捕获到 Azure 日志分析中。
请有人指导我如何通过 Azure 数据工厂将自定义日志捕获到日志分析中。
任何示例数据流/管道都会非常有帮助。
谢谢, 库马尔
【问题讨论】:
标签: azure-data-factory azure-data-factory-2 azure-log-analytics
我想在 ADF 中对我的输入数据执行一些验证检查,并且任何验证失败都想捕获到 Azure 日志分析中。
请有人指导我如何通过 Azure 数据工厂将自定义日志捕获到日志分析中。
任何示例数据流/管道都会非常有帮助。
谢谢, 库马尔
【问题讨论】:
标签: azure-data-factory azure-data-factory-2 azure-log-analytics
如果我理解正确,您希望能够获取 ADF 的 Azure Monitor 日志并查询/存储这些日志?
好消息是,您希望看到的大部分信息都已通过 Azure Monitor 收集。
提取信息的一种简单方法是使用 Azure Monitor REST API。然后,您可以将响应存储到文件或表中,或者您可以只查询特定管道或触发器等的 api。
以下是授权示例和使用 Azure Monitor API 的链接: https://docs.microsoft.com/en-us/azure/azure-monitor/essentials/rest-api-walkthrough#authenticating-azure-monitor-requests
这是使用 Azure Monitor REST API 获取活动运行数据的 HTTP URL 示例(动态内容语法):
@{concat('https://management.azure.com/subscriptions/', linkedService().SubscriptionID, '/resourceGroups/', linkedService().ResourceGroupName, '/providers/Microsoft.DataFactory/factories/', linkedService().DataFactoryName, '/pipelineruns/', linkedService().RunID, '/queryActivityruns?api-version=2018-06-01')}
以下是可以从 Azure Monitor 中提取的所有不同 ADF 指标: https://docs.microsoft.com/en-us/azure/data-factory/monitor-using-azure-monitor#data-factory-metrics
以下是 ADF 中可用于调用 REST api 的 REST 链接服务的示例:
然后,您可以创建一个数据集,将所有值传递给链接服务,以便您可以调用 API,并将响应复制到数据库,如下所示:
这个特定示例获取特定管道 RunID 的状态,但它可以比这更广泛。 这是请求正文的样子,以便我可以过滤到最后一天失败的管道:
【讨论】:
我自己正在研究这个问题,据我所知,您必须使用 REST 或 HTTP 连接器向 Log Analytics 中的 HTTP 数据收集器 API 发送 POST 请求。更多细节在这里:https://docs.microsoft.com/en-gb/azure/azure-monitor/logs/data-collector-api
【讨论】: