Eenvoudige Azure Monitor-logboekquery's maken om informatie op te halen uit logboekgegevens

Voltooid

U kunt Azure Monitor-logboekquery's gebruiken om informatie uit logboekgegevens te extraheren. Query's zijn belangrijk voor het controleren van de logboekgegevens die door Azure Monitor worden vastgelegd.

In het voorbeeldscenario gebruikt het operations-team logboekquery's van Azure Monitor om de status van het systeem te onderzoeken.

Azure Monitor-logboekquery's schrijven met behulp van Log Analytics

U kunt het hulpprogramma voor logboekanalyse in Azure Portal vinden en het gebruiken voor het uitvoeren van voorbeeldquery's of voor het maken van uw eigen query's:

  1. Selecteer Monitor in azure Portal in het linkermenuvenster.

    De Azure Monitor-pagina wordt samen met meer opties weergegeven, waaronder activiteitenlogboek, waarschuwingen, metrische gegevens en logboeken.

  2. Selecteer Logboeken.

    Hier kunt u uw query invoeren en de uitvoer bekijken.

    Schermopname van Azure Monitor waarin een nieuw querytabblad is geopend.

Query's schrijven met behulp van de Kusto-taal

U kunt de Kusto-querytaal gebruiken om logboekgegevens op te vragen voor uw services die worden uitgevoerd in Azure. Een Kusto-query is een alleen-lezenaanvraag voor het verwerken van gegevens en het retourneren van resultaten. U vermeldt de query in tekst zonder opmaak met behulp van een gegevensstroommodel dat is ontworpen om de syntaxis gemakkelijk te lezen, te schrijven en te automatiseren. In de query wordt gebruikgemaakt van schema-entiteiten die worden geordend in een hiërarchie is lijkt op die van Azure SQL Database: databases, tabellen en kolommen.

Een Kusto-query bestaat uit een reeks query-instructies, gescheiden door een puntkomma (;). Ten minste één instructie is een tabellaire expressie-instructie. Met een tabellaire expressie-instructie worden de gegevens gerangschikt als een tabel met kolommen en rijen.

De syntaxis van een tabellaire expressie-instructie heeft een tabellaire gegevensstroom van de ene tabellaire queryoperator naar een andere, te beginnen met een gegevensbron. Een gegevensbron kan een tabel in een database zijn of een operator die gegevens produceert. De gegevens stromen vervolgens door een set operatoren voor gegevenstransformatie die zijn gekoppeld aan het scheidingsteken (|pipe).

De volgende Kusto-query heeft bijvoorbeeld één tabellaire expressie-instructie. De instructie begint met een verwijzing naar een tabel met de naam Events. De database die als host fungeert voor deze tabel is hier impliciet en onderdeel van de verbindingsgegevens. De gegevens voor die tabel zijn opgeslagen in rijen en worden gefilterd op de waarde van de StartTime-kolom. De gegevens is worden verder gefilterd op de waarde van de State-kolom. De query retourneert vervolgens het aantal resulterende rijen.

Events
| where StartTime >= datetime(2018-11-01) and StartTime < datetime(2018-12-01)
| where State == "FLORIDA"  
| count

Notitie

De Kusto-querytaal die door Azure Monitor wordt gebruikt, is hoofdlettergevoelig. Trefwoorden in de taal worden over het algemeen met kleine letters geschreven. Als u namen van tabellen of kolommen in een query gebruikt, moet u ervoor zorgen dat u de juiste vorm gebruikt (hoofdletters of kleine letters).

Gebeurtenissen die zijn vastgelegd vanuit de gebeurtenislogboeken van bewaakte computers zijn slechts één type gegevensbron. Azure Monitor biedt veel andere typen gegevensbronnen. De gegevensbron Heartbeat rapporteert bijvoorbeeld de status van alle computers die rapporteren aan uw Log Analytics-werkruimte. U kunt ook gegevens vastleggen uit prestatiemeteritems en updatebeheerrecords.

In het volgende voorbeeld wordt de meest recente heartbeat-record voor elke computer opgehaald. De computer wordt geïdentificeerd aan de hand van het IP-adres. In dit voorbeeld wordt de record met de meest recente waarde voor elk IP-adres door de summarize-aggregatie met de arg_max-functie geretourneerd.

Heartbeat
| summarize arg_max(TimeGenerated, *) by ComputerIP