Öğretici: IoT Hub ileti yönlendirmeyi yapılandırmak için Azure CLı ve Azure portal kullanmaTutorial: Use the Azure CLI and Azure portal to configure IoT Hub message routing

İleti yönlendirme blob depolama, Service Bus kuyrukları, Service Bus konu başlıklarına ve Event Hubs telemetri verilerini IOT cihazlarınızdan yerleşik Event Hub ile uyumlu uç noktalar veya özel uç noktalar gibi gönderilmesini sağlar.Message routing enables sending telemetry data from your IoT devices to built-in Event Hub-compatible endpoints or custom endpoints such as blob storage, Service Bus Queues, Service Bus Topics, and Event Hubs. Özel ileti yönlendirmeyi yapılandırmak için oluşturduğunuz yönlendirme sorguları belirli bir koşul ile eşleşen bir rota özelleştirmek için.To configure custom message routing, you create routing queries to customize the route that matches a certain condition. Ayarlandıktan sonra, gelen veriler IoT Hub'ı tarafından otomatik olarak uç noktalara yönlendirilir.Once set up, the incoming data is automatically routed to the endpoints by the IoT Hub. Bir ileti herhangi bir tanımlı yönlendirme sorgular eşleşmiyorsa, varsayılan uç noktaya yönlendirilir.If a message doesn't match any of the defined routing queries, it is routed to the default endpoint.

2-bir parçası olan Bu öğreticide, kurma ve IOT Hub ile bu özel yönlendirme sorguları kullanma konusunda bilgi edinin.In this 2-part tutorial, you learn how to set up and use these custom routing queries with IoT Hub. Blob depolama ve Service Bus kuyruğuna dahil olmak üzere birden fazla uç nokta birine iletileri IOT cihazından yol.You route messages from an IoT device to one of multiple endpoints, including blob storage and a Service Bus queue. Service Bus kuyruğuna ileti bir mantıksal uygulama tarafından teslim alındı ve e-postayla gönderilir.Messages to the Service Bus queue are picked up by a Logic App and sent via e-mail. Tanımlanan özel ileti yönlendirme olmayan iletiler varsayılan uç noktaya gönderdi sonra Azure Stream Analytics tarafından teslim alındı ve Power BI görselleştirmelerinde görüntülenen.Messages that do not have custom message routing defined are sent to the default endpoint, then picked up by Azure Stream Analytics and viewed in a Power BI visualization.

Tam bölümleri için 1 ve 2. Bu öğretici aşağıdaki görevleri gerçekleştirmiştir:To complete parts 1 and 2 of this tutorial, you performed the following tasks:

Bölümü I: İleti yönlendirmeyi'kurmak, kaynakları oluşturmaPart I: Create resources, set up message routing

  • Kaynakları--bir IOT hub'ı, bir depolama hesabı, Service Bus kuyruğuna ve bir simülasyon cihazı oluşturun.Create the resources -- an IoT hub, a storage account, a Service Bus queue, and a simulated device. Bu yapılabilir portalı, Azure CLI, Azure PowerShell veya Azure Resource Manager şablonu kullanarak.This can be done using the portal, the Azure CLI, Azure PowerShell, or an Azure Resource Manager template.
  • Uç noktaları ve ileti yollarını IOT Hub'ında depolama hesabı ve Service Bus kuyruğu için yapılandırın.Configure the endpoints and message routes in IoT Hub for the storage account and Service Bus queue.

Bölüm II: Hub'ına ileti göndermek, yönlendirilmiş sonuçlarını görüntülemePart II: Send messages to the hub, view routed results

  • Service Bus kuyruğuna ileti eklendiğinde tetiklenen ve e-posta gönderen bir Mantıksal Uygulama oluşturma.Create a Logic App that is triggered and sends e-mail when a message is added to the Service Bus queue.
  • Farklı yönlendirme seçenekleri için hub'a iletiler gönderen bir IoT Cihazının simülasyonu olan bir uygulama indirme ve çalıştırma.Download and run an app that simulates an IoT Device sending messages to the hub for the different routing options.
  • Varsayılan uç noktaya gönderilen veriler için bir Power BI görselleştirmesi oluşturun.Create a Power BI visualization for data sent to the default endpoint.
  • Service Bus kuyruğunda ve e-postalarda ...View the results ...
  • Depolama hesabında ......in the Service Bus queue and e-mails.
  • PowerBI görselleştirmesinde ......in the storage account.
  • ...sonuçları görüntüleyin....in the Power BI visualization.

ÖnkoşullarPrerequisites

  • Bu öğreticinin için 1:For part 1 of this tutorial:

    • Bir Azure aboneliğiniz olmalıdır.You must have an Azure subscription. Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.If you don't have an Azure subscription, create a free account before you begin.
  • Bu öğreticinin için 2:For part 2 of this tutorial:

    • Bu öğreticinin tamamlanan bölüm 1 olan ve hala kullanılabilir kaynaklara sahibiz.You must have completed Part 1 of this tutorial, and have the resources still available.
    • Visual Studio’yu yükleyin.Install Visual Studio.
    • Varsayılan uç noktanın akış analizini yapmak için Power BI hesabı.A Power BI account to analyze the default endpoint's stream analytics. (Power BI'ı ücretsiz deneyin.)(Try Power BI for free.)
    • Bildirim e-postalarını göndermek için Office 365 hesabı.An Office 365 account to send notification e-mails.

Azure Cloud Shell kullanmaUse Azure Cloud Shell

Azure, tarayıcınız aracılığıyla kullanabileceğiniz etkileşimli bir kabuk ortamı Azure Cloud Shell.Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. Cloud Shell, ya da bash PowerShell Azure hizmetleriyle çalışmak için kullanmanıza olanak sağlar.Cloud Shell lets you use either bash or PowerShell to work with Azure services. Bu makaledeki kodu, yerel ortamınıza herhangi bir şey yüklemeye gerek kalmadan çalıştırmak için Cloud Shell önceden yüklenmiş komutları kullanabilirsiniz.You can use the Cloud Shell pre-installed commands to run the code in this article without having to install anything on your local environment.

Azure Cloud Shell başlatmak için:To launch Azure Cloud Shell:

SeçenekOption Örnek/bağlantıExample/Link
Kod bloğunun sağ üst köşesindeki Deneyin’i seçin.Select Try It in the upper-right corner of a code block. Dene ' nin seçilmesi, kodu Cloud Shell otomatik olarak kopyalamaz.Selecting Try It doesn't automatically copy the code to Cloud Shell. Azure Cloud Shell için deneme örneği
Tarayıcınızda Cloud Shell açmak için Başlat Cloud Shell düğmesine gidin veyaseçin. https://shell.azure.comGo to https://shell.azure.com or select the Launch Cloud Shell button to open Cloud Shell in your browser. Cloud Shell yeni bir pencerede BaşlatLaunch Cloud Shell in a new window
Azure Portalsağ üstteki menü çubuğunda Cloud Shell düğmesini seçin.Select the Cloud Shell button on the top-right menu bar in the Azure portal. Azure portaldaki Cloud Shell düğmesi

Bu makaledeki kodu Azure Cloud Shell çalıştırmak için:To run the code in this article in Azure Cloud Shell:

  1. Cloud Shell'i açın.Open Cloud Shell.
  2. Kodu kopyalamak için bir kod bloğunda Kopyala düğmesini seçin.Select the Copy button on a code block to copy the code.
  3. Kodu Windows ve Linux 'ta CTRL+SHIFT+v veya MacOS 'ta cmd+Shift+v ile Cloud Shell oturumuna yapıştırın.Paste the code into the Cloud Shell session with Ctrl+Shift+V on Windows and Linux, or Cmd+Shift+V on macOS.
  4. Kodu çalıştırmak için ENTER tuşuna basın.Press Enter to run the code.

Temel kaynaklar oluşturmaCreate base resources

İleti yönlendirme yapılandırmadan önce bir IOT hub'ı, bir depolama hesabı ve Service Bus kuyruğuna oluşturmanız gerekir.Before you can configure the message routing, you need to create an IoT hub, a storage account, and a Service Bus queue. Bu kaynaklar, kullanılabilir dört makalelerden birine Bu öğreticinin için 1 kullanılarak oluşturulabilir: Azure CLI, Azure PowerShell, Azure portalında veya Azure Resource Manager şablonu.These resources can be created using one of the four articles that available for part 1 of this tutorial: the Azure CLI, Azure PowerShell, the Azure portal, or an Azure Resource Manager template.

Tüm kaynaklar için aynı kaynak grubunu ve konumunu kullanın.Use the same resource group and location for all of the resources. Ardından sonunda, tüm kaynakları tek bir adımda kaynak grubunu silerek kaldırabilirsiniz.Then at the end, you can remove all of the resources in one step by deleting the resource group.

Aşağıdaki bölümlerde, gerçekleştirilmesi gereken adımlar açıklanmaktadır.The following sections describe the steps to be performed.

  1. Bir kaynak grubu oluşturun.Create a resource group.

  2. S1 katmanında IoT hub'ı oluşturun.Create an IoT hub in the S1 tier. IOT hub'ınızı bir tüketici grubu ekleyin.Add a consumer group to your IoT hub. Tüketici grubu Azure Stream Analytics tarafından veriler alınırken kullanılır.The consumer group is used by the Azure Stream Analytics when retrieving data.

    Not

    Bu öğreticiyi tamamlamak için ücretli bir katmanda bir IOT hub'ı kullanmanız gerekir.You must use an Iot hub in a paid tier to complete this tutorial. Ücretsiz katman yalnızca bir uç noktasını ayarlamanıza olanak tanır ve Bu öğretici için birden fazla uç noktası gereklidir.The free tier only allows you to set up one endpoint, and this tutorial requires multiple endpoints.

  3. Standard_LRS çoğaltmasıyla standart bir V1 depolama hesabı oluşturun.Create a standard V1 storage account with Standard_LRS replication.

  4. Service Bus ad alanı ve kuyruğu oluşturun.Create a Service Bus namespace and queue.

  5. Hub'ınıza iletiler gönderen simülasyon cihazı için cihaz kimliği oluşturun.Create a device identity for the simulated device that sends messages to your hub. Test aşaması için anahtarı kaydedin.Save the key for the testing phase. (Resource Manager şablonu oluşturuyorsanız, bu şablonu dağıttıktan sonra gerçekleştirilir.)(If creating a Resource Manager template, this is done after deploying the template.)

Temel kaynakları oluşturmak için Azure CLı 'yi kullanmaUse the Azure CLI to create the base resources

Bu öğretici, temel kaynakları oluşturmak için Azure CLı 'yi kullanır, ardından ileti yönlendirmeyi yapılandırmayı ve test için sanal cihazı ayarlamayı göstermek üzere Azure Portal kullanır.This tutorial uses the Azure CLI to create the base resources, then uses the Azure portal to show how to configure message routing and set up the virtual device for testing.

IoT Hub adı ve depolama hesabı adı gibi genel olarak benzersiz olması gereken birkaç kaynak adı vardır.There are several resource names that must be globally unique, such as the IoT Hub name and the storage account name. Bunun daha kolay olması için, bu kaynak adlarına rasgelevalueadlı rastgele bir alfasayısal değer eklenir.To make this easier, those resource names are appended with a random alphanumeric value called randomValue. Rasgeledeğeri, komut dosyasının en üstünde bir kez oluşturulur ve komut dosyası boyunca gerektiğinde kaynak adlarına eklenir.The randomValue is generated once at the top of the script and appended to the resource names as needed throughout the script. Rastgele olmasını istemiyorsanız, bunu boş bir dizeye veya belirli bir değere ayarlayabilirsiniz.If you don't want it to be random, you can set it to an empty string or to a specific value.

Aşağıdaki betiği kopyalayıp Cloud Shell yapıştırın ve ENTER tuşuna basın.Copy and paste the script below into Cloud Shell and press Enter. Betiği tek seferde bir satır çalıştırır.It runs the script one line at a time. Bu işlem, depolama hesabı, IoT Hub, Service Bus ad alanı ve Service Bus kuyruğu dahil olmak üzere Bu öğreticinin temel kaynaklarını oluşturur.This will create the base resources for this tutorial, including the storage account, IoT Hub, Service Bus Namespace, and Service Bus queue.

Hata ayıklama hakkında bir dikkat: Bu betik, betiği daha okunabilir hale getirmek \için devamlılık simgesini (ters eğik çizgi) kullanır.A note about debugging: this script uses the continuation symbol (the backslash \) to make the script more readable. Betiği çalıştırırken bir sorun yaşıyorsanız, ters eğik çizgi dışında bir boşluk olmadığından emin olun.If you have a problem running the script, make sure there are no spaces after any of the backslashes.

# This retrieves the subscription id of the account 
#   in which you're logged in.
# This field is used to set up the routing queries.
subscriptionID=$(az account show --query id)

# Concatenate this number onto the resources that have to be globally unique.
# You can set this to "" or to a specific value if you don't want it to be random.
# This retrieves a random value.
randomValue=$RANDOM

# Set the values for the resource names that 
#   don't have to be globally unique.
location=westus
resourceGroup=ContosoResources
iotHubConsumerGroup=ContosoConsumers
containerName=contosoresults

# Create the resource group to be used
#   for all the resources for this tutorial.
az group create --name $resourceGroup \
    --location $location

# The IoT hub name must be globally unique, 
#   so add a random value to the end.
iotHubName=ContosoTestHub$randomValue 
echo "IoT hub name = " $iotHubName

# Create the IoT hub.
az iot hub create --name $iotHubName \
    --resource-group $resourceGroup \
    --sku S1 --location $location

# Add a consumer group to the IoT hub for the 'events' endpoint.
az iot hub consumer-group create --hub-name $iotHubName \
    --name $iotHubConsumerGroup

# The storage account name must be globally unique, 
#   so add a random value to the end.
storageAccountName=contosostorage$randomValue
echo "Storage account name = " $storageAccountName

# Create the storage account to be used as a routing destination.
az storage account create --name $storageAccountName \
    --resource-group $resourceGroup \
    --location $location \
    --sku Standard_LRS

# Get the primary storage account key. 
#    You need this to create the container.
storageAccountKey=$(az storage account keys list \
    --resource-group $resourceGroup \
    --account-name $storageAccountName \
    --query "[0].value" | tr -d '"') 

# See the value of the storage account key.
echo "storage account key = " $storageAccountKey

# Create the container in the storage account. 
az storage container create --name $containerName \
    --account-name $storageAccountName \
    --account-key $storageAccountKey \
    --public-access off

# The Service Bus namespace must be globally unique, 
#   so add a random value to the end.
sbNamespace=ContosoSBNamespace$randomValue
echo "Service Bus namespace = " $sbNamespace

# Create the Service Bus namespace.
az servicebus namespace create --resource-group $resourceGroup \
    --name $sbNamespace \
    --location $location

# The Service Bus queue name must be globally unique, 
#   so add a random value to the end.
sbQueueName=ContosoSBQueue$randomValue
echo "Service Bus queue name = " $sbQueueName

# Create the Service Bus queue to be used as a routing destination.
az servicebus queue create --name $sbQueueName \
    --namespace-name $sbNamespace \
    --resource-group $resourceGroup

Temel kaynaklar ayarlandığına göre, Azure Portalileti yönlendirmeyi yapılandırabilirsiniz.Now that the base resources are set up, you can configure the message routing in the Azure portal.

İleti yönlendirmeyi ayarlamaSet up message routing

Simülasyon cihazı tarafından iletiye eklenen özellikler temelinde iletileri farklı kaynaklara yönlendireceksiniz.You are going to route messages to different resources based on properties attached to the message by the simulated device. Özel yönlendirmesi olmayan iletiler varsayılan uç noktaya gönderilir (iletiler/olaylar).Messages that are not custom routed are sent to the default endpoint (messages/events). Sonraki öğreticide, IOT Hub'ına ileti göndermek ve bunları farklı hedeflere bakın.In the next tutorial, you send messages to the IoT Hub and see them routed to the different destinations.

valuevalue SonuçResult
level="storage"level="storage" Azure Depolama'ya yazın.Write to Azure Storage.
level="critical"level="critical" Service Bus kuyruğuna yazın.Write to a Service Bus queue. Mantıksal Uygulama iletiyi kuyruktan alır ve Office 365 kullanarak iletiyi e-postayla gönderir.A Logic App retrieves the message from the queue and uses Office 365 to e-mail the message.
defaultdefault Power BI'ı kullanarak bu verileri görüntüleyin.Display this data using Power BI.

İlk adım, verileri yönlendirilir uç noktayı kurmak sağlamaktır.The first step is to set up the endpoint to which the data will be routed. İkinci adım, bu uç noktasını kullanan ileti rotayı ayarlamaktır.The second step is to set up the message route that uses that endpoint. Yönlendirme yedekleme ayarladıktan sonra portalda uç noktaları ve ileti yollarını görüntüleyebilirsiniz.After setting up the routing, you can view the endpoints and message routes in the portal.

Depolama hesabına yönlendirmeRoute to a storage account

Şimdi depolama hesabı için yönlendirmeyi ayarlayın.Now set up the routing for the storage account. İleti Yönlendirme bölmesine gider ve bir yol eklersiniz.You go to the Message Routing pane, then add a route. Yolu eklerken, yol için yeni bir uç nokta tanımlayın.When adding the route, define a new endpoint for the route. Bu yönlendirme ayarlandıktan sonra, Level özelliğinin depolama olarak ayarlandığı iletiler otomatik olarak bir depolama hesabına yazılır.After this routing is set up, messages where the level property is set to storage are written to a storage account automatically.

Not

Verileri BLOB depolamaya her ikisinde yazılabilir Apache Avro , varsayılan veya (Önizleme) JSON biçiminde.The data can be written to blob storage in either the Apache Avro format, which is the default, or JSON (preview).

IOT hub'ı kullanılabilir olduğu, Doğu ABD, Batı ABD ve Batı Avrupa dışındaki tüm bölgelerde önizleme özelliği JSON biçiminde kodlamak için kullanılabilir.The capability to encode JSON format is in preview in all regions in which IoT Hub is available, except East US, West US and West Europe. Kodlama biçimi, yalnızca blob depolama uç noktası yapılandırıldıktan zamanında ayarlanabilir.The encoding format can be only set at the time the blob storage endpoint is configured. Biçim, önceden ayarlanmış bir uç nokta için değiştirilemez.The format cannot be changed for an endpoint that has already been set up. JSON encoding kullanıldığında, JSON ve UTF-8 contentEncoding ileti sistemi özelliklerindeki contentType ayarlamanız gerekir.When using JSON encoding, you must set the contentType to JSON and the contentEncoding to UTF-8 in the message system properties.

Bir blob depolama uç noktası kullanma hakkında daha ayrıntılı bilgi için lütfen bkz blob depolama için yönlendirme yönergeleri.For more detailed information about using a blob storage endpoint, please see guidance on routing to blob storage.

  1. Azure Portal, kaynak grupları' nı ve ardından kaynak grubunuzu seçin.In the Azure portal, select Resource Groups, then select your resource group. Bu öğreticide ContosoResources kullanılır.This tutorial uses ContosoResources.

  2. Kaynak listesinin altındaki IoT Hub 'ını seçin.Select the IoT hub under the list of resources. Bu öğreticide ContosoTestHub kullanılır.This tutorial uses ContosoTestHub.

  3. Ileti yönlendirmeyiseçin.Select Message Routing. Ileti yönlendirme bölmesinde +Ekle' yi seçin.In the Message Routing pane, select +Add. Yol Ekle bölmesinde, aşağıdaki resimde gösterildiği gibi desteklenen uç noktaları göstermek Için uç nokta alanının yanındaki +Ekle ' yi seçin:On the Add a Route pane, select +Add next to the Endpoint field to show the supported endpoints, as displayed in the following picture:

    Bir yol için uç nokta eklemeye başlayın

  4. Blob depolama'yı seçin.Select Blob storage. Depolama uç noktası Ekle bölmesini görürsünüz.You see the Add a storage endpoint pane.

    Uç nokta ekleme

  5. Uç nokta için bir ad girin.Enter a name for the endpoint. Bu öğretici Contosostorageendpointkullanır.This tutorial uses ContosoStorageEndpoint.

  6. Kapsayıcı Seç' i seçin.Select Pick a container. Bu sizi depolama hesaplarınızın listesine götürür.This takes you to a list of your storage accounts. Hazırlık adımlarında ayarladığınız hesabı seçin.Select the one you set up in the preparation steps. Bu öğreticide contosostorage kullanılır.This tutorial uses contosostorage. Söz konusu depolama hesabının içindeki kapsayıcıların listesi gösterilir.It shows a list of containers in that storage account. Hazırlık adımlarında ayarladığınız kapsayıcıyı seçin .Select the container you set up in the preparation steps. Bu öğreticide contosoresults kullanılır.This tutorial uses contosoresults. Depolama uç noktası Ekle bölmesine dönüp yaptığınız seçimleri görürsünüz.You return to the Add a storage endpoint pane and see the selections you made.

  7. Kodlamayı AVRO veya JSON olarak ayarlayın.Set the encoding to AVRO or JSON. Bu öğretici için kalan alanlarda varsayılan değerleri kullanın.For the purpose of this tutorial, use the defaults for the rest of the fields. Seçilen bölge JSON kodlamasını desteklemiyorsa, bu alan gri renkte görünür.This field will be greyed out if the region selected does not support JSON encoding.,

    Not

    Blob adının biçimini Blob dosya adı biçimi ile ayarlayabilirsiniz.You can set the format of the blob name using the Blob file name format. Varsayılan değer: {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.The default is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. Biçim {iothub}, {partition}, {YYYY}, {MM}, {DD}, {HH} ve {mm} öğelerini içermelidir, sıralama farklı olabilir.The format must contain {iothub}, {partition}, {YYYY}, {MM}, {DD}, {HH}, and {mm} in any order.

    Örneğin varsayılan blob dosya adı biçimini kullandığınızda hub adı ContosoTestHub ve tarih/saat 30 Ekim 2018 10:56 ise blob adı şu şekilde olacaktır: ContosoTestHub/0/2018/10/30/10/56.For example, using the default blob file name format, if the hub name is ContosoTestHub, and the date/time is October 30, 2018 at 10:56 a.m., the blob name will look like this: ContosoTestHub/0/2018/10/30/10/56.

    Bloblar Avro biçiminde yazılır.The blobs are written in the Avro format.

  8. Depolama uç noktasını oluşturmak ve rotaya eklemek için Oluştur ' u seçin.Select Create to create the storage endpoint and add it to the route. Yol ekle bölmesine dönersiniz.You return to the Add a route pane.

  9. Şimdi yönlendirme sorgusu bilgilerinin kalan kısmını tamamlayın.Now complete the rest of the routing query information. Bu sorgu, az önce uç nokta olarak eklediğiniz depolama kapsayıcısına ileti gönderme ölçütlerini belirtir.This query specifies the criteria for sending messages to the storage container you just added as an endpoint. Ekrandaki alanları doldurun.Fill in the fields on the screen.

    Ad: Yönlendirme sorgunuz için bir ad girin.Name: Enter a name for your routing query. Bu öğretici Contosostorageroutekullanır.This tutorial uses ContosoStorageRoute.

    Uç nokta: Bu, az önce ayarladığınız uç noktayı gösterir.Endpoint: This shows the endpoint you just set up.

    Veri kaynağı: Açılan listeden cihaz telemetri iletileri ' ni seçin.Data source: Select Device Telemetry Messages from the dropdown list.

    Rotayı etkinleştir: Bu alanın olarak enabledayarlandığından emin olun.Enable route: Be sure this field is set to enabled.

    Yönlendirme sorgusu: Sorgu level="storage" dizesi olarak girin.Routing query: Enter level="storage" as the query string.

    Depolama hesabı için yönlendirme sorgusu oluşturma

    Kaydet’i seçin.Select Save. İşlem bittiğinde İleti Yönlendirme bölmesine döner ve burada depolama için yeni yönlendirme sorgunuzu görebilirsiniz.When it finishes, it returns to the Message Routing pane, where you can see your new routing query for storage. Yollar bölmesini kapatın; Kaynak grubu sayfasına dönersiniz.Close the Routes pane, which returns you to the Resource group page.

Service Bus kuyruğuna yönlendirmeRoute to a Service Bus queue

Şimdi Service Bus kuyruğu için yönlendirmeyi ayarlayın.Now set up the routing for the Service Bus queue. İleti Yönlendirme bölmesine gider ve bir yol eklersiniz.You go to the Message Routing pane, then add a route. Yolu eklerken, yol için yeni bir uç nokta tanımlayın.When adding the route, define a new endpoint for the route. Bu yol ayarlandıktan sonra, Level özelliğinin kritik olarak ayarlandığı Iletiler, bir mantıksal uygulamayı tetikleyen Service Bus kuyruğuna yazılır ve bu da bilgileri içeren bir e-posta gönderir.After this route is set up, messages where the level property is set to critical are written to the Service Bus queue, which triggers a Logic App, which then sends an e-mail with the information.

  1. Kaynak grubu sayfasında, IoT Hub 'ınızı seçip Ileti yönlendirme' yi seçin.On the Resource group page, select your IoT hub, then select Message Routing.

  2. Ileti yönlendirme bölmesinde +Ekle' yi seçin.In the Message Routing pane, select +Add.

  3. Yol Ekle bölmesinde, uç nokta alanının yanındaki +Ekle ' yi seçin.On the Add a Route pane, Select +Add next to the Endpoint field. Service Bus Kuyruğu'nu seçin.Select Service Bus Queue. Service Bus Uç Noktası Ekle bölmesini görürsünüz.You see the Add Service Bus Endpoint pane.

    Service Bus uç noktası ekleme

  4. Şu alanları doldurun:Fill in the fields:

    Uç nokta adı: Uç nokta için bir ad girin.Endpoint Name: Enter a name for the endpoint. Bu öğretici Contososbqueueendpointkullanır.This tutorial uses ContosoSBQueueEndpoint.

    Service Bus ad alanı: Hazırlama adımlarında ayarladığınız Service Bus ad alanını seçmek için açılan listeyi kullanın.Service Bus Namespace: Use the dropdown list to select the service bus namespace you set up in the preparation steps. Bu öğreticide ContosoSBNamespace kullanılır.This tutorial uses ContosoSBNamespace.

    Service Bus kuyruğu: Service Bus kuyruğu seçmek için açılan listeyi kullanın.Service Bus queue: Use the dropdown list to select the Service Bus queue. Bu öğreticide contososbqueue kullanılır.This tutorial uses contososbqueue.

  5. Service Bus kuyruğu uç noktasını eklemek için Oluştur ' u seçin.Select Create to add the Service Bus queue endpoint. Yol ekle bölmesine dönersiniz.You return to the Add a route pane.

  6. Şimdi yönlendirme sorgusu bilgilerinin kalan kısmını tamamlarsınız.Now you complete the rest of the routing query information. Bu sorgu, az önce uç nokta olarak eklediğiniz Service Bus kuyruğuna ileti gönderme ölçütlerini belirtir.This query specifies the criteria for sending messages to the Service Bus queue you just added as an endpoint. Ekrandaki alanları doldurun.Fill in the fields on the screen.

    Ad: Yönlendirme sorgunuz için bir ad girin.Name: Enter a name for your routing query. Bu öğretici Contososbqueueroutekullanır.This tutorial uses ContosoSBQueueRoute.

    Uç nokta: Bu, az önce ayarladığınız uç noktayı gösterir.Endpoint: This shows the endpoint you just set up.

    Veri kaynağı: Açılan listeden cihaz telemetri iletileri ' ni seçin.Data source: Select Device Telemetry Messages from the dropdown list.

    Yönlendirme sorgusu: Sorgu level="critical" dizesi olarak girin.Routing query: Enter level="critical" as the query string.

    Service Bus kuyruğu için bir yönlendirme sorgusu oluşturma

  7. Kaydet’i seçin.Select Save. Yollar bölmesine dönüldüğünde, burada gösterildiği gibi yeni yönlendirme yollarınızın ikisini de görürsünüz.When it returns to the Routes pane, you see both of your new routes, as displayed here.

    Az önce ayarladığınız rotalar

  8. Özel uç noktalar sekmesini seçerek ayarladığınız özel uç noktaları görebilirsiniz.You can see the custom endpoints you set up by selecting the Custom Endpoints tab.

    Yeni ayarladığınız özel uç nokta

  9. İleti yönlendirme bölmesini kapatın; Kaynak grubu bölmesine dönersiniz.Close the Message Routing pane, which returns you to the Resource group pane.

Sanal cihaz oluşturmaCreate a simulated device

Sonra bir cihaz kimliği oluşturun ve anahtarını daha sonra kullanmak üzere kaydedin.Next, create a device identity and save its key for later use. Bu cihaz kimliği simülasyon uygulaması tarafından IoT hub'ına iletileri göndermek için kullanılır.This device identity is used by the simulation application to send messages to the IoT hub. Bu özellik, bir Azure Resource Manager şablonu kullanarak, PowerShell veya kullanılabilir değil.This capability is not available in PowerShell or when using an Azure Resource Manager template. Aşağıdaki adımları kullanarak sanal cihaz oluşturma size Azure portalında.The following steps tell you how to create the simulated device using the Azure portal.

  1. Azure portalını açın ve Azure hesabınızla oturum açın.Open the Azure portal and log into your Azure account.

  2. Seçin kaynak grupları kaynak grubunuzu seçin.Select Resource groups and then choose your resource group. Bu öğreticide ContosoResources kullanılır.This tutorial uses ContosoResources.

  3. Kaynak listesinde, IOT hub'ınızı seçin.In the list of resources, select your IoT hub. Bu öğreticide ContosoTestHub kullanılır.This tutorial uses ContosoTestHub. Hub bölmesinden IoT Cihazları'nı seçin.Select IoT Devices from the Hub pane.

  4. + Ekle öğesini seçin.Select + Add. Cihaz Ekle bölmesinde cihaz kimliğini girin.On the Add Device pane, fill in the device ID. Bu öğreticide Contoso-Test-Device kullanılır.This tutorial uses Contoso-Test-Device. Anahtarları boş bırakın ve Anahtarları Otomatik Olarak Oluştur'a tıklayın.Leave the keys empty, and check Auto Generate Keys. Cihazı IoT Hub'ına bağla seçeneğinin etkinleştirildiğinden emin olun.Make sure Connect device to IoT hub is enabled. Kaydet’i seçin.Select Save.

    Cihaz Ekle ekranı

  5. Oluşturulduktan sonra oluşturulan tuşlarını görmek için cihazı seçin.Now that it's been created, select the device to see the generated keys. Birincil anahtar Kopyala simgesini seçin ve onu bir yere not defteri gibi bu öğreticinin sınama aşaması için kaydedin.Select the Copy icon on the Primary key and save it somewhere such as Notepad for the testing phase of this tutorial.

    Anahtarları dahil olmak üzere cihaz ayrıntıları

Sonraki adımlarNext steps

Kaynakları ayarlamış olduğunuza ve ileti rotalarına sahip olduğunuza göre, IoT Hub 'ına ileti gönderme ve farklı hedeflere yönlendirilme hakkında bilgi edinmek için sonraki öğreticiye ilerleyin.Now that you have the resources set up and the message routes configured, advance to the next tutorial to learn how to send messages to the IoT hub and see them be routed to the different destinations.