Başarılı ve başarısız olduğunda verileri kopyalama ve e-posta bildirimleri gönderme

UYGULANANLAR: Azure Data Factory Azure Synapse Analytics

İpucu

Kuruluşlar için hepsi bir arada analiz çözümü olan Microsoft Fabric'te Data Factory'yi deneyin. Microsoft Fabric , veri taşımadan veri bilimine, gerçek zamanlı analize, iş zekasına ve raporlamaya kadar her şeyi kapsar. Yeni bir deneme sürümünü ücretsiz olarak başlatmayı öğrenin!

Bu öğreticide, bazı denetim akışı özelliklerini gösteren bir Data Factory işlem hattı oluşturacaksınız. Bu işlem hattı, Azure Blob Depolama içindeki kapsayıcıdan aynı depolama hesabındaki başka bir kapsayıcıya basit bir kopyalama işlemi yapar. Kopyalama etkinliği başarılı olursa, işlem hattı başarılı kopyalama işleminin ayrıntılarını (örneğin, yazılan veri miktarı) bir başarı e-postası ile gönderir. Kopyalama etkinliği başarısız olursa, işlem hattı kopyalama hatasının ayrıntılarını (örneğin, hata iletisi) bir hata e-postası ile gönderir. Öğretici boyunca parametreleri nasıl geçireceğinizi göreceksiniz.

Senaryoya üst düzey bir genel bakış: Diyagramda, başarı durumunda ayrıntıları içeren bir e-posta gönderen veya hata ayrıntılarını içeren bir e-posta gönderen bir kopyanın hedefi olan Azure Blob Depolama gösterilmektedir.

Bu öğreticide aşağıdaki adımları gerçekleştireceksiniz:

  • Veri fabrikası oluşturma.
  • Azure Depolama bağlı hizmeti oluşturma.
  • Azure blob veri kümesi oluşturma
  • Kopyalama etkinliği ve bir Web etkinliği içeren işlem hattı oluşturma
  • Etkinliklerin çıktılarını sonraki etkinliklere gönderme
  • Parametre geçirme ve sistem değişkenlerini kullanma
  • Bir işlem hattı çalıştırması başlatma
  • İşlem hattı ve etkinlik çalıştırmalarını izleme

Bu öğreticide Azure portalı kullanılır. Azure Data Factory ile etkileşim kurmak için başka mekanizmalar kullanabilirsiniz; içindekiler tablosunda "Hızlı Başlangıçlar" bölümüne bakın.

Önkoşullar

  • Azure aboneliği. Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.
  • Azure Depolama hesabı. Blob depolama alanını kaynak veri deposu olarak kullanabilirsiniz. Azure depolama hesabınız yoksa, oluşturma adımları için Depolama hesabı oluşturma makalesine bakın.
  • Azure SQL Veritabanı. Veritabanını havuz veri deposu olarak kullanabilirsiniz. Azure SQL Veritabanı'da veritabanınız yoksa, oluşturma adımları için Azure SQL Veritabanı'da veritabanı oluşturma makalesine bakın.

Blob tablosu oluşturma

  1. Not Defteri'ni başlatın. Aşağıdaki metni kopyalayıp diskinizde input.txt dosyası olarak kaydedin.

    John,Doe
    Jane,Doe
    
  2. Azure Depolama Gezgini gibi araçları kullanarak aşağıdaki adımları uygulayın:

    1. adfv2branch kapsayıcısını oluşturun.
    2. adfv2branch kapsayıcısında giriş klasörünü oluşturun.
    3. input.txt dosyasını kapsayıcıya yükleyin.

E-posta iş akışı uç noktaları oluşturma

İşlem hattından e-posta göndermeyi tetikleme amacıyla iş akışını tanımlamak için Azure Logic Apps'i kullanırsınız. Mantıksal uygulama iş akışı oluşturma hakkında daha fazla bilgi için bkz . Örnek tüketim mantıksal uygulaması iş akışı oluşturma.

Başarı e-postası iş akışı

adlı CopySuccessEmailbir Tüketim mantıksal uygulaması iş akışı oluşturun. HTTP isteği alındığında adlı İstek tetikleyicisini ekleyin ve E-posta gönder adlı Office 365 Outlook eylemini ekleyin. İstenirse, Office 365 Outlook hesabınızda oturum açın.

Başarılı e-posta iş akışının ekran görüntüsünü gösterir.

İstek tetikleyicisi için İstek Gövdesi JSON Şeması kutusunu aşağıdaki JSON ile doldurun:

{
    "properties": {
        "dataFactoryName": {
            "type": "string"
        },
        "message": {
            "type": "string"
        },
        "pipelineName": {
            "type": "string"
        },
        "receiver": {
            "type": "string"
        }
    },
    "type": "object"
}

İş akışı tasarımcısındaki İstek tetikleyicisi aşağıdaki görüntü gibi görünmelidir:

İstek tetikleyicisi ile iş akışı tasarımcısının ekran görüntüsünü gösterir.

E-posta gönder eylemi için, istek Gövdesi JSON şemasında geçirilen özellikleri kullanarak e-postayı nasıl biçimlendirmek istediğinizi özelleştirin. Örnek aşağıda verilmiştir:

E-posta gönder adlı eylemi içeren iş akışı tasarımcısının ekran görüntüsünü gösterir.

İş akışını kaydedin. Başarı e-postası iş akışınız için HTTP Post isteği URL’sini not alın:

//Success Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000

Hata e-postası iş akışı

adlı CopyFailEmailbaşka bir mantıksal uygulama iş akışı oluşturmak için aynı adımları izleyin. İstek tetikleyicisinde İstek Gövdesi JSON şema değeri aynıdır. Hata e-postasına uyarlamak için e-postanızın biçimini Subject olarak değiştirin. Örnek aşağıda verilmiştir:

Başarısız e-posta iş akışıyla iş akışı tasarımcısının ekran görüntüsünü gösterir.

İş akışını kaydedin. Hata e-postası iş akışınız için HTTP Post isteği URL’sini not alın:

//Fail Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000

Şu anda iki iş akışı URL'niz olmalıdır:

//Success Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000

//Fail Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000

Veri fabrikası oluşturma

  1. Microsoft Edge veya Google Chrome web tarayıcısını açın. Şu anda Data Factory kullanıcı arabirimi yalnızca Microsoft Edge ve Google Chrome web tarayıcılarında desteklenmektedir.

  2. Sol üstteki menüyü genişletin ve Kaynak oluştur'u seçin. Ardından Integration>Data Factory'yi seçin:>

  3. Yeni veri fabrikası sayfasında ad için ADFTutorialDataFactory adını girin.

    Yeni veri fabrikası sayfası

    Azure data factory adı küresel olarak benzersiz olmalıdır. Aşağıdaki hatayı alırsanız veri fabrikasının adını değiştirin (örneğin adınızADFTutorialDataFactory) ve oluşturmayı yeniden deneyin. Data Factory yapıtlarının adlandırma kuralları için Data Factory - Adlandırma Kuralları makalesine bakın.

    "ADFTutorialDataFactory" veri fabrikası adı kullanılamıyor.

  4. Veri fabrikasını oluşturmak istediğiniz Azure aboneliğini seçin.

  5. Kaynak Grubu için aşağıdaki adımlardan birini uygulayın:

  6. Sürüm için V2'yi seçin.

  7. Data factory için konum seçin. Açılan listede yalnızca desteklenen konumlar görüntülenir. Veri fabrikası tarafından kullanılan verileri depoları (Azure Depolama, Azure SQL Veritabanı vb.) ve işlemler (HDInsight vb.) başka bölgelerde olabilir.

  8. Panoya sabitle’yi seçin.

  9. Oluştur’a tıklayın.

  10. Oluşturma işlemi tamamlandıktan sonra, görüntüde gösterildiği gibi Data Factory sayfasını görürsünüz.

    Veri fabrikası giriş sayfasının ekran görüntüsünü gösterir.

  11. Azure Data Factory kullanıcı arabirimini (UI) ayrı bir sekmede başlatmak için Azure Data Factory Studio'yu Aç kutucuğuna tıklayın.

İşlem hattı oluşturma

Bu adımda, bir Kopyalama etkinliği ve iki Web etkinliği ile bir işlem hattı oluşturursunuz. İşlem hattını oluşturmak için aşağıdaki özellikleri kullanırsınız:

  • Veri kümeleri tarafından erişilen işlem hattına yönelik parametreler.
  • Başarı/hata e-postaları göndermek için Logic Apps iş akışlarını çağıracak web etkinliği.
  • Bir etkinliği başka bir etkinliğe bağlama (başarı veya hata durumunda)
  • Bir etkinliğin çıktısını sonraki etkinliğin girdisi olarak kullanma
  1. Data Factory kullanıcı arabiriminin giriş sayfasında Orchestrate kutucuğuna tıklayın.

    Orchestrate kutucuğunun vurgulandığı veri fabrikası giriş sayfasının ekran görüntüsünü gösterir.

  2. İşlem hattının özellikler penceresinde Parametreler sekmesine geçin ve Yeni düğmesini kullanarak String türündeki şu üç parametreyi ekleyin: sourceBlobContainer, sinkBlobContainer ve receiver.

    • sourceBlobContainer - işlem hattında kaynak blob veri kümesi tarafından tüketilen parametre.
    • sinkBlobContainer - havuz blobu veri kümesi tarafından kullanılan işlem hattındaki parametre
    • receiver - Bu parametre, işlem hattında e-posta adresi bu parametre tarafından belirtilen alıcıya başarı veya başarısızlık e-postaları gönderen iki Web etkinliği tarafından kullanılır.

    Yeni işlem hattı menüsünün ekran görüntüsünü gösterir.

  3. Etkinlikler araç kutusunda Kopyala'yı arayın ve Kopyalama etkinliğini sürükleyip işlem hattı tasarımcısının yüzeyine bırakın.

    Kopyalama etkinliğinin işlem hattı tasarımcısına sürükleyip bırakma işlemini gösteren ekran görüntüsü gösterilir.

  4. İşlem hattı tasarımcısı yüzeyine sürüklediğiniz Kopyalama etkinliğini seçin. Alttaki Kopyalama etkinliğinin Özellikler penceresinde Kaynak sekmesine geçip + Yeni’ye tıklayın. Bu adımda kopyalama etkinliği için bir kaynak veri kümesi oluşturursunuz.

    Kopyalama etkinliği için kaynak veri kümesinin nasıl oluşturulacağını gösteren ekran görüntüsü.

  5. Yeni Veri Kümesi penceresinde, en üstteki Azure sekmesini seçin ve ardından Azure Blob Depolama'ı seçin ve Devam'ı seçin.

    Azure Blob Depolama seç düğmesinin ekran görüntüsünü gösterir.

  6. Biçim seç penceresinde Sınırlandırılmış Metin'i ve devam et'i seçin.

  7. Özellikleri ayarla başlıklı yeni bir sekme görürsünüz. Veri kümesinin adını SourceBlobDataset olarak değiştirin. Bağlı Hizmet açılan listesini seçin ve +Yeni'yi seçerek kaynak veri kümenize yeni bir bağlı hizmet oluşturun.

  8. Bağlı hizmet için gerekli özellikleri doldurabileceğiniz Yeni bağlı hizmet penceresini görürsünüz.

    Yeni bağlı hizmet düğmesinin vurgulandığı veri kümesi bağlantı penceresinin ekran görüntüsünü gösterir.

  9. Yeni Bağlı Hizmet penceresinde aşağıdaki adımları tamamlayın:

    1. Ad için AzureStorageLinkedService adını girin.
    2. Depolama hesabı adı için Azure depolama hesabınızı seçin.
    3. Oluştur’a tıklayın.
  10. Ardından görüntülenen Özellikleri ayarla penceresinde Bu veri kümesini aç'ı seçerek dosya adı için parametreli bir değer girin.

    Veri kümesinin ve çekirdeğin ekran görüntüsünü gösterir; Özellikleri ayarlama ve alıntı;

  11. Klasör için @pipeline().parameters.sourceBlobContainer, klasör adı için emp.txt adını girin.

    Kaynak veri kümesi ayarlarının ekran görüntüsünü gösterir.

  12. İşlem hattı sekmesine geri dönün (veya soldaki ağaç görünümünde işlem hattına tıklayın) ve tasarımcıda Kopyalama etkinliğini seçin. Kaynak Veri Kümesi için yeni veri kümenizin seçildiğini onaylayın.

    Kaynak veri kümesinin ekran görüntüsünü gösterir.

  13. Özellikler penceresinde Havuz sekmesine geçin ve Havuz Veri Kümesi için + Yeni’ye tıklayın. Bu adımda, kaynak veri kümesi oluştururken olduğu gibi kopyalama etkinliği için bir havuz veri kümesi oluşturursunuz.

    Yeni havuz veri kümesi düğmesinin ekran görüntüsünü gösterir

  14. Yeni Veri Kümesi penceresinde Azure Blob Depolama'yi seçin, Devam'a tıklayın ve biçim seç penceresinde Sınırlanmış Metin'i yeniden seçin ve yeniden Devam'a tıklayın.

  15. Veri kümesinin Özellikleri ayarla sayfasında Ad için SinkBlobDataset yazın ve LinkedService için AzureStorageLinkedService'i seçin.

  16. Özellikler sayfasının Gelişmiş bölümünü genişletin ve Bu veri kümesini aç'ı seçin.

  17. Veri kümesi Bağlantısı sekmesinde Dosya yolunu düzenleyin. Klasör @concat(pipeline().RunId, '.txt') ve dosya adı için girin@pipeline().parameters.sinkBlobContainer. İfade, dosya adı olarak geçerli işlem hattı çalıştırmasının kimliğini kullanır. Desteklenen sistem değişkenleri ve ifadelerin listesi için bkz. Sistem değişkenleri ve İfade dili.

    Havuz veri kümesi ayarlarının ekran görüntüsünü gösterir.

  18. Üstteki işlem hattı sekmesine geri dönün. Arama kutusunda Web'i arayın ve bir Web etkinliğini sürükleyerek işlem hattı tasarımcısı yüzeyine bırakın. Etkinliğin adını SendSuccessEmailActivity olarak ayarlayın. Web Etkinliği herhangi bir REST uç noktasına çağrı yapmaya olanak tanır. Etkinlik hakkında daha fazla bilgi için bkz. Web Etkinliği. Bu işlem hattı, Logic Apps e-posta iş akışını çağırmak için bir Web Etkinliği kullanır.

    İlk Web etkinliğini sürükleyip bırakmayı gösteren bir ekran görüntüsü gösterir.

  19. Genel sekmesinden Ayarlar sekmesine geçin ve aşağıdaki adımları uygulayın:

    1. URL için başarı e-postasını gönderen Logic Apps iş akışının URL’sini belirtin.

    2. Metot için POST’u seçin.

    3. Üst bilgiler bölümünde + Üst bilgi ekle bağlantısına tıklayın.

    4. Bir üst bilgi Content-Type ekleyin ve application/json olarak ayarlayın.

    5. Gövde için aşağıdaki JSON’u belirtin.

      {
          "message": "@{activity('Copy1').output.dataWritten}",
          "dataFactoryName": "@{pipeline().DataFactory}",
          "pipelineName": "@{pipeline().Pipeline}",
          "receiver": "@pipeline().parameters.receiver"
      }
      

      İleti gövdesi aşağıdaki özellikleri içerir:

      • İleti - değerini @{activity('Copy1').output.dataWrittengeçirme. Önceki kopyalama etkinliğinin bir özelliğine erişir ve dataWritten değerini geçirir. Hata durumunda @{activity('CopyBlobtoBlob').error.message yerine hata çıktısını geçirir.

      • Data Factory Adı - Bu değerinin @{pipeline().DataFactory} geçirilmesi, karşılık gelen veri fabrikası adına erişmenizi sağlayan bir sistem değişkenidir. Sistem değişkenlerinin listesi için Sistem Değişkenleri makalesine bakın.

      • İşlem Hattı Adı - değerini @{pipeline().Pipeline}geçirme. Bu da ilgili işlem hattı adına erişmenize olanak tanıyan bir sistem değişkenidir.

      • Alıcı - "@pipeline().parameters.receiver" değerini geçirme. İşlem hattı parametrelerine erişim.

        İlk Web etkinliğinin ayarlarının ekran görüntüsünü gösterir.

  20. Kopyalama etkinliği yanındaki yeşil onay kutusunu sürükleyip Web etkinliğine bırakarak Kopyalama etkinliğini Web etkinliğine bağlayın.

    Kopyalama etkinliği ilk Web etkinliğine nasıl bağlanacaklarını gösteren ekran görüntüsü gösterilir.

  21. Etkinlikler araç kutusundaki başka bir Web etkinliğini sürükleyip işlem hattı tasarımcısının yüzeyine bırakın ve ad alanını SendFailureEmailActivity olarak ayarlayın.

    İkinci Web etkinliğinin adının ekran görüntüsünü gösterir.

  22. Ayarlar sekmesine geçin ve aşağıdaki adımları uygulayın:

    1. URL için hata e-postasını gönderen Logic Apps iş akışının URL’sini belirtin.

    2. Metot için POST’u seçin.

    3. Üst bilgiler bölümünde + Üst bilgi ekle bağlantısına tıklayın.

    4. Bir üst bilgi Content-Type ekleyin ve application/json olarak ayarlayın.

    5. Gövde için aşağıdaki JSON’u belirtin.

      {
          "message": "@{activity('Copy1').error.message}",
          "dataFactoryName": "@{pipeline().DataFactory}",
          "pipelineName": "@{pipeline().Pipeline}",
          "receiver": "@pipeline().parameters.receiver"
      }
      

      İkinci Web etkinliğinin ayarlarının ekran görüntüsünü gösterir.

  23. İşlem hattı tasarımcısında Kopyalama etkinliğinin sağ tarafındaki kırmızı X düğmesini seçin ve sürükleyip yeni oluşturduğunuz SendFailureEmailActivity üzerine bırakın.

    İşlem hattı tasarımcısındaki Kopyalama etkinliği Hata'nın nasıl seçildiğini gösteren ekran görüntüsü.

  24. İşlem hattını doğrulamak için araç çubuğundaki Doğrula düğmesine tıklayın. >> düğmesine tıklayarak İşlem Hattı Doğrulama Çıktı penceresini kapatın.

    İşlem hattını doğrula düğmesinin ekran görüntüsünü gösterir.

  25. Varlıkları (veri kümeleri, işlem hatları, vb.) Data Factory hizmetinde yayımlamak için Tümünü Yayımla’yı seçin. Başarıyla yayımlandı iletisini görene kadar bekleyin.

    Veri fabrikası portalında Yayımla düğmesinin ekran görüntüsünü gösterir.

Başarılı olan bir işlem hattı çalıştırması tetikleme

  1. Bir işlem hattı çalışması tetiklemek için araç çubuğunda Tetikle’ye tıklayıp Şimdi Tetikle’ye tıklayın.

    Şimdi Tetikle düğmesinin ekran görüntüsünü gösterir.

  2. İşlem Hattı Çalıştırması penceresinde aşağıdaki adımları uygulayın:

    1. sourceBlobContainer parametresi için adftutorial/adfv2branch/input yolunu girin.

    2. sinkBlobContainer parametresi için adftutorial/adfv2branch/output yolunu girin.

    3. Receiver parametresine ait bir e-posta adresi girin.

    4. Son’a tıklayın

      İşlem hattı çalıştırma parametreleri

Başarılı işlem hattı çalıştırmasını izleme

  1. İşlem hattı çalıştırmasını izlemek için soldaki İzleyici sekmesine geçin. El ile tetiklediğiniz işlem hattı çalıştırmasını görürsünüz. Listeyi yenilemek için Yenile düğmesini kullanın.

    Başarılı işlem hattı çalıştırması

  2. Bu işlem hattıyla ilişkili etkinlik çalıştırmalarını görüntülemek için Eylemler sütunundaki ilk bağlantıya tıklayın. Üst taraftan İşlem Hatları’na tıklayarak önceki görünüme dönebilirsiniz. Listeyi yenilemek için Yenile düğmesini kullanın.

    Etkinlik çalıştırmalarının listesinin nasıl görüntülendiğini gösteren ekran görüntüsü.

Başarısız olan bir işlem hattı çalıştırması tetikleme

  1. Soldaki Düzenle sekmesine geçin.

  2. Bir işlem hattı çalışması tetiklemek için araç çubuğunda Tetikle’ye tıklayıp Şimdi Tetikle’ye tıklayın.

  3. İşlem Hattı Çalıştırması penceresinde aşağıdaki adımları uygulayın:

    1. sourceBlobContainer parametresi için adftutorial/dummy/input yolunu girin. Sahte klasörün adftutorial kapsayıcısında bulunmadığından emin olun.
    2. sinkBlobContainer parametresi için adftutorial/dummy/output yolunu girin.
    3. Receiver parametresine ait bir e-posta adresi girin.
    4. Finish (Son) düğmesine tıklayın.

Başarısız olan işlem hattı çalıştırmasını izleme

  1. İşlem hattı çalıştırmasını izlemek için soldaki İzleyici sekmesine geçin. El ile tetiklediğiniz işlem hattı çalıştırmasını görürsünüz. Listeyi yenilemek için Yenile düğmesini kullanın.

    İşlem hattı çalıştırılamadı

  2. Hatayla ilgili ayrıntıları görmek için işlem hattı çalıştırmasına yönelik Hata bağlantısına tıklayın.

    İşlem hattı hatası

  3. Bu işlem hattıyla ilişkili etkinlik çalıştırmalarını görüntülemek için Eylemler sütunundaki ilk bağlantıya tıklayın. Listeyi yenilemek için Yenile düğmesini kullanın. İşlem hattında Kopyalama etkinliğinin başarısız olduğuna dikkat edin. Web etkinliği, hata e-postasını belirtilen alıcıya gönderdi.

    Etkinlik çalıştırmaları

  4. Hatayla ilgili ayrıntıları görmek için Eylemler sütunundaki Hata bağlantısına tıklayın.

    Etkinlik çalıştırma hatası

Bu öğreticide aşağıdaki adımları gerçekleştirdiniz:

  • Veri fabrikası oluşturma.
  • Azure Depolama bağlı hizmeti oluşturma.
  • Azure blob veri kümesi oluşturma
  • Kopyalama etkinliği ve bir web etkinliği içeren işlem hattı oluşturma
  • Etkinliklerin çıktılarını sonraki etkinliklere gönderme
  • Parametre geçirme ve sistem değişkenlerini kullanma
  • Bir işlem hattı çalıştırması başlatma
  • İşlem hattı ve etkinlik çalıştırmalarını izleme

Şimdi, Azure Data Factory hakkında daha fazla bilgi için Kavramlar bölümüne geçebilirsiniz.