Delen via


Azure IoT Hub bewaken

In dit artikel wordt het volgende beschreven:

  • De typen bewakingsgegevens die u voor deze service kunt verzamelen.
  • Manieren om die gegevens te analyseren.

Notitie

Als u al bekend bent met deze service en/of Azure Monitor en alleen wilt weten hoe u bewakingsgegevens analyseert, raadpleegt u de sectie Analyseren aan het einde van dit artikel.

Wanneer u kritieke toepassingen en bedrijfsprocessen hebt die afhankelijk zijn van Azure-resources, moet u waarschuwingen voor uw systeem bewaken en ontvangen. De Azure Monitor-service verzamelt en aggregeert metrische gegevens en logboeken van elk onderdeel van uw systeem. Azure Monitor biedt een overzicht van beschikbaarheid, prestaties en tolerantie, en geeft u een overzicht van problemen. U kunt de Azure-portal, PowerShell, Azure CLI, REST API of clientbibliotheken gebruiken om bewakingsgegevens in te stellen en weer te geven.

De verbinding met Event Grid per apparaat bewaken

Azure Monitor biedt een metrische waarde met de naam Verbonden apparaten die u kunt gebruiken om het aantal apparaten te bewaken dat is verbonden met uw IoT Hub. Met deze metrische waarde wordt een waarschuwing geactiveerd wanneer het aantal verbonden apparaten onder een drempelwaarde daalt. Azure Monitor verzendt ook gebeurtenissen in de categorie verbindingen die u kunt gebruiken om apparaatverbindingen, verbindingsproblemen en verbindingsfouten te bewaken. Hoewel deze gebeurtenissen mogelijk voldoende zijn voor sommige scenario's, biedt Azure Event Grid een oplossing met lage latentie, die u kunt gebruiken om apparaatverbindingen voor kritieke apparaten en infrastructuur bij te houden.

Met Event Grid kunt u zich abonneren op de IoT Hub DeviceConnected- en DeviceDisconnected-gebeurtenissen om waarschuwingen te activeren en de status van de apparaatverbinding te bewaken. Event Grid biedt een veel lagere gebeurtenislatentie dan Azure Monitor, zodat u per apparaat kunt bewaken in plaats van voor alle verbonden apparaten. Deze factoren maken Event Grid de voorkeursmethode voor het bewaken van verbindingen voor kritieke apparaten en infrastructuur. We raden u ten zeerste aan Event Grid te gebruiken om apparaatverbindingen in productieomgevingen te bewaken.

Zie Voor meer informatie over het bewaken van apparaatconnectiviteit met Event Grid en Azure Monitor de connectiviteit van apparaten met Azure IoT Hub bewaken, diagnosticeren en oplossen.

Resourcetypen

Azure maakt gebruik van het concept van resourcetypen en id's om alles in een abonnement te identificeren. Resourcetypen maken ook deel uit van de resource-id's voor elke resource die wordt uitgevoerd in Azure. Eén resourcetype voor een virtuele machine is Microsoft.Compute/virtualMachinesbijvoorbeeld . Zie Resourceproviders voor een lijst met services en de bijbehorende resourcetypen.

Azure Monitor organiseert op dezelfde manier kernbewakingsgegevens in metrische gegevens en logboeken op basis van resourcetypen, ook wel naamruimten genoemd. Er zijn verschillende metrische gegevens en logboeken beschikbaar voor verschillende resourcetypen. Uw service is mogelijk gekoppeld aan meer dan één resourcetype.

Zie de naslaginformatie over bewakingsgegevens van Azure IoT Hub voor meer informatie over de resourcetypen voor IoT Hub.

Gegevensopslag

Voor Azure Monitor:

  • Metrische gegevens worden opgeslagen in de metrische gegevensdatabase van Azure Monitor.
  • Logboekgegevens worden opgeslagen in het logboekarchief van Azure Monitor. Log Analytics is een hulpprogramma in Azure Portal waarmee een query kan worden uitgevoerd op dit archief.
  • Het Azure-activiteitenlogboek is een afzonderlijk archief met een eigen interface in Azure Portal.

U kunt eventueel metrische gegevens en activiteitenlogboekgegevens routeren naar het logboekarchief van Azure Monitor. Vervolgens kunt u Log Analytics gebruiken om een query uit te voeren op de gegevens en deze te correleren met andere logboekgegevens.

Veel services kunnen diagnostische instellingen gebruiken om metrische gegevens en logboekgegevens te verzenden naar andere opslaglocaties buiten Azure Monitor. Voorbeelden hiervan zijn Azure Storage, gehoste partnersystemen en niet-Azure-partnersystemen, met behulp van Event Hubs.

Zie het Azure Monitor-gegevensplatform voor gedetailleerde informatie over hoe Azure Monitor gegevens opslaat.

Verzameling en routering

Metrische platformgegevens, het activiteitenlogboek en resourcelogboeken hebben unieke specificaties voor verzameling, opslag en routering.

In Azure Portal vanuit uw IoT-hub onder Bewaking kunt u diagnostische instellingen selecteren, gevolgd door diagnostische instelling toevoegen om diagnostische instellingen te maken die zijn afgestemd op de logboeken en metrische platformgegevens die door uw IoT-hub worden verzonden.

Schermopname die laat zien hoe u een diagnostische instelling toevoegt in uw IoT-hub in Azure Portal.

In de volgende schermopname ziet u een diagnostische instelling voor het routeren van verbindingsbewerkingen voor het resourcelogboektype en alle metrische platformgegevens naar een Log Analytics-werkruimte.

Schermopname van het formulier Diagnostische instellingen voor het bewaken van een IoT-hub.

Bij het routeren van metrische gegevens van het IoT Hub-platform naar andere locaties:

  • Deze metrische platformgegevens kunnen niet worden geëxporteerd met behulp van diagnostische instellingen: Verbonden apparaten en Totaal aantal apparaten.

  • Multidimensionale metrische gegevens, zoals sommige metrische routeringsgegevens, worden momenteel geëxporteerd als platgemaakte enkele dimensionale metrische gegevens die zijn geaggregeerd over dimensiewaarden. Zie Metrische platformgegevens exporteren naar andere locaties voor meer informatie.

Metrische gegevens van het Azure Monitor-platform

Azure Monitor biedt metrische platformgegevens voor de meeste services. Deze metrische gegevens zijn:

  • Afzonderlijk gedefinieerd voor elke naamruimte.
  • Opgeslagen in de metrische gegevensdatabase van Azure Monitor.
  • Lichtgewicht en in staat om bijna realtime waarschuwingen te ondersteunen.
  • Wordt gebruikt om de prestaties van een resource in de loop van de tijd bij te houden.

Verzameling: Azure Monitor verzamelt automatisch metrische platformgegevens. Er is geen configuratie vereist.

Routering: U kunt sommige metrische platformgegevens ook routeren naar Azure Monitor-logboeken/Log Analytics, zodat u er query's op kunt uitvoeren met andere logboekgegevens. Controleer de DS-exportinstelling voor elke metriek om te zien of u een diagnostische instelling kunt gebruiken om de metrische gegevens te routeren naar Azure Monitor-logboeken/Log Analytics.

Zie Ondersteunde metrische gegevens in Azure Monitor voor een lijst met alle metrische gegevens die kunnen worden verzameld voor alle resources in Azure Monitor.

Overzicht van Monitor

De pagina Overzicht in Azure Portal voor elke IoT-hub bevat grafieken die metrische gegevens over gebruik bieden, zoals het aantal gebruikte berichten en het aantal apparaten dat is verbonden met de IoT-hub.

Standaardgrafieken op de overzichtspagina van IoT Hub.

Een juiste waarde voor het aantal berichten kan met 1 minuut worden vertraagd. Vanwege de Infrastructuur van de IoT Hub-service kan de waarde soms stuiteren tussen hogere en lagere waarden bij vernieuwen. Deze teller mag alleen onjuist zijn voor waarden die in de afgelopen minuut zijn opgebouwd.

De informatie in het deelvenster Overzicht is nuttig, maar vertegenwoordigt slechts een kleine hoeveelheid bewakingsgegevens die beschikbaar zijn voor een IoT-hub. Sommige bewakingsgegevens worden automatisch en beschikbaar voor analyse zodra u uw IoT-hub maakt. U kunt andere typen gegevensverzameling inschakelen met een bepaalde configuratie.

Belangrijk

De gebeurtenissen die door de IoT Hub-service worden verzonden met behulp van Azure Monitor-resourcelogboeken, zijn niet gegarandeerd betrouwbaar of geordend. Sommige gebeurtenissen kunnen verloren gaan of niet in orde zijn. Resourcelogboeken zijn niet bedoeld om realtime te zijn, dus het kan enkele minuten duren voordat gebeurtenissen naar uw bestemming zijn vastgelegd.

Azure Monitor-resourcelogboeken

Resourcelogboeken bieden inzicht in bewerkingen die zijn uitgevoerd door een Azure-resource. Logboeken worden automatisch gegenereerd, maar u moet ze routeren naar Azure Monitor-logboeken om ze op te slaan of er query's op uit te voeren. Logboeken zijn ingedeeld in categorieën. Een bepaalde naamruimte kan meerdere resourcelogboekcategorieën hebben.

Verzameling: Resourcelogboeken worden pas verzameld en opgeslagen als u een diagnostische instelling maakt en de logboeken doorsturen naar een of meer locaties. Wanneer u een diagnostische instelling maakt, geeft u op welke categorieën logboeken moeten worden verzameld. Er zijn meerdere manieren om diagnostische instellingen te maken en te onderhouden, waaronder Azure Portal, programmatisch en hoewel Azure Policy.

Routering: de voorgestelde standaardinstelling is het routeren van resourcelogboeken naar Azure Monitor-logboeken, zodat u er query's op kunt uitvoeren met andere logboekgegevens. Andere locaties, zoals Azure Storage, Azure Event Hubs en bepaalde Microsoft-bewakingspartners, zijn ook beschikbaar. Zie Azure-resourcelogboeken en resourcelogboekbestemmingen voor meer informatie.

Zie Diagnostische instellingen in Azure Monitor voor gedetailleerde informatie over het verzamelen, opslaan en routeren van resourcelogboeken.

Zie Ondersteunde resourcelogboeken in Azure Monitor voor een lijst met alle beschikbare resourcelogboekcategorieën in Azure Monitor.

Alle resourcelogboeken in Azure Monitor hebben dezelfde koptekstvelden, gevolgd door servicespecifieke velden. Het algemene schema wordt beschreven in het schema voor resourcelogboeken van Azure Monitor.

Verbindingsevenementen naar logboeken routeren

IoT Hub verzendt continu resourcelogboeken voor verschillende categorieën bewerkingen. Als u deze logboekgegevens wilt verzamelen, moet u echter een diagnostische instelling maken om deze naar een bestemming te routeren waar deze kunnen worden geanalyseerd of gearchiveerd. Een dergelijke bestemming is Azure Monitor-logboeken via een Log Analytics-werkruimte (zie prijzen), waar u de gegevens kunt analyseren met kusto-query's.

De categorie Verbindingen voor IoT Hub-resourcelogboeken verzendt bewerkingen en fouten die te maken hebben met apparaatverbindingen. In de volgende schermopname ziet u een diagnostische instelling voor het routeren van deze logboeken naar een Log Analytics-werkruimte:

Aanbevolen instelling voor het verzenden van connectiviteitslogboeken naar de Log Analytics-werkruimte.

We raden u aan om zo vroeg mogelijk een diagnostische instelling te maken nadat u uw IoT-hub hebt gemaakt, omdat Azure Monitor ze pas verzamelt als u ze naar een bestemming routegeeft, hoewel IoT Hub altijd resourcelogboeken verzendt.

Zie Verzameling en routering voor meer informatie over routeringslogboeken naar een bestemming. Zie de zelfstudie Metrische gegevens en logboeken gebruiken voor gedetailleerde instructies voor het maken van een diagnostische instelling.

Azure-activiteitenlogboek

Het activiteitenlogboek bevat gebeurtenissen op abonnementsniveau waarmee bewerkingen voor elke Azure-resource worden bijgehouden, zoals van buiten die resource wordt gezien; Bijvoorbeeld het maken van een nieuwe resource of het starten van een virtuele machine.

Verzameling: gebeurtenissen in activiteitenlogboeken worden automatisch gegenereerd en verzameld in een afzonderlijk archief voor weergave in Azure Portal.

Routering: U kunt activiteitenlogboekgegevens verzenden naar Azure Monitor-logboeken, zodat u deze naast andere logboekgegevens kunt analyseren. Andere locaties, zoals Azure Storage, Azure Event Hubs en bepaalde Microsoft-bewakingspartners, zijn ook beschikbaar. Zie Overzicht van het Azure-activiteitenlogboek voor meer informatie over het routeren van het activiteitenlogboek.

Logboeken analyseren

Gegevens in Azure Monitor-logboeken worden opgeslagen in tabellen waarin elke tabel een eigen set unieke eigenschappen heeft. De gegevens in deze tabellen zijn gekoppeld aan een Log Analytics-werkruimte en kunnen worden opgevraagd in Log Analytics. Zie het overzicht van Azure Monitor-logboeken in de Documentatie van Azure Monitor voor meer informatie over Azure Monitor-logboeken.

Als u gegevens wilt routeren naar Azure Monitor-logboeken, moet u een diagnostische instelling maken om resourcelogboeken of metrische platformgegevens naar een Log Analytics-werkruimte te verzenden. Zie Verzameling en routering voor meer informatie.

Als u Log Analytics wilt uitvoeren, gaat u naar Azure Portal en opent u uw IoT-hub en selecteert u Vervolgens Logboeken onder Bewaking. Deze Log Analytics-query's zijn standaard gericht op de logboeken en metrische gegevens die zijn verzameld in Azure Monitor-logboeken voor uw IoT-hub.

Logboekpagina voor een IoT-hub.

Bij het routeren van metrische gegevens van het IoT Hub-platform naar Azure Monitor-logboeken:

  • De volgende metrische platformgegevens kunnen niet worden geëxporteerd met behulp van diagnostische instellingen: Verbonden apparaten en Totaal aantal apparaten.

  • Multidimensionale metrische gegevens, zoals sommige metrische routeringsgegevens, worden momenteel geëxporteerd als platgemaakte enkele dimensionale metrische gegevens die zijn geaggregeerd over dimensiewaarden. Zie Metrische platformgegevens exporteren naar andere locaties voor meer informatie.

Zie Voorbeeldquery's van Kusto voor algemene query's met IoT Hub. Zie Overzicht van logboekquery's in Azure Monitor voor meer informatie over het gebruik van Log Analytics-query's.

SDK-versie in IoT Hub-logboeken

Sommige bewerkingen retourneren een sdkVersion eigenschap in hun properties object voor de IoT Hub-resourcelogboeken. Wanneer voor deze bewerkingen een apparaat- of back-end-app een van de Azure IoT SDK's gebruikt, bevat deze eigenschap informatie over de SDK die wordt gebruikt, de SDK-versie en het platform waarop de SDK wordt uitgevoerd.

In de volgende voorbeelden ziet u de sdkVersion eigenschap die wordt verzonden voor een deviceConnect bewerking met behulp van:

  • De Node.js device SDK: "azure-iot-device/1.17.1 (node v10.16.0; Windows_NT 10.0.18363; x64)"
  • De .NET -SDK ".NET/1.21.2 (.NET Framework 4.8.4200.0; Microsoft Windows 10.0.17763 WindowsProduct:0x00000004; X86)"(C#): .

In de volgende tabel ziet u de SDK-naam die wordt gebruikt voor verschillende Azure IoT SDK's:

SDK-naam in sdkVersion-eigenschap Taal
.NET .NET (C#)
microsoft.azure.devices .NET -service-SDK (C#)
microsoft.azure.devices.client .NET -apparaat-SDK (C#)
iothubclient Apparaat-SDK voor C of Python v1 (afgeschaft)
iothubserviceclient Service-SDK voor C of Python v1 (afgeschaft)
azure-iot-device-iothub-py Python-apparaat-SDK
azure-iot-device Node.js device SDK
azure-iothub Node.js service-SDK
com.microsoft.azure.iothub-java-client Sdk voor Java-apparaten
com.microsoft.azure.iothub.service.sdk Java-service-SDK
com.microsoft.azure.sdk.iot.iot-device-client Sdk voor Java-apparaten
com.microsoft.azure.sdk.iot.iot-service-client Java-service-SDK
E Embedded C
C + (OSSimplified = Eclipse ThreadX) Eclipse ThreadX

U kunt de SDK-versie-eigenschap extraheren wanneer u query's uitvoert op IoT Hub-resourcelogboeken. Met de volgende query wordt bijvoorbeeld de SDK-versie-eigenschap (en apparaat-id) geëxtraheerd uit de eigenschappen die worden geretourneerd door verbindingsbewerkingen. Deze twee eigenschappen worden samen met de tijd van de bewerking en de resource-id van de IoT-hub waarmee het apparaat verbinding maakt, naar de resultaten geschreven.

// SDK version of devices
// List of devices and their SDK versions that connect to IoT Hub
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS"
| where Category == "Connections"
| extend parsed_json = parse_json(properties_s) 
| extend SDKVersion = tostring(parsed_json.sdkVersion) , DeviceId = tostring(parsed_json.deviceId)
| distinct DeviceId, SDKVersion, TimeGenerated, _ResourceId

Logboeken lezen van Azure Event Hubs

Nadat u logboekregistratie van gebeurtenissen hebt ingesteld via diagnostische instellingen, kunt u toepassingen maken die de logboeken lezen, zodat u actie kunt ondernemen op basis van de informatie in deze logboeken. Met de volgende voorbeeldcode worden logboeken opgehaald uit een Event Hub.

class Program
{ 
    static string connectionString = "{your AMS eventhub endpoint connection string}";
    static string monitoringEndpointName = "{your AMS event hub endpoint name}";
    static EventHubClient eventHubClient;
    //This is the Diagnostic Settings schema
    class AzureMonitorDiagnosticLog
    {
        string time { get; set; }
        string resourceId { get; set; }
        string operationName { get; set; }
        string category { get; set; }
        string level { get; set; }
        string resultType { get; set; }
        string resultDescription { get; set; }
        string durationMs { get; set; }
        string callerIpAddress { get; set; }
        string correlationId { get; set; }
        string identity { get; set; }
        string location { get; set; }
        Dictionary<string, string> properties { get; set; }
    };

    static void Main(string[] args)
    {
        Console.WriteLine("Monitoring. Press Enter key to exit.\n");
        eventHubClient = EventHubClient.CreateFromConnectionString(connectionString, monitoringEndpointName);
        var d2cPartitions = eventHubClient.GetRuntimeInformationAsync().PartitionIds;
        CancellationTokenSource cts = new CancellationTokenSource();
        var tasks = new List<Task>();
        foreach (string partition in d2cPartitions)
        {
            tasks.Add(ReceiveMessagesFromDeviceAsync(partition, cts.Token));
        }
        Console.ReadLine();
        Console.WriteLine("Exiting...");
        cts.Cancel();
        Task.WaitAll(tasks.ToArray());
    }

    private static async Task ReceiveMessagesFromDeviceAsync(string partition, CancellationToken ct)
    {
        var eventHubReceiver = eventHubClient.GetDefaultConsumerGroup().CreateReceiver(partition, DateTime.UtcNow);
        while (true)
        {
            if (ct.IsCancellationRequested)
            {
                await eventHubReceiver.CloseAsync();
                break;
            }
            EventData eventData = await eventHubReceiver.ReceiveAsync(new TimeSpan(0,0,10));
            if (eventData != null)
            {
                string data = Encoding.UTF8.GetString(eventData.GetBytes());
                Console.WriteLine("Message received. Partition: {0} Data: '{1}'", partition, data);
                var deserializer = new JavaScriptSerializer();
                //deserialize json data to azure monitor object
                AzureMonitorDiagnosticLog message = new JavaScriptSerializer().Deserialize<AzureMonitorDiagnosticLog>(result);
            }
        }
    }
}

Zie de referentie voor bewakingsgegevens van Azure IoT Hub voor de beschikbare resourcelogboekcategorieën, de bijbehorende Log Analytics-tabellen en de logboekschema's voor IoT Hub.

Bewakingsgegevens analyseren

Er zijn veel hulpprogramma's voor het analyseren van bewakingsgegevens.

Azure Monitor-hulpprogramma's

Azure Monitor ondersteunt de volgende basishulpprogramma's:

Hulpprogramma's waarmee complexere visualisaties mogelijk zijn, zijn onder andere:

  • Dashboards waarmee u verschillende soorten gegevens kunt combineren in één deelvenster in Azure Portal.
  • Werkmappen, aanpasbare rapporten die u kunt maken in Azure Portal. Werkmappen kunnen tekst, metrische gegevens en logboekquery's bevatten.
  • Grafana, een open platformhulpprogramma dat excelleert in operationele dashboards. U kunt Grafana gebruiken om dashboards te maken die gegevens uit meerdere andere bronnen dan Azure Monitor bevatten.
  • Power BI, een business analytics-service die interactieve visualisaties biedt in verschillende gegevensbronnen. U kunt Power BI zo configureren dat logboekgegevens automatisch vanuit Azure Monitor worden geïmporteerd om te profiteren van deze visualisaties.

Azure Monitor-exporthulpprogramma's

U kunt gegevens uit Azure Monitor ophalen in andere hulpprogramma's met behulp van de volgende methoden:

Als u aan de slag wilt gaan met de REST API voor Azure Monitor, raadpleegt u de stapsgewijze instructies voor Azure Monitoring REST API.

Kusto-query's

U kunt bewakingsgegevens analyseren in de Azure Monitor-logboeken/Log Analytics-opslag met behulp van de Kusto-querytaal (KQL).

Belangrijk

Wanneer u Logboeken selecteert in het menu van de service in de portal, wordt Log Analytics geopend met het querybereik ingesteld op de huidige service. Dit bereik betekent dat logboekquery's alleen gegevens uit dat type resource bevatten. Als u een query wilt uitvoeren die gegevens uit andere Azure-services bevat, selecteert u Logboeken in het menu Azure Monitor . Zie Log-querybereik en tijdsbereik in Azure Monitor Log Analytics voor meer informatie.

Zie de interface voor Log Analytics-query's voor een lijst met algemene query's voor elke service.

Gebruik de volgende Kusto-query's om uw IoT-hub te bewaken.

  • Connectiviteitsfouten: apparaatverbindingsfouten identificeren.

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS"
    | where Category == "Connections" and Level == "Error"
    
  • Beperkingsfouten: identificeer apparaten die de meeste aanvragen hebben gedaan, wat resulteert in beperkingsfouten.

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS"
    | where ResultType == "429001"
    | extend DeviceId = tostring(parse_json(properties_s).deviceId)
    | summarize count() by DeviceId, Category, _ResourceId
    | order by count_ desc
    
  • Dode eindpunten: identificeer dode of beschadigde eindpunten op het aantal keren dat het probleem is gerapporteerd en weet waarom.

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS"
    | where Category == "Routes" and OperationName in ("endpointDead", "endpointUnhealthy")
    | extend parsed_json = parse_json(properties_s)
    | extend Endpoint = tostring(parsed_json.endpointName), Reason = tostring(parsed_json.details) 
    | summarize count() by Endpoint, OperationName, Reason, _ResourceId
    | order by count_ desc
    
  • Foutoverzicht: het aantal fouten voor alle bewerkingen per type.

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS"
    | where Level == "Error"
    | summarize count() by ResultType, ResultDescription, Category, _ResourceId
    
  • Onlangs verbonden apparaten: Lijst met apparaten die IoT Hub heeft gezien om verbinding te maken in de opgegeven periode.

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS"
    | where Category == "Connections" and OperationName == "deviceConnect"
    | extend DeviceId = tostring(parse_json(properties_s).deviceId)
    | summarize max(TimeGenerated) by DeviceId, _ResourceId
    
  • Verbindingsgebeurtenissen voor een specifiek apparaat: alle verbindingsgebeurtenissen die zijn geregistreerd voor een specifiek apparaat (testapparaat).

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS"
    | where Category == "Connections"
    | extend DeviceId = tostring(parse_json(properties_s).deviceId)
    | where DeviceId == "test-device"
    
  • SDK-versie van apparaten: lijst met apparaten en hun SDK-versies voor apparaatverbindingen of apparaat met clouddubbelbewerkingen.

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS"
    | where Category == "Connections" or Category == "D2CTwinOperations"
    | extend parsed_json = parse_json(properties_s)
    | extend SDKVersion = tostring(parsed_json.sdkVersion) , DeviceId = tostring(parsed_json.deviceId)
    | distinct DeviceId, SDKVersion, TimeGenerated, _ResourceId
    

Waarschuwingen

Azure Monitor-waarschuwingen melden u proactief wanneer er specifieke voorwaarden worden gevonden in uw bewakingsgegevens. Met waarschuwingen kunt u problemen in uw systeem identificeren en oplossen voordat uw klanten ze opmerken. Zie Azure Monitor-waarschuwingen voor meer informatie.

Er zijn veel bronnen van algemene waarschuwingen voor Azure-resources. Zie Voorbeeldquery's voor logboekwaarschuwingen voor voorbeelden van veelvoorkomende waarschuwingen voor Azure-resources. De site Azure Monitor Baseline Alerts (AMBA) biedt een semi-geautomatiseerde methode voor het implementeren van belangrijke metrische platformwaarschuwingen, dashboards en richtlijnen. De site is van toepassing op een voortdurend uitbreidende subset van Azure-services, inclusief alle services die deel uitmaken van de Azure Landing Zone (ALZ).

Het algemene waarschuwingsschema standaardiseert het verbruik van Azure Monitor-waarschuwingsmeldingen. Zie Algemeen waarschuwingsschema voor meer informatie.

Typen waarschuwingen

U kunt een waarschuwing ontvangen voor elke metrische gegevensbron of logboekgegevensbron in het Azure Monitor-gegevensplatform. Er zijn veel verschillende typen waarschuwingen, afhankelijk van de services die u bewaakt en de bewakingsgegevens die u verzamelt. Verschillende typen waarschuwingen hebben verschillende voordelen en nadelen. Zie Het juiste waarschuwingstype voor bewaking kiezen voor meer informatie.

In de volgende lijst worden de typen Azure Monitor-waarschuwingen beschreven die u kunt maken:

  • Metrische waarschuwingen evalueren met regelmatige tussenpozen resourcegegevens. Metrische gegevens kunnen metrische platformgegevens, aangepaste metrische gegevens, logboeken van Azure Monitor zijn geconverteerd naar metrische gegevens of metrische Gegevens van Application Insights. Metrische waarschuwingen kunnen ook meerdere voorwaarden en dynamische drempelwaarden toepassen.
  • Met logboekwaarschuwingen kunnen gebruikers een Log Analytics-query gebruiken om resourcelogboeken met een vooraf gedefinieerde frequentie te evalueren.
  • Waarschuwingen voor activiteitenlogboeken worden geactiveerd wanneer een nieuwe gebeurtenis van het activiteitenlogboek plaatsvindt die overeenkomt met gedefinieerde voorwaarden. Resource Health-waarschuwingen en Service Health-waarschuwingen zijn waarschuwingen voor activiteitenlogboeken die rapporteren over uw service en resourcestatus.

Sommige Azure-services ondersteunen ook waarschuwingen voor slimme detectie, Prometheus-waarschuwingen of aanbevolen waarschuwingsregels.

Voor sommige services kunt u op schaal bewaken door dezelfde waarschuwingsregel voor metrische gegevens toe te passen op meerdere resources van hetzelfde type dat in dezelfde Azure-regio aanwezig is. Afzonderlijke meldingen worden verzonden voor elke bewaakte resource. Zie Meerdere resources bewaken met één waarschuwingsregel voor ondersteunde Azure-services en -clouds.

Waarschuwingsregels voor IoT Hub

U kunt waarschuwingen instellen voor elke vermelding van metrische gegevens, logboekvermeldingen of activiteitenlogboeken die worden vermeld in de naslaginformatie over ioT Hub-bewakingsgegevens.

Metrische waarschuwingen instellen voor de verbinding met apparaten

U kunt waarschuwingen instellen op basis van de metrische platformgegevens die door IoT Hub worden verzonden. Met waarschuwingen voor metrische gegevens kunt u personen waarschuwen dat er een interessevoorwaarde is opgetreden en ook acties activeren die automatisch op die voorwaarde kunnen reageren.

De metrische gegevens voor verbonden apparaten (preview) geven aan hoeveel apparaten zijn verbonden met uw IoT Hub. Als deze metrische waarde lager is dan een drempelwaarde, kan een waarschuwing het volgende activeren:

Metrische waarschuwingslogica-instellingen voor verbonden apparaten.

U kunt waarschuwingsregels voor metrische gegevens gebruiken om te controleren op afwijkingen van de apparaatkoppeling op schaal. Gebruik waarschuwingen om te bepalen wanneer een aanzienlijk aantal apparaten onverwacht wordt verbroken. Wanneer deze situatie wordt gedetecteerd, kunt u logboeken bekijken om het probleem op te lossen. Als u de verbinding per apparaat wilt bewaken, worden de verbindingen voor kritieke apparaten in bijna realtime verbroken, maar u moet Event Grid gebruiken.

Zie Waarschuwingen in IoT Hub bewaken voor meer informatie over waarschuwingen met IoT Hub. Zie de zelfstudie met metrische gegevens en logboeken gebruiken voor een overzicht van het maken van waarschuwingen in IoT Hub. Zie Overzicht van waarschuwingen in Microsoft Azure in de Documentatie van Azure Monitor voor een gedetailleerder overzicht van waarschuwingen.

Advisor-aanbevelingen

Voor sommige services, als er kritieke omstandigheden of aanstaande wijzigingen optreden tijdens resourcebewerkingen, wordt een waarschuwing weergegeven op de pagina Serviceoverzicht in de portal. Meer informatie en aanbevolen oplossingen voor de waarschuwing vindt u in Advisor-aanbevelingen onder Bewaking in het linkermenu. Tijdens normale bewerkingen worden er geen aanbevelingen van advisor weergegeven.

Zie het overzicht van Azure Advisor voor meer informatie over Azure Advisor.