De aanmeldingsstatus van toepassingen bewaken voor tolerantie

Als u de infrastructuurtolerantie wilt vergroten, stelt u bewaking in van de aanmeldingsstatus van toepassingen voor uw kritieke toepassingen. U kunt een waarschuwing ontvangen wanneer er een incident optreedt. In dit artikel wordt uitgelegd hoe u de werkmap voor de aanmeldingsstatus van de app instelt om te controleren op onderbrekingen van de aanmeldingen van uw gebruikers.

U kunt waarschuwingen configureren op basis van de werkmap voor de aanmeldingsstatus van de app. Met deze werkmap kunnen beheerders verificatieaanvragen voor toepassingen in hun tenants controleren. De werkmap bevat de volgende belangrijke mogelijkheden:

  • Configureer de werkmap voor het bewaken van alle of afzonderlijke apps met bijna realtime gegevens.
  • Configureer waarschuwingen voor wijzigingen in verificatiepatronen, zodat u deze kunt onderzoeken en erop kunt reageren.
  • Vergelijk trends gedurende een bepaalde periode. Week na week is de standaardinstelling van de werkmap.

Notitie

Bekijk alle beschikbare werkmappen en de vereisten voor het gebruik ervan in Azure Monitor-werkmappen gebruiken voor rapporten.

Tijdens een betrokken gebeurtenis kunnen er twee dingen gebeuren:

  • Het aantal aanmeldingen voor een toepassing kan plotseling afnemen wanneer gebruikers zich niet kunnen aanmelden.
  • Het aantal mislukte aanmeldingen kan toenemen.

Vereisten

De werkmap voor de aanmeldingsstatus van de app configureren

Als u toegang wilt krijgen tot werkmappen in Azure Portal, selecteert u Microsoft Entra-id en selecteert u Werkmappen. In de volgende schermopname ziet u de werkmapgalerie in Azure Portal.

Screenshot showing the workbooks gallery in the Azure portal.

Werkmappen worden weergegeven onder Gebruik, Voorwaardelijke toegang en Problemen oplossen. De werkmap App-aanmeldingsstatus wordt weergegeven in de sectie Status . Nadat u een werkmap hebt gebruikt, wordt deze mogelijk weergegeven in de sectie Onlangs gewijzigde werkmappen .

U kunt de werkmap voor de aanmeldingsstatus van de app gebruiken om te visualiseren wat er gebeurt met uw aanmeldingen. Zoals in de volgende schermopname wordt weergegeven, worden in de werkmap twee grafieken weergegeven.

Screenshot showing sign in health graphs.

In de voorgaande schermopname zijn er twee grafieken:

  • Gebruik per uur (aantal geslaagde gebruikers). Als u uw huidige aantal geslaagde gebruikers vergelijkt met een typische gebruiksperiode, kunt u een daling van het gebruik herkennen waarvoor mogelijk onderzoek is vereist. Een daling van het gebruikspercentage kan helpen bij het detecteren van prestatie- en gebruiksproblemen die niet kunnen worden gedetecteerd door de foutfrequentie. Wanneer gebruikers bijvoorbeeld uw toepassing niet kunnen bereiken om zich aan te melden, is er een daling van het gebruik, maar geen fouten. Zie de voorbeeldquery voor deze gegevens in de volgende sectie van dit artikel.
  • Foutpercentage per uur. Een piek in de foutfrequentie kan duiden op een probleem met uw verificatiemechanismen. Foutpercentagemetingen worden alleen weergegeven wanneer gebruikers kunnen proberen te verifiëren. Wanneer gebruikers geen toegang kunnen krijgen om de poging te doen, zijn er geen fouten.

De query en waarschuwingen configureren

U maakt waarschuwingsregels in Azure Monitor en kunt automatisch opgeslagen query's of aangepaste zoekopdrachten in logboeken met regelmatige tussenpozen uitvoeren. U kunt een waarschuwing configureren waarmee een specifieke groep wordt gewaarschuwd wanneer het gebruiks- of foutpercentage een opgegeven drempelwaarde overschrijdt.

Gebruik de volgende instructies om e-mailwaarschuwingen te maken op basis van de query's die in de grafieken worden weerspiegeld. De voorbeeldscripts verzenden een e-mailmelding wanneer:

  • Het geslaagde gebruik daalt met 90% van hetzelfde uur twee dagen geleden, zoals wordt weergegeven in het voorgaande voorbeeld van een gebruiksgrafiek per uur.
  • Het foutpercentage neemt met 90% toe van hetzelfde uur twee dagen geleden, zoals wordt weergegeven in het voorgaande voorbeeld van een foutpercentage per uur.

Als u de onderliggende query wilt configureren en waarschuwingen wilt instellen, voert u de volgende stappen uit met behulp van de voorbeeldquery als basis voor uw configuratie. De beschrijving van de querystructuur wordt aan het einde van deze sectie weergegeven. Meer informatie over het maken, weergeven en beheren van logboekwaarschuwingen met behulp van Azure Monitor in Logboekwaarschuwingen beheren.

  1. Selecteer Bewerken in de werkmap, zoals wordt weergegeven in de volgende schermopname. Selecteer het querypictogram in de rechterbovenhoek van de grafiek.

    Screenshot showing edit workbook.

  2. Bekijk het querylogboek, zoals wordt weergegeven in de volgende schermopname.

    Screenshot showing the query log.

  3. Kopieer een van de volgende voorbeeldscripts voor een nieuwe Kusto-query.

  4. Plak de query in het venster. Selecteer Uitvoeren. Zoek naar het voltooide bericht en de queryresultaten, zoals wordt weergegeven in de volgende schermopname.

    Screenshot showing the run query results.

  5. Markeer de query. Selecteer + Nieuwe waarschuwingsregel.

    Screenshot showing the new alert rule screen.

  6. Configureer de waarschuwingsvoorwaarden. Zoals wordt weergegeven in de volgende voorbeeldschermopname, selecteert u in de sectie Voorwaarde onder Meting tabelrijen voor Meting. Selecteer Aantal voor het aggregatietype. Selecteer 2 dagen voor aggregatiegranulariteit.

    Screenshot showing configure alerts screen.

    • Tabelrijen. U kunt het aantal geretourneerde rijen gebruiken om te werken met gebeurtenissen zoals Windows-gebeurtenislogboeken, Syslog en toepassingsuitzonderingen.
    • Aggregatietype. Gegevenspunten die zijn toegepast met Count.
    • Aggregatiegranulariteit. Deze waarde definieert de periode die werkt met de frequentie van evaluatie.
  7. Configureer in Waarschuwingslogica de parameters zoals weergegeven in de voorbeeldschermafbeelding.

    Screenshot showing alert logic screen.

    • Drempelwaarde: 0. Deze waarde waarschuwt voor alle resultaten.
    • Frequentie van evaluatie: 1 uur. Met deze waarde wordt de evaluatieperiode ingesteld op één keer per uur voor het vorige uur.
  8. Configureer in de sectie Acties instellingen zoals wordt weergegeven in de voorbeeldschermafbeelding.

    Screenshot showing the Create an alert rule screen.

    • Selecteer Actiegroep selecteren en voeg de groep toe waarvoor u waarschuwingsmeldingen wilt ontvangen.
    • Selecteer onder Acties aanpassen de optie E-mailwaarschuwingen.
    • Voeg een onderwerpregel toe.
  9. Configureer instellingen in de sectie Details , zoals wordt weergegeven in de voorbeeldschermopname.

    Screenshot showing the Details section.

    • Voeg een abonnementsnaam en een beschrijving toe.
    • Selecteer de resourcegroep waaraan u de waarschuwing wilt toevoegen.
    • Selecteer de standaard ernst.
    • Selecteer Inschakelen bij het maken als u wilt dat deze direct live gaat. Anders selecteert u Acties dempen.
  10. Configureer instellingen in de sectie Beoordelen en maken , zoals wordt weergegeven in de voorbeeldschermopname.

    Screenshot showing the Review + create section.

  11. Selecteer Opslaan. Voer een naam in voor de query. Selecteer Query voor Opslaan als. Selecteer Waarschuwing voor Categorie. Selecteer Opnieuw Opslaan.

    Screenshot showing the save query button.

Uw query's en waarschuwingen verfijnen

Uw query's en waarschuwingen wijzigen voor maximale effectiviteit:

  • Test altijd waarschuwingen.
  • Wijzig de gevoeligheid en frequentie van waarschuwingen om belangrijke meldingen te ontvangen. Beheer s kunnen worden gedesensitaliseerd voor waarschuwingen en iets belangrijks missen als ze te veel krijgen.
  • Voeg in e-mailclients van de beheerder de e-mail toe van waaruit waarschuwingen naar de lijst met toegestane afzenders worden verzonden. Deze aanpak voorkomt gemiste meldingen vanwege een spamfilter op hun e-mailclients.
  • Waarschuwingsquery's in Azure Monitor kunnen standaard alleen resultaten van de afgelopen 48 uur bevatten.

Voorbeeldscripts

Kusto-query voor toename in foutpercentage

In de volgende query detecteren we toenemende foutpercentages. Indien nodig kunt u de verhouding onderaan aanpassen. Het vertegenwoordigt de procentwijziging in het verkeer in het afgelopen uur, vergeleken met het verkeer van gisteren op hetzelfde moment. Een resultaat van 0,5 geeft een verschil van 50% aan in het verkeer.

let today = SigninLogs
| where TimeGenerated > ago(1h) // Query failure rate in the last hour
| project TimeGenerated, UserPrincipalName, AppDisplayName, status = case(Status.errorCode == "0", "success", "failure")
// Optionally filter by a specific application
//| where AppDisplayName == **APP NAME**
| summarize success = countif(status == "success"), failure = countif(status == "failure") by bin(TimeGenerated, 1h) // hourly failure rate
| project TimeGenerated, failureRate = (failure * 1.0) / ((failure + success) * 1.0)
| sort by TimeGenerated desc
| serialize rowNumber = row_number();
let yesterday = SigninLogs
| where TimeGenerated between((ago(1h) – totimespan(1d))..(now() – totimespan(1d))) // Query failure rate at the same time yesterday
| project TimeGenerated, UserPrincipalName, AppDisplayName, status = case(Status.errorCode == "0", "success", "failure")
// Optionally filter by a specific application
//| where AppDisplayName == **APP NAME**
| summarize success = countif(status == "success"), failure = countif(status == "failure") by bin(TimeGenerated, 1h) // hourly failure rate at same time yesterday
| project TimeGenerated, failureRateYesterday = (failure * 1.0) / ((failure + success) * 1.0)
| sort by TimeGenerated desc
| serialize rowNumber = row_number();
today
| join (yesterday) on rowNumber // join data from same time today and yesterday
| project TimeGenerated, failureRate, failureRateYesterday
// Set threshold to be the percent difference in failure rate in the last hour as compared to the same time yesterday
// Day variable is the number of days since the previous Sunday. Optionally ignore results on Sat, Sun, and Mon because large variability in traffic is expected.
| extend day = dayofweek(now())
| where day != time(6.00:00:00) // exclude Sat
| where day != time(0.00:00:00) // exclude Sun
| where day != time(1.00:00:00) // exclude Mon
| where abs(failureRate – failureRateYesterday) > 0.5

Kusto-query voor afname in gebruik

In de volgende query vergelijken we het verkeer in het afgelopen uur met het verkeer van gisteren op hetzelfde moment. We sluiten zaterdag, zondag en maandag uit omdat we op hetzelfde moment grote variabiliteit verwachten in het verkeer van de vorige dag.

Indien nodig kunt u de verhouding onderaan aanpassen. Het vertegenwoordigt de procentwijziging in het verkeer in het afgelopen uur, vergeleken met het verkeer van gisteren op hetzelfde moment. Een resultaat van 0,5 geeft een verschil van 50% aan in het verkeer. Pas deze waarden aan op uw bedrijfsmodel.

Let today = SigninLogs // Query traffic in the last hour
| where TimeGenerated > ago(1h)
| project TimeGenerated, AppDisplayName, UserPrincipalName
// Optionally filter by AppDisplayName to scope query to a single application
//| where AppDisplayName contains "Office 365 Exchange Online"
| summarize users = dcount(UserPrincipalName) by bin(TimeGenerated, 1hr) // Count distinct users in the last hour
| sort by TimeGenerated desc
| serialize rn = row_number();
let yesterday = SigninLogs // Query traffic at the same hour yesterday
| where TimeGenerated between((ago(1h) – totimespan(1d))..(now() – totimespan(1d))) // Count distinct users in the same hour yesterday
| project TimeGenerated, AppDisplayName, UserPrincipalName
// Optionally filter by AppDisplayName to scope query to a single application
//| where AppDisplayName contains "Office 365 Exchange Online"
| summarize usersYesterday = dcount(UserPrincipalName) by bin(TimeGenerated, 1hr)
| sort by TimeGenerated desc
| serialize rn = row_number();
today
| join // Join data from today and yesterday together
(
yesterday
)
on rn
// Calculate the difference in number of users in the last hour compared to the same time yesterday
| project TimeGenerated, users, usersYesterday, difference = abs(users – usersYesterday), max = max_of(users, usersYesterday)
| extend ratio = (difference * 1.0) / max // Ratio is the percent difference in traffic in the last hour as compared to the same time yesterday
// Day variable is the number of days since the previous Sunday. Optionally ignore results on Sat, Sun, and Mon because large variability in traffic is expected.
| extend day = dayofweek(now())
| where day != time(6.00:00:00) // exclude Sat
| where day != time(0.00:00:00) // exclude Sun
| where day != time(1.00:00:00) // exclude Mon
| where ratio > 0.7 // Threshold percent difference in sign-in traffic as compared to same hour yesterday

Processen maken voor het beheren van waarschuwingen

Nadat u query's en waarschuwingen hebt ingesteld, maakt u bedrijfsprocessen om de waarschuwingen te beheren.

  • Wie controleert de werkmap en wanneer?
  • Wanneer er waarschuwingen optreden, wie onderzoekt ze?
  • Wat zijn de communicatiebehoeften? Wie de communicatie maakt en wie deze ontvangt?
  • Welke bedrijfsprocessen zijn van toepassing wanneer er een storing optreedt?

Volgende stappen

Meer informatie over werkmappen