Waarschuwingen in een Azure Monitor
Overzicht
Logboekwaarschuwingen zijn een van de waarschuwingstypen die worden ondersteund in Azure-waarschuwingen. Met logboekwaarschuwingen kunnen gebruikers een Log Analytics-query gebruiken om de logboeken van resources elke setfrequentie te evalueren en een waarschuwing te geven op basis van de resultaten. Regels kunnen een of meer acties activeren met actiegroepen.
Notitie
Logboekgegevens uit een Log Analytics-werkruimte kunnen worden verzonden naar Azure Monitor opslag voor metrische gegevens. Waarschuwingen voor metrische gegevens hebbeneen ander gedrag, wat mogelijk wenselijker is, afhankelijk van de gegevens waarmee u werkt. Zie Metrische waarschuwing voor logboeken voor meer informatie over wat en hoe u logboeken naar metrische gegevens kunt doorslijsten.
Vereisten
Met logboekwaarschuwingen worden query's uitgevoerd op Log Analytics-gegevens. Eerst moet u beginnen met het verzamelen van logboekgegevens en de logboekgegevens opvragen voor problemen. U kunt het artikel voorbeelden van waarschuwingsquery's in Log Analytics gebruiken om te begrijpen wat u kunt ontdekken of aan de slag te gaan met het schrijven van uw eigen query.
Azure Monitoring Contributor is een algemene rol die nodig is voor het maken, wijzigen en bijwerken van logboekwaarschuwingen. U & ook toegang tot de query-uitvoeringsrechten voor de resourcelogboeken. Gedeeltelijke toegang tot resourcelogboeken kan mislukken bij query's of gedeeltelijke resultaten retourneren. Meer informatie over het configureren van logboekwaarschuwingen in Azure.
Notitie
Logboekwaarschuwingen voor Log Analytics werden vroeger beheerd met behulp van de verouderde Log Analytics-waarschuwings-API. Meer informatie over het overschakelen naar de huidige ScheduledQueryRules-API.
Definitie van query-evaluatie
De voorwaardedefinitie voor regels voor zoeken in logboeken begint met:
- Welke query moet worden uitgevoerd?
- De resultaten gebruiken
In de volgende secties worden de verschillende parameters beschreven die u kunt gebruiken om de bovenstaande logica in te stellen.
Logboekquery
De Log Analytics-query die wordt gebruikt om de regel te evalueren. De resultaten die door deze query worden geretourneerd, worden gebruikt om te bepalen of een waarschuwing moet worden geactiveerd. Het bereik van de query kan worden beperkt tot:
- Een specifieke resource, zoals een virtuele machine.
- Een resource op schaal, zoals een abonnement of resourcegroep.
- Meerdere resources met query op meerdere resources.
Belangrijk
Waarschuwingsquery's hebben beperkingen voor optimale prestaties en de relevantie van de resultaten. Klik hier voor meer informatie.
Belangrijk
Resourcegerichte query's en query's op verschillende resources worden alleen ondersteund met behulp van de huidige API scheduledQueryRules. Als u de verouderde Log Analytics-waarschuwings-API gebruikt,moet u overschakelen. Meer informatie over schakelen
Tijdsbereik van query
Tijdsbereik wordt ingesteld in de definitie van de regelvoorwaarde. In werkruimten en Application Insights wordt dit Period genoemd. In alle andere resourcetypen wordt dit querytijdbereik overschrijven genoemd.
Net als in Log Analytics beperkt het tijdsbereik querygegevens tot het opgegeven bereik. Zelfs als de opdracht ago wordt gebruikt in de query, is het tijdsbereik van toepassing.
Een query scant bijvoorbeeld 60 minuten, wanneer het tijdsbereik 60 minuten is, zelfs als de tekst ago(1d) bevat. Het tijdsbereik en het filteren van querytijd moeten overeenkomen. In het voorbeeld zou het wijzigen van het querytijdsbereik voor het overschrijven van de periode in één dag / werken zoals verwacht.
Meting
Logboekwaarschuwingen veranderen logboeken in numerieke waarden die kunnen worden geëvalueerd. U kunt twee verschillende dingen meten:
Aantal resultatentabelrijen
Het aantal resultaten is de standaardmeting. Ideaal voor het werken met gebeurtenissen zoals Windows gebeurtenislogboeken, syslog, toepassings uitzonderingen. Wordt triggers wanneer logboekrecords wel of niet plaatsvinden in het geëvalueerde tijdvenster.
Logboekwaarschuwingen werken het beste wanneer u gegevens in het logboek probeert te detecteren. Het werkt minder goed wanneer u een gebrek aan gegevens in de logboeken probeert te detecteren. Bijvoorbeeld waarschuwingen over heartbeat van virtuele machines.
Voor werkruimten en Application Insights wordt deze aangeroepen op basis van met de selectie Aantal resultaten. In alle andere resourcetypen wordt deze meting genoemd met selectietabelrijen.
Notitie
Omdat logboeken semi-gestructureerde gegevens zijn, zijn ze inherent meer latentie dan metrische gegevens, kan er een fout zijn bij het detecteren van een gebrek aan gegevens in de logboeken en kunt u overwegen om waarschuwingen voor metrische gegevens te gebruiken. U kunt gegevens vanuit logboeken naar het metrische gegevensopslag verzenden met behulp van waarschuwingen voor metrische gegevens voor logboeken.
Voorbeeld van gebruiksvoorbeeld voor aantal tabelrijen met resultaten
U wilt weten wanneer uw toepassing heeft gereageerd met foutcode 500 (interne serverfout). U maakt een waarschuwingsregel met de volgende gegevens:
- Query:
requests
| where resultCode == "500"
- Periode/Aggregatiegranulatie: 15 minuten
- Waarschuwingsfrequentie: 15 minuten
- Drempelwaarde: Groter dan 0
Waarschuwingsregels controleert vervolgens op aanvragen die eindigen op 500-foutcode. De query wordt elke 15 minuten uitgevoerd in de afgelopen 15 minuten. Als er zelfs één record wordt gevonden, wordt de waarschuwing activeert en worden de geconfigureerde acties activeert.
Berekening van de meting op basis van een numerieke kolom (zoals cpu-tellerwaarde)
Voor werkruimten en Application Insights wordt deze aangeroepen op basis van met selectie Metrische meting. In alle andere resourcetypen wordt deze meting genoemd en wordt een kolomnaam voor een getal geselecteerd.
Type aggregatie
De berekening die wordt uitgevoerd op meerdere records om deze te aggregeren tot één numerieke waarde. Bijvoorbeeld:
- Aantal retourneert het aantal records in de query
- Average retourneert het gemiddelde van de metingkolom Gedefinieerde aggregatiegranulatie.
In werkruimten en Application Insights wordt dit alleen ondersteund in meettype Metrische meting. Het queryresultaat moet een kolom met de naam AggregatedValue bevatten die een numerieke waarde biedt na een door de gebruiker gedefinieerde aggregatie. In alle andere resourcetypen wordt Aggregatietype geselecteerd in het veld van die naam.
Aggregatiegranulariteit
Hiermee bepaalt u het interval dat wordt gebruikt om meerdere records te aggregeren tot één numerieke waarde. Als u bijvoorbeeld 5 minuten hebt opgegeven, worden records gegroepeerd op intervallen van 5 minuten met behulp van het opgegeven aggregatietype.
In werkruimten en Application Insights wordt dit alleen ondersteund in meettype Metrische meting. Het queryresultaat moet bin() bevatten om het interval in de queryresultaten in te stellen. In alle andere resourcetypen wordt het veld dat deze instelling beheert Aggregatiegranulatie genoemd.
Notitie
Omdat bin() kan leiden tot ongelijke tijdsintervallen, converteert de waarschuwingsservice automatisch de functie bin() naar de functie bin_at() met de juiste tijd tijdens runtime, om ervoor te zorgen dat de resultaten met een vast punt worden bereikt.
Splitsen op waarschuwingsdimensie
Splits waarschuwingen op nummer- of tekenreekskolommen in afzonderlijke waarschuwingen door ze te groeperen in unieke combinaties. Bij het maken van resourcegerichte waarschuwingen op schaal (bereik van abonnement of resourcegroep), kunt u opsplitsen op de kolom Azure-resource-id. Als u de kolom Azure-resource-id splitst, wordt het doel van de waarschuwing gewijzigd in de opgegeven resource.
Splitsen op de kolom Azure-resource-id wordt aanbevolen als u dezelfde voorwaarde voor meerdere Azure-resources wilt bewaken. Bijvoorbeeld het bewaken van alle virtuele machines op CPU-gebruik van meer dan 80%. U kunt ook besluiten om niet te splitsen wanneer u een voorwaarde voor meerdere resources in het bereik wilt. Bijvoorbeeld om te controleren of ten minste vijf machines in het bereik van de resourcegroep een CPU-gebruik hebben van meer dan 80%.
In werkruimten en Application Insights wordt dit alleen ondersteund in meettype Metrische meting. Het veld heet Aggregatie op. Het is beperkt tot drie kolommen. Het hebben van meer dan drie groepen op kolommen in de query kan leiden tot onverwachte resultaten. In alle andere resourcetypen wordt deze geconfigureerd in de sectie Splitsen op dimensies van de voorwaarde (maximaal zes splitsingen).
Voorbeeld van splitsen op waarschuwingsdimensie
U wilt bijvoorbeeld fouten controleren voor meerdere virtuele machines met uw website/app in een specifieke resourcegroep. U kunt dit als volgt doen met behulp van een logboekwaarschuwingsregel:
Query:
// Reported errors union Event, Syslog // Event table stores Windows event records, Syslog stores Linux records | where EventLevelName == "Error" // EventLevelName is used in the Event (Windows) records or SeverityLevel== "err" // SeverityLevel is used in Syslog (Linux) recordsWanneer u werkruimten en Application Insights waarschuwingslogica voor metrische meetgegevens gebruikt, moet deze regel worden toegevoegd aan de querytekst:
| summarize AggregatedValue = count() by Computer, bin(TimeGenerated, 15m)Kolom Resource-id: _ResourceId (splitsen op resource-id-kolom in waarschuwingsregels is momenteel alleen beschikbaar voor abonnementen en resourcegroepen)
Dimensies/geaggregeerd op:
- Computer = VM1, VM2 (filterwaarden in de definitie van waarschuwingsregels zijn momenteel niet beschikbaar voor werkruimten en application Insights. Filter in de querytekst.)
Periode/Aggregatiegranulatie: 15 minuten
Waarschuwingsfrequentie: 15 minuten
Drempelwaarde: Groter dan 0
Met deze regel wordt bewaakt of er in de afgelopen 15 minuten foutgebeurtenissen zijn opgetreden op een virtuele machine. Elke virtuele machine wordt afzonderlijk bewaakt en activeert acties afzonderlijk.
Notitie
Splitsen op waarschuwingsdimensie is alleen beschikbaar voor de huidige API scheduledQueryRules. Als u de verouderde Log Analytics-waarschuwings-API gebruikt,moet u overschakelen. Meer informatie over overschakelen. Resourcegerichte waarschuwingen op schaal worden alleen ondersteund in de API-versie 2020-08-01 en hoger.
Definitie van waarschuwingslogica
Zodra u de query definieert om de resultaten uit te voeren en te evalueren, moet u de waarschuwingslogica definiëren en bepalen wanneer acties moeten worden uitgevoerd. In de volgende secties worden de verschillende parameters beschreven die u kunt gebruiken:
Drempelwaarde en operator
De queryresultaten worden omgezet in een getal dat wordt vergeleken met de drempelwaarde en operator.
Frequentie
Notitie
Er worden momenteel geen extra kosten in rekening gebracht voor de preview van waarschuwingen voor frequentielogboek van 1 minuut. Prijzen voor functies die in preview zijn, worden in de toekomst aangekondigd en er wordt een kennisgeving vóór de start van de facturering weergegeven. Als u er na de kennisgevingsperiode voor kiest om waarschuwingen voor frequentielogboek van 1 minuut te blijven gebruiken, wordt u gefactureerd tegen het toepasselijke tarief.
Het interval waarin de query wordt uitgevoerd. Kan worden ingesteld van een minuut op een dag. Moet gelijk zijn aan of kleiner zijn dan het querytijdsbereik om logboekrecords niet te missen.
Als u de tijdsperiode bijvoorbeeld in stelt op 30 minuten en de frequentie op 1 uur. Als de query om 00:00 uur wordt uitgevoerd, worden records tussen 23:30 en 00:00 uur retourneert. De volgende keer dat de query wordt uitgevoerd, is 01:00, die records retournt tussen 00:30 en 01:00. Records die tussen 00:00 en 00:30 zijn gemaakt, worden nooit geëvalueerd.
Aantal schendingen om waarschuwing te activeren
U kunt de evaluatieperiode voor waarschuwingen en het aantal fouten opgeven dat nodig is om een waarschuwing te activeren. U kunt een impacttijd voor het activeren van een waarschuwing beter definiëren.
Als uw regel Aggregatiegranulatie bijvoorbeeld is gedefinieerd als '5 minuten', kunt u alleen een waarschuwing activeren als er drie fouten (15 minuten) van het afgelopen uur zijn opgetreden. Deze instelling wordt gedefinieerd door het bedrijfsbeleid van uw toepassing.
Waarschuwingen status en oplossen
Logboekwaarschuwingen kunnen staatloos of stateful zijn (momenteel in preview).
Staatloze waarschuwingen worden telkens wanneer aan de voorwaarde wordt voldaan, brand, zelfs als deze eerder is ge fireed. U kunt de waarschuwing markeren als gesloten zodra het waarschuwings exemplaar is opgelost. U kunt ook acties dempen om te voorkomen dat deze worden triggers voor een periode nadat een waarschuwingsregel is afgelost. In Log Analytics-werkruimten en toepassings-Insights het de naam Waarschuwingen onderdrukken. In alle andere resourcetypen wordt dit Acties dempen genoemd.
Zie dit voorbeeld van een stateless evaluatie van waarschuwingen:
| Tijd | Evaluatie van logboekvoorwaarde | Resultaat |
|---|---|---|
| 00:05 | FALSE | Waarschuwing wordt niet gefingeerd. Er worden geen acties aangeroepen. |
| 00:10 | TRUE | Waarschuwingsbranden en actiegroepen met de naam . Nieuwe waarschuwingstoestand ACTIEF. |
| 00:15 | TRUE | Waarschuwingsbranden en actiegroepen met de naam . Nieuwe waarschuwingstoestand ACTIEF. |
| 00:20 | FALSE | Waarschuwing wordt niet gefingeerd. Er worden geen acties aangeroepen. De status Van schadelijke waarschuwingen blijft ACTIEF. |
Stateful waarschuwingen worden één keer per incident ge fireed en opgelost. De waarschuwingsregel wordt opgelost wanneer gedurende een bepaalde evaluatieperiode gedurende 30 minuten niet aan de waarschuwingsvoorwaarde wordt voldaan (om rekening te houden met vertraging bij logboekingestie) en voor drie opeenvolgende evaluaties om ruis te verminderen als er flapping-omstandigheden zijn. Met een frequentie van 5 minuten wordt de waarschuwing bijvoorbeeld na 40 minuten opgelost of met een frequentie van 1 minuut, waarna de waarschuwing na 32 minuten wordt opgelost. De opgeloste melding wordt verzonden via web hooks of e-mail. De status van het waarschuwings exemplaar (monitorstatus genoemd) in Azure Portal is ook ingesteld op opgelost.
De functie Stateful-waarschuwingen is momenteel beschikbaar als preview-versie in de openbare Cloud van Azure. U kunt dit instellen met behulp van Waarschuwingen automatisch oplossen in de sectie details van de waarschuwing.
Locatieselectie in logboekwaarschuwingen
Met logboekwaarschuwingen kunt u een locatie voor waarschuwingsregels instellen. In Log Analytics-werkruimten moet de regellocatie overeenkomen met de locatie van de werkruimte. In alle andere resources kunt u een van de ondersteunde locaties selecteren die zijn afgestemd op de lijst met ondersteunde regio's van Log Analytics.
Locatie beïnvloedt in welke regio de waarschuwingsregel wordt geëvalueerd. Query's worden uitgevoerd op de logboekgegevens in de geselecteerde regio, wat betekent dat de waarschuwingsservice van eind tot eind globaal is. Dit betekent dat waarschuwingsregeldefinitie, waarschuwingswaarschuwingen, meldingen en acties niet zijn gebonden aan de locatie in de waarschuwingsregel. Gegevens worden vanuit de setregio overgeplaatst omdat Azure Monitor waarschuwingenservice een niet-regionale service is.
Prijzen en facturering van logboekwaarschuwingen
Prijsinformatie vindt u op Azure Monitor pagina met prijzen. Logboekwaarschuwingen worden vermeld onder resourceprovider microsoft.insights/scheduledqueryrules met:
- Logboekwaarschuwingen op application Insights weergegeven met exacte resourcenaam, samen met resourcegroep- en waarschuwingseigenschappen.
- Logboekwaarschuwingen in Log Analytics die worden weergegeven met exacte resourcenaam, samen met resourcegroep- en waarschuwingseigenschappen; bij het maken met behulp van de API scheduledQueryRules.
- Logboekwaarschuwingen die zijn gemaakt op basis van de verouderde Log Analytics-API, worden niet bijgeslagen in Azure-resources en hebben geen afgedwongen unieke resourcenamen. Deze waarschuwingen worden nog steeds gemaakt
microsoft.insights/scheduledqueryrulesop als verborgen resources, die deze naamgevingsstructuur voor resources<WorkspaceName>|<savedSearchId>|<scheduleId>|<ActionId>hebben. Logboekwaarschuwingen op verouderde API worden weergegeven met de bovenstaande verborgen resourcenaam, samen met resourcegroep- en waarschuwingseigenschappen.
Notitie
Niet-ondersteunde resourcetekens, zoals , worden vervangen door in de verborgen resourcenamen. Dit wordt <, >, %, &, \, ?, / ook weergegeven in de _ factureringsgegevens.
Notitie
Logboekwaarschuwingen voor Log Analytics werden vroeger beheerd met behulp van de verouderde Log Analytics-waarschuwings-API en verouderde sjablonen van opgeslagen zoekopdrachten en waarschuwingen van Log Analytics. Meer informatie over het overschakelen naar de huidige ScheduledQueryRules-API. Beheer van waarschuwingsregel moet worden uitgevoerd met behulp van de verouderde Log Analytics-API totdat u besluit over te schakelen en u de verborgen resources niet kunt gebruiken.
Volgende stappen
- Meer informatie over het maken van logboekwaarschuwingen in Azure.
- Informatie over webhooks in logboekwaarschuwingen in Azure.
- Meer informatie over Azure-waarschuwingen.
- Meer informatie over Log Analytics.