Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 获取Azure Datafactory管道运行详细信息_Python_Azure - Fatal编程技术网

Python 获取Azure Datafactory管道运行详细信息

Python 获取Azure Datafactory管道运行详细信息,python,azure,Python,Azure,凭证=ServicePrincipalCredentials(客户端id=客户端id,机密=机密,租户=租户) adf_client=DataFactoryManagementClient(凭据、订阅id) run_response=adf_client.pipelines.create_run(rg_name,df_name,pipeline_nm,{}) #监视管道运行 pipeline\u run=adf\u client.pipeline\u runs.get(rg\u name、df\

凭证=ServicePrincipalCredentials(客户端id=客户端id,机密=机密,租户=租户) adf_client=DataFactoryManagementClient(凭据、订阅id) run_response=adf_client.pipelines.create_run(rg_name,df_name,pipeline_nm,{}) #监视管道运行 pipeline\u run=adf\u client.pipeline\u runs.get(rg\u name、df\u name、run\u response.run\u id) 而(管道运行状态=='InProgress'或管道运行状态=='Queued'): #打印(“[INFO]:管道运行状态:{}”。格式(管道运行状态)) 时间。睡眠(状态检查时间) pipeline\u run=adf\u client.pipeline\u runs.get(rg\u name、df\u name、run\u response.run\u id) 打印(“[INFO]:管道运行状态:{}”。格式(管道运行状态)) 打印(“”)


活动运行与管道运行不同,如果要获取管道运行详细信息,请执行以下步骤

一,

二,。及

3.导航到门户中的数据工厂->
访问控制(IAM)
->
添加角色分配
->将您的应用程序添加为角色,例如
参与者
,详细信息如下

4.安装软件包

pip install azure-mgmt-resource
pip install azure-mgmt-datafactory
5.然后使用下面的代码根据输入的过滤条件查询工厂中的管道运行情况

from azure.common.credentials import ServicePrincipalCredentials
from azure.mgmt.datafactory import DataFactoryManagementClient
from azure.mgmt.datafactory.models import *
from datetime import datetime, timedelta

subscription_id = "<subscription-id>"
rg_name = "<resource-group-name>"
df_name = "<datafactory-name>"

tenant_id = "<tenant-id>"
client_id = "<application-id (i.e client id)>"
client_secret = "<client-secret>"

credentials = ServicePrincipalCredentials(client_id=client_id, secret=client_secret, tenant=tenant_id)
adf_client = DataFactoryManagementClient(credentials, subscription_id)


filter_params = RunFilterParameters(last_updated_after=datetime.now() - timedelta(1), last_updated_before=datetime.now() + timedelta(1))
pipeline_runs = adf_client.pipeline_runs.query_by_factory(resource_group_name=rg_name, factory_name=df_name, filter_parameters = filter_params)

for pipeline_run in pipeline_runs.value:
    print(pipeline_run)

能否提供您正在运行的代码的示例?查看实际代码以了解您提到的方法调用的上下文将很有帮助。当我尝试运行时:list(adf_client.activity_runs.list_by_pipeline_run(rg_name,df_name,pipeline_run.run_id,datetime.now()-timedelta(1),datetime.now()+timedelta(1)))Im获取错误“ActivityRunOperations”对象没有属性“list\u by\u pipeline\u run”。我如何解决这个问题。你能按照我的完整步骤来做吗?您能将您的问题编辑为可读吗?您好,如果有帮助,请接受它作为答案,只需单击选项,如“非常感谢”。-)如何修改此选项以获得触发运行?
from azure.common.credentials import ServicePrincipalCredentials
from azure.mgmt.datafactory import DataFactoryManagementClient
from azure.mgmt.datafactory.models import *
from datetime import datetime, timedelta

subscription_id = "<subscription-id>"
rg_name = "<resource-group-name>"
df_name = "<datafactory-name>"

tenant_id = "<tenant-id>"
client_id = "<application-id (i.e client id)>"
client_secret = "<client-secret>"

credentials = ServicePrincipalCredentials(client_id=client_id, secret=client_secret, tenant=tenant_id)
adf_client = DataFactoryManagementClient(credentials, subscription_id)


filter_params = RunFilterParameters(last_updated_after=datetime.now() - timedelta(1), last_updated_before=datetime.now() + timedelta(1))
pipeline_runs = adf_client.pipeline_runs.query_by_factory(resource_group_name=rg_name, factory_name=df_name, filter_parameters = filter_params)

for pipeline_run in pipeline_runs.value:
    print(pipeline_run)
specific_pipeline_run = adf_client.pipeline_runs.get(resource_group_name=rg_name,factory_name=df_name,run_id= "xxxxxxxx")
print(specific_pipeline_run)