Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
ŞUNLARA UYGULANIR:
Azure Data Factory
Azure Synapse Analytics
İpucu
Microsoft Fabric'daki
Bu makalede, farklı yazılım geliştirme setleri (SDK) kullanarak bir veri fabrikasındaki işlem hattının nasıl izleneceği açıklanmaktadır.
Not
Azure ile etkileşime geçmek için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz. Azure PowerShell yükleme. Az PowerShell modülüne nasıl geçiş yapılacağını öğrenmek için bkz. AzureRM'den Az Azure PowerShell dağıtma.
Veri aralığı
Data Factory, işlem hattı çalıştırma verilerini yalnızca 45 gün boyunca depolar. Data Factory işlem hattı çalıştırmalarıyla ilgili verileri program aracılığıyla sorguladığınızda (örneğin, PowerShell komutuyla Get-AzDataFactoryV2PipelineRun ) isteğe bağlı LastUpdatedAfter ve LastUpdatedBefore parametreler için en fazla tarih yoktur. Ancak, örneğin geçen yıla ait verileri sorgularsanız, hata almazsınız, ancak yalnızca son 45 güne ait işlem hattı çalıştırma verilerini alırsınız.
İşlem hattı çalıştırma verilerini 45 günden fazla tutmak istiyorsanız Azure Monitor ile kendi tanılama günlük kaydınızı ayarlayın.
Boru hattı çalıştırma bilgileri
İşlem hattı çalıştırma özellikleri için PipelineRun API başvurusuna bakın. İşlem hattı çalıştırmasının yaşam döngüsü sırasında farklı bir durumu vardır; çalıştırma durumunun olası değerleri aşağıda listelenmiştir:
- Kuyruğa alındı
- Devam Ediyor
- Başarılı Oldu
- Başarısız oldu
- İptal Ediliyor
- İptal edildi
.NET
.NET SDK kullanarak işlem hattı oluşturma ve izleme hakkında ayrıntılı bilgi için bkz. .NET kullanarak veri fabrikası ve işlem hattı oluşturma.
Verilerin kopyalanması bitene kadar işlem hattı çalıştırılmasının durumunu sürekli olarak denetlemek için aşağıdaki kodu ekleyin.
// Monitor the pipeline run Console.WriteLine("Checking pipeline run status..."); PipelineRun pipelineRun; while (true) { pipelineRun = client.PipelineRuns.Get(resourceGroup, dataFactoryName, runResponse.RunId); Console.WriteLine("Status: " + pipelineRun.Status); if (pipelineRun.Status == "InProgress" || pipelineRun.Status == "Queued") System.Threading.Thread.Sleep(15000); else break; }Okuma/yazma verilerinin boyutu gibi kopyalama etkinliği çalıştırma ayrıntılarını alan aşağıdaki kodu ekleyin.
// Check the copy activity run details Console.WriteLine("Checking copy activity run details..."); RunFilterParameters filterParams = new RunFilterParameters( DateTime.UtcNow.AddMinutes(-10), DateTime.UtcNow.AddMinutes(10)); ActivityRunsQueryResponse queryResponse = client.ActivityRuns.QueryByPipelineRun( resourceGroup, dataFactoryName, runResponse.RunId, filterParams); if (pipelineRun.Status == "Succeeded") Console.WriteLine(queryResponse.Value.First().Output); else Console.WriteLine(queryResponse.Value.First().Error); Console.WriteLine("\nPress any key to exit..."); Console.ReadKey();
.NET SDK ile ilgili tüm belgeler için bkz. Data Factory .NET SDK başvurusu.
Python
Python SDK kullanarak işlem hattı oluşturma ve izleme hakkında ayrıntılı bilgi için bkz. Python kullanarak veri fabrikası ve işlem hattı oluşturma.
İşlem hattı çalıştırmasını izlemek için aşağıdaki kodu ekleyin:
# Monitor the pipeline run
time.sleep(30)
pipeline_run = adf_client.pipeline_runs.get(
rg_name, df_name, run_response.run_id)
print("\n\tPipeline run status: {}".format(pipeline_run.status))
filter_params = RunFilterParameters(
last_updated_after=datetime.now() - timedelta(1), last_updated_before=datetime.now() + timedelta(1))
query_response = adf_client.activity_runs.query_by_pipeline_run(
rg_name, df_name, pipeline_run.run_id, filter_params)
print_activity_run_details(query_response.value[0])
Python SDK ile ilgili tüm belgeler için bkz. Data Factory Python SDK başvurusu.
REST API
REST API kullanarak işlem hattı oluşturma ve izleme hakkında ayrıntılı bilgi için bkz . REST API kullanarak veri fabrikası ve işlem hattı oluşturma.
İşlem hattı çalıştırma durumunu, verileri kopyalama işlemi tamamlanıncaya kadar sürekli olarak denetlemek için aşağıdaki betiği çalıştırın.
$request = "https://management.azure.com/subscriptions/${subsId}/resourceGroups/${resourceGroup}/providers/Microsoft.DataFactory/factories/${dataFactoryName}/pipelineruns/${runId}?api-version=${apiVersion}" while ($True) { $response = Invoke-RestMethod -Method GET -Uri $request -Header $authHeader Write-Host "Pipeline run status: " $response.Status -foregroundcolor "Yellow" if ( ($response.Status -eq "InProgress") -or ($response.Status -eq "Queued") ) { Start-Sleep -Seconds 15 } else { $response | ConvertTo-Json break } }Kopyalama etkinliği çalıştırma ayrıntılarını (örneğin, okunan/yazılan verilerin boyutu) almak için aşağıdaki betiği çalıştırın.
$request = "https://management.azure.com/subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.DataFactory/factories/${factoryName}/pipelineruns/${runId}/queryActivityruns?api-version=${apiVersion}&startTime="+(Get-Date).ToString('yyyy-MM-dd')+"&endTime="+(Get-Date).AddDays(1).ToString('yyyy-MM-dd')+"&pipelineName=Adfv2QuickStartPipeline" $response = Invoke-RestMethod -Method POST -Uri $request -Header $authHeader $response | ConvertTo-Json
REST API ile ilgili tüm belgeler için bkz . Data Factory REST API başvurusu.
PowerShell
PowerShell kullanarak işlem hattı oluşturma ve izleme hakkında ayrıntılı bilgi için bkz . PowerShell kullanarak veri fabrikası ve işlem hattı oluşturma.
İşlem hattı çalıştırma durumunu, verileri kopyalama işlemi tamamlanıncaya kadar sürekli olarak denetlemek için aşağıdaki betiği çalıştırın.
while ($True) { $run = Get-AzDataFactoryV2PipelineRun -ResourceGroupName $resourceGroupName -DataFactoryName $DataFactoryName -PipelineRunId $runId if ($run) { if ( ($run.Status -ne "InProgress") -and ($run.Status -ne "Queued") ) { Write-Output ("Pipeline run finished. The status is: " + $run.Status) $run break } Write-Output ("Pipeline is running...status: " + $run.Status) } Start-Sleep -Seconds 30 }Kopyalama etkinliği çalıştırma ayrıntılarını (örneğin, okunan/yazılan verilerin boyutu) almak için aşağıdaki betiği çalıştırın.
Write-Host "Activity run details:" -foregroundcolor "Yellow" $result = Get-AzDataFactoryV2ActivityRun -DataFactoryName $dataFactoryName -ResourceGroupName $resourceGroupName -PipelineRunId $runId -RunStartedAfter (Get-Date).AddMinutes(-30) -RunStartedBefore (Get-Date).AddMinutes(30) $result Write-Host "Activity 'Output' section:" -foregroundcolor "Yellow" $result.Output -join "`r`n" Write-Host "\nActivity 'Error' section:" -foregroundcolor "Yellow" $result.Error -join "`r`n"
PowerShell cmdlet'ler hakkında tüm belgeler için, bkz Data Factory PowerShell cmdlet başvurusu.
İlgili içerik
Data Factory işlem hatlarını izlemek için Azure Monitor'ü nasıl kullanacağınızı öğrenmek amacıyla Azure Monitor kullanarak işlem hatlarını izleme makalesine bakın.