Alıştırma - IoT telemetrisinin işlenmesini uygulama

Tamamlandı

Bu alıştırmada kuralları yapılandırmak ve IoT telemetri verilerini dışarı aktarmak için Azure IoT Central uygulamalarını kullanmaya genel bir bakış sağlanmaktadır. Daha fazla bilgi için bkz.

Bu alıştırmada şunları yapacaksınız:

  • HTTP isteği yükünü günlüğe kaydeden bir Azure işlevi oluşturun.
  • Azure IoT Central uygulamasının IoT telemetri kurallarını yapılandırın ve doğrulayın.
  • IoT telemetri verilerini depolayacak bir Azure Depolama hesabı oluşturun.
  • Azure IoT Central uygulamasının veri dışarı aktarmasını yapılandırın ve doğrulayın.

Önkoşullar

  • Bir Azure aboneliği
  • Azure aboneliğiyle ilişkilendirilmiş Microsoft Entra kiracısında ve Azure aboneliğinde Sahip veya Katkıda Bulunan rolüne sahip Genel Yönetici istrator rolüne sahip bir Microsoft hesabı veya Microsoft Entra hesabı
  • Azure IoT Central'ı ayarlama alıştırma biriminin tamamlanması

HTTP isteği yükünü günlüğe kaydeden bir Azure işlevi oluşturma

Azure IoT Central uygulama kurallarını yapılandırmadan önce, kural işlemeyi doğrulamaya yardımcı olacak bir Azure İşlevi uygulaması oluşturacaksınız. Bulutta yerel uygulamanızı uygularken, Azure İşlevi uygulamasını kolayca HTTP web kancası işlevselliğini destekleyen diğer bileşenlerle değiştirebilirsiniz.

  1. Bir web tarayıcısında Azure portalına gidin ve bu modülde kullanmakta olduğunuz Azure aboneliğine erişmek için oturum açın.

  2. Arama yapmak için Azure portalı sayfasının başındaki Kaynakları, hizmetleri ve belgeleri ara kutusunu kullanın ve İşlev Uygulaması'nı seçin.

  3. İşlev Uygulaması dikey penceresinde + Yeni veya + Oluştur'u seçin.

  4. İşlev Uygulaması Oluştur dikey penceresinin Temel bilgiler sekmesinde aşağıdaki ayarları yapılandırın ve gözden geçir ve oluştur'u seçin:

    Ayar Yapılandırma
    Abonelik Bu modülde kullanmakta olduğunuz Azure aboneliğinin adını seçin.
    Kaynak Grubu iot-central-apps-RG adlı yeni bir kaynak grubu oluşturun.
    İşlev Uygulamasının adı Küçük harf, rakam veya kısa çizgilerden oluşan ve harfle başlayan benzersiz bir ad girin.
    Yayımlama Kod’u seçin.
    Çalışma zamanı yığını .NET'i seçin.
    Sürüm 3.1'i seçin.
    Bölge Tercihen Azure IoT Central dağıtımınızın konumuyla eşleşen, laboratuvar ortamınızın konumuna en yakın Azure bölgesini seçin.
    İşletim Sistemi Windows
    Plan türü Kullanım (Sunucusuz)

    Screenshot of the Azure portal Create Function App blade Basics tab.

  5. Oluştur’u seçin.

    Dekont

    Azure İşlevi uygulaması sağlama işleminin tamamlanmasını bekleyin. Bu işlem iki dakika kadar sürebilir.

  6. Azure İşlevi uygulaması sağlama durumu dikey penceresiyle Azure portalını görüntüleyen tarayıcı penceresinde Kaynağa git'i seçin.

  7. Azure İşlevi uygulaması dikey penceresinde İşlevler'i ve ardından + Oluştur'u seçin.

  8. İşlev oluştur dikey penceresinde HTTP tetikleyici şablonu girişini ve ardından Oluştur'u seçin. İstenirse, HTTP tetikleyici şablonu için varsayılan değerleri kabul edin.

    Screenshot of the Azure portal Azure Function app Add function blade.

  9. HttpTrigger1 dikey penceresinin dikey menü çubuğunda Kod + Test'i seçin.

  10. HttpTrigger1 üzerinde | Kod + Test dikey penceresi, mevcut kodu aşağıdaki içerikle değiştirin ve ardından kaydet'i seçerek değişikliklerinizi kaydedin:

    #r "Newtonsoft.Json"
    
    using System.Net;
    using Microsoft.AspNetCore.Mvc;
    using Microsoft.Extensions.Primitives;
    using Newtonsoft.Json;
    
    public static async Task<IActionResult> Run(HttpRequest req, ILogger log)
    {
        log.LogInformation("C# HTTP trigger function processed a request.");
    
        string requestBody = await new StreamReader(req.Body).ReadToEndAsync();
        dynamic data = JsonConvert.DeserializeObject(requestBody);
    
        string responseMessage = $"Payload: {data}. \nThis HTTP triggered function executed successfully."; 
        log.LogInformation(responseMessage);
    
        return new OkObjectResult(responseMessage);
    }
    

    Dekont

    İşlev, HTTP isteğinin yükünü günlüğe kaydeder. Bu, bu modüldeki önceki alıştırmada oluşturduğunuz Azure IoT Central uygulaması tarafından işlev uygulamasının uç noktasına iletilen telemetri verilerini temsil etmelidir.

  11. HttpTrigger1 üzerinde | Kod + Test dikey penceresi, İşlev URL'sini al'ı seçin ve ardından Azure işlev URL'sinin değerini kaydedin.

  12. Yeni oluşturulan işlevi test etmek için HttpTrigger1 | Kod + Test dikey penceresi, Test/Çalıştır'ı seçin. Giriş sekmesini ve ardından Çalıştır'ı seçin.

    Screenshot of the Code + Test blade of the HttpTrigger1 blade with the Input tab selected.

  13. Sonuçları doğrulamak için HttpTrigger1 | Kod + Test dikey penceresi, günlük bölmesini gözden geçirin ve yük verilerinin Çıkış sekmesinde görüntülenen veriyle eşleşip eşleşmediğini doğrulayın.

    Screenshot of the Code + Test blade of the HttpTrigger1 blade with the Output tab selected.

    Dekont

    Günlük bölmesinde sonuçları oluşturmak için ikinci kez çalıştır'ı seçmeniz gerekebilir.

Azure IoT Central uygulamasının IoT telemetri kurallarını yapılandırma ve doğrulama

  1. Başka bir web tarayıcısı penceresi başlatın ve IoT Central uygulamalarım sayfasına gidin.

  2. İstenirse, Azure IoT Central'ı ayarlama alıştırma ünitesinde kullandığınız Azure aboneliğine erişmek için oturum açın.

  3. Uygulamalarım sayfasında adatum-iot-custom-application girişini seçin.

  4. Dikey menüde, Genişlet'in altında Kurallar'ı seçin.

  5. Kurallar sayfasında Kural oluştur'u seçin ve aşağıdaki ayarları yapılandırın:

    Ayar Yapılandırma
    Kural adı Adatum IoT özel uygulama testi kuralını girin.
    Cihaz şablonu Raspberry Pi'yi seçin.
    Toplam süre Zaman aralığı değeri 5 dakikaya ayarlanmış olarak Açık duruma getirin.
    Telemetri Nem'i seçin.
    İşleç Şundan büyüktür değerini seçin.
    Toplama Ortalama'ya tıklayın.
    Değer girin 30 girin.
    Eylem + Web Kancası'nın seçin.
    Görünen ad Azure işlevi web kancası girin.
    Geri arama URL'si Bu alıştırmanın önceki görevine kaydettiğiniz Azure işlev URL'sinin değerini yapıştırın.

    Dekont

    Nem telemetrisinin değeri, web kancası işlevselliğini çağırmak ve işlevi tetikleme amacıyla kasıtlı olarak yapay olarak düşüktür. Gerçek hayattaki senaryolarda, uyarı oluşturmayı veya düzeltme eylemi gerçekleştirmeyi garanti eden koşula karşılık olacak şekilde ayarlayabilirsiniz.

  6. Kurallar sayfasında Bitti'yi ve ardından Kaydet'i seçin.

  7. Bu modülün önceki alıştırmasında kullandığınız Raspberry Pi Azure IoT Online Simulator sayfasını gösteren tarayıcı penceresine geçin. Bu sayfada, simülasyon cihazının Azure IoT Central uygulamasına ileti gönderdiğini doğrulayın. Simülatör durdurulduysa, kod bölmesinden sonra doğrudan çalıştır'ı seçin.

  8. HttpTrigger1 'i görüntüleyen web tarayıcısı penceresine geri dönme | Azure portalında Kod + Test dikey penceresi. Dikey menüde İzleyici girişini seçin ve HttpTrigger1 | Kod + Test dikey penceresi, Günlükler sekmesini seçin.

  9. Günlükler bölmesinde, bu görevin önceki bölümlerinde yapılandırdığınız Azure IoT Central uygulama web kancasından kaynaklanan HTTP tetikleyicisine yanıt olarak oluşturulan iletilerin görüntülendiğini doğrulayın.

IoT telemetri verilerini depolayan bir Azure Depolama hesabı oluşturma

  1. Azure portalını görüntüleyen web tarayıcısı penceresine geçin.

  2. Azure portalında Kaynakları, hizmetleri ve belgeleri ara metin kutusunu kullanarak hesapları arayın ve Depolama seçin.

  3. Depolama hesapları dikey penceresinde + Yeni veya + Oluştur'u seçin.

  4. Depolama hesabı oluştur dikey penceresinin Temel Bilgiler sekmesinde aşağıdaki ayarları yapılandırın (diğerlerini varsayılan değerleriyle bırakın):

    Ayar Yapılandırma
    Abonelik Bu modülde kullanmakta olduğunuz Azure aboneliğinin adını seçin.
    Kaynak Grubu iot-central-apps-RG'yi seçin.
    Depolama hesabı adı 3 ile 24 arasında küçük harf ve rakam içeren ve harfle başlayan benzersiz bir ad girin.
    Performans Standart'ı seçin.
    Yedeklilik Yerel olarak yedekli depolama (LRS) seçeneğini belirleyin

    Screenshot of the Azure portal, Create storage account blade, Basics tab.

  5. Depolama hesabı oluştur dikey penceresinin Temel bilgiler sekmesinde Gözden Geçir ve oluştur'u ve ardından Oluştur'u seçin.

    Dekont

    Azure depolama hesabı sağlama işleminin tamamlanmasını bekleyin. Bu işlem yaklaşık iki dakika sürebilir.

  6. Sağlama tamamlandıktan sonra Kaynağa git'i seçin.

  7. Azure depolama hesabı dikey penceresindeki dikey menüde Kapsayıcılar'ı ve ardından + Kapsayıcı'yı seçin.

  8. Yeni kapsayıcı dikey penceresindeki Ad metin kutusuna iotcontainer girin, Genel erişim düzeyini Özel (anonim erişim yok) olarak bırakın ve oluştur'u seçin.

    Screenshot of the Azure portal, New container blade.

  9. Azure depolama hesabı dikey penceresinin dikey menüsündeki Güvenlik + Ağ bölümünde Erişim anahtarları'nı seçin. Anahtarları göster'i seçin ve key1'e karşılık gelen bağlantı dizesi değerini kaydedin.

    Screenshot of the Azure portal, Access keys blade.

Azure IoT Central uygulamasının veri dışarı aktarmasını yapılandırma ve doğrulama

  1. IoT Central Uygulama portalında adatum-iot-custom-application sayfasını görüntüleyen web tarayıcısı penceresine geçin.

  2. IoT Central Uygulama portalının adatum-iot-custom-application sayfasındaki dikey menüde, Genişlet bölümünde Veri dışarı aktarma'yı ve ardından Dışarı aktarma ekle'yi seçin.

    Screenshot of the Azure IoT Central portal, Data export page.

  3. Yeni dışarı aktarma oluştur sayfasında aşağıdaki ayarları yapılandırın:

    Ayar Yapılandırma
    Dışarı aktarma adı Adatum IoT özel uygulama dışarı aktarma girin.
    Dışarı aktaracak veri türü Telemetri'yi seçin.
    Hedefler Yeni bir tane oluştur'u seçin.
    Yeni hedef adı Adatum Blob Depolama girin.
    Hedef türü Azure Blob Depolama'yı seçin.
    Connection string Bu alıştırmanın önceki görevine kopyaladığınız bağlantı dizesi değerini yapıştırın.
    Kapsayıcı iotcontainer girin.

    Screenshot of the Azure IoT Central application export new destination settings.

  4. Oluştur'u ve ardından Yeni dışarı aktarma oluştur sayfasında Kaydet'iseçin.

  5. Bu alıştırmanın önceki bölümlerinde kullandığınız Raspberry Pi Azure IoT Online Simulator sayfasını gösteren tarayıcı penceresine geçin. Bu sayfada, kod bölmesinden hemen sonra Çalıştır'ı seçin ve sanal cihazın Azure IoT Central uygulamasına ileti gönderdiğini doğrulayın.

  6. Azure portalında Azure depolama hesabı dikey penceresini görüntüleyen tarayıcı penceresine geçin.

  7. Azure depolama hesabı dikey penceresindeki dikey menüde Kapsayıcılar'ı seçin.

  8. Kapsayıcı listesinde iotcontainer girişini seçin.

  9. iotcontainer dikey penceresinde GUID tabanlı bir ada sahip yeni bir klasörün varlığını doğrulayın.

    Dekont

    Klasör yoksa, yaklaşık bir dakika bekleyin ve Yenile'yi seçin.

  10. iotcontainer dikey penceresinde yeni oluşturulan klasörü seçin ve alt klasörlerinden herhangi birinde bir bloba ulaşana kadar alt klasörlerinde gezinin.

  11. iotcontainer dikey penceresinde, önceki adımda tanımladığınız blobu seçin. Blob dikey penceresinde, içeriğini görüntülemek için Düzenle sekmesini seçin.

    Screenshot of the content of a blob representing telemetry exported from the Azure IoT Central application.

  12. Raspberry Pi Azure IoT Online Simulator sayfasını görüntüleyen tarayıcı penceresine geçin. Bu sayfada, kod bölmesinden hemen sonra Durdur'u seçin ve sanal cihazın artık Azure IoT Central uygulamasına ileti göndermediğini doğrulayın.

Sonuçlar

Tebrikler! Bu modülün ikinci alıştırmasını tamamladınız. Bu alıştırmada şunları yapın:

  • HTTP isteği yükünü günlüğe kaydeden bir Azure işlevi oluşturuldu.
  • Azure IoT Central uygulamasının yapılandırılmış ve doğrulanmış IoT telemetri kuralları.
  • IoT telemetri verilerini depolayacak bir Azure Depolama hesabı oluşturuldu.
  • Azure IoT Central uygulamasının yapılandırılmış ve doğrulanmış veri dışarı aktarması.

Kaynakları temizleme

Gereksiz ücretlerin Azure kaynaklarını kullanmasını önlemek için bu alıştırmanın başında oluşturduğunuz iot-central-apps-RG kaynak grubunu silmeniz gerekir. Bunu yapmak için Azure portalında iot-central-apps-RG dikey penceresine gidin ve araç çubuğunda Kaynak grubunu sil girişini seçin. KAYNAK GRUBU ADI YAZıN metin kutusuna iot-central-apps-RG yazın ve Sil'i seçin.