Sdílet prostřednictvím


Zavření výstrahy vygenerované monitorováním

Monitorování definují stav objektů. Objekt může mít jeden ze tří stavů: zelený (úspěšný nebo v pořádku), žlutý (upozornění) nebo červený (kritický nebo není v pořádku). Například monitor kapacity diskové jednotky může definovat zelenou jako méně než 85 % plnou, žlutou jako plnou přes 85 % a červenou jako více než 90 % zaplněnou. Monitorování lze nakonfigurovat tak, aby vygenerovalo výstrahu, když dojde ke změně stavu.

Když obdržíte výstrahu, můžete se podívat v podrobnostech výstrahy, jestli se výstraha vygenerovala pravidlem nebo monitorováním. Pokud se výstraha vygenerovala monitorováním, měli byste monitorování povolit automatické vyřešení výstrahy, když se stav vrátí do stavu v pořádku. Pokud výstrahu zavřete, když je objekt ve stavu upozornění nebo není v pořádku, problém zůstane nevyřešený, ale nebudou generovány žádné další výstrahy.

Pokud monitorování vygeneruje výstrahu, když se stav změní na červenou a vy výstrahu vyřešíte, musíte také resetovat stav monitorování. Pokud se monitorování resetuje, může se znovu objevit stejná podmínka, která vygenerovala výstrahu, ale nebude vygenerována žádná výstraha, protože se stav nezměnil.

Pokud v Operations Manageru před 2019 zavřete výstrahu v době, kdy je objekt v upozornění nebo není v pořádku, problém zůstane nevyřešený, ale negenerují se žádné další výstrahy. Toto chování, které často vedlo ke scénáři, kdy v systému neexistuje žádná aktivní výstraha, zatímco existuje základní problém, je opraveno v Operations Manageru 2019.

V Operations Manageru 2019 nejde zavřít výstrahu vygenerovanou monitorováním, pokud stav odpovídajícího monitoru není v pořádku. Pokud se pokusíte zavřít výstrahu vygenerovanou monitorováním, která není v pořádku, zobrazí se chybová zpráva a výstraha se nezavře.

Toto nové chování můžete zkontrolovat z konzoly Operations Console i webové konzoly.

Konzola Operations Console

Postupujte následovně:

  1. Otevřete konzolu Operations Manageru a vyberte Monitorování.

    Přehled monitorování zobrazuje souhrn stavů monitorování a aktuálních výstrah.

  2. V navigačním podokně vyberte Aktivní výstrahy .

  3. Klikněte pravým tlačítkem myši na výstrahu, která je generována monitorováním ve špatném stavu.

  4. Nastavte stav řešení jako Uzavřeno.

    Zdá se, že následující zpráva uvádí důvod zrušení uzavření výstrahy:

    Výstrahy v aktuálním výběru nelze zavřít jako monitory, které tyto výstrahy vygenerovaly, stále nejsou v pořádku. Další podrobnosti o výstraze, která se nepodařilo zavřít, najdete na řídicím panelu Selhání uzavření výstrahy ve webové konzole Operations Manageru.

    Snímek obrazovky znázorňující konzolu Operations Console zavřené zprávy s upozorněním

    Poznámka:

    Pokud chcete tuto výstrahu zavřít, musí se stav odpovídajícího monitorování ručně resetovat do stavu v pořádku. Pokud je u tohoto monitorování nastavená hodnota true, výstraha se po resetování stavu automaticky zavře. Jinak musí být výstraha po resetování stavu ručně uzavřena.

Webová konzola

  1. Otevřete webovou konzolu a vyberte Monitorování. Přehled monitorování zobrazuje souhrn stavů monitorování a aktuálních výstrah.

  2. V navigačním podokně vyberte Aktivní výstrahy .

  3. Otevřete výstrahu, která byla vygenerována monitorováním ve špatném stavu.

  4. Nastavte stav řešení jako Uzavřeno a Uložit změny.

    Zdá se, že následující zpráva uvádí důvod zrušení uzavření výstrahy:

    Aktuální výstrahu nelze zavřít, protože monitor, který vygeneroval tuto výstrahu, stále není v pořádku.

    Snímek obrazovky zobrazující webovou konzolu zavřené zprávy s upozorněním

    Poznámka:

    Chcete-li tuto výstrahu zavřít, musíte ručně resetovat stav odpovídajících monitorů, které vygenerovaly tuto výstrahu.

Ruční resetování stavu monitoru pro odpovídající výstrahu

Postupujte následovně:

  1. V navigačním podokně vyberte řídicí panel Selhání ukončení výstrahy. Na řídicím panelu jsou uvedeny výstrahy, které Operations Manager nemohl zavřít, protože monitorování, které výstrahu vygenerovalo, není v pořádku.

  2. Stav monitorování pro odpovídající výstrahu můžete resetovat dvěma způsoby:

    • Vyberte na řídicím panelu výstrahu a pak vyberte akci resetování stavu řídicího panelu pro výstrahu. Nebo
    • Výběrem výstrahy na tomto řídicím panelu přejděte na stránku pro přechod k podrobnostem výstrah (kde můžete vizualizovat všechny relevantní informace pro upozornění) a v podokně úloh vyberte úlohu Obnovit stav.

    Snímek obrazovky zobrazující stav monitorování resetování výstrahy

Rozhraní API pro aktualizaci výstrah

Pokud se uzavření výstrah aktivuje z externích systémů, jako je správa incidentů, a výstraha se nezavřela kvůli tomu, že odpovídající monitorování není v pořádku, předá se výjimka s podrobnostmi výstrahy, které můžou využívat externí systémy.

Následující existující rozhraní API pro aktualizaci výstrah je možné použít k externalizaci dat aktualizace výstrah. Tato dvě rozhraní API byla vylepšena tak, aby umožňovala externalizaci tohoto nového chování:

Následující ukázka ukazuje podrobnosti o tom, jak použít výjimku AlertMonitorUnhealthyException.

namespace MonitorAlertClosureFailureExample
{
    class Program
    {
        static void Main(string[] args)
        {
            ManagementGroup mg = new ManagementGroup("localhost");

            // Get database availability alerts.
            MonitoringAlertCriteria alertCriteria = new MonitoringAlertCriteria(
                "Name LIKE '%DBStatusMonitor' AND Category = 'AvailabilityHealth'");
            IList<MonitoringAlert> alerts =
                mg.OperationalData.GetMonitoringAlerts(alertCriteria, default(DateTime));

            // Find the "Closed" resolution state that is defined
            // for this Management Group.
            IList<MonitoringAlertResolutionState> alertStates = mg.OperationalData.GetMonitoringAlertResolutionStates();
            MonitoringAlertResolutionState closedState = null;
            foreach (MonitoringAlertResolutionState thisState in alertStates)
            {
                if (thisState.Name == "Closed")
                {
                    closedState = thisState;
                }
            }

            // Close all alerts not already in the "Closed" resolution state.
            foreach (MonitoringAlert a in alerts)
            {
                a.ResolutionState = closedState.ResolutionState;
                string comment = "Closing the Alert";
                try
                {
                    a.Update(comment);
                }
                catch (AlertMonitorUnhealthyException e)
                {
                    // It mean the alert being closed is a monitor alert and the monitor which generated this alert is still unhealthy
                    // take an appropriate action. Here an error message is being displayed at console
                    Console.WriteLine("The alert with Alert Name" + a.Name + "cannot be closed as the monitor which genrated the alert is still unhealthy.")
                }
                catch (Exception e)
                {
                    // generic exception during the update of the alert
                    Console.WriteLine("Closing the alert with alert name" + a.Name + "is failing because" + e.Message)
                }

            }

    }
}


namespace MonitorAlertClosureFailureExample
{
    class Program
    {
        static void Main(string[] args)
        {
            ManagementGroup mg = new ManagementGroup("localhost");

            // Get database availability alerts.
            MonitoringAlertCriteria alertCriteria = new MonitoringAlertCriteria(
                "Name LIKE '%DBStatusMonitor' AND Category = 'AvailabilityHealth'");
            IList<MonitoringAlert> alerts =
                mg.OperationalData.GetMonitoringAlerts(alertCriteria, default(DateTime));

            // Find the "Closed" resolution state that is defined
            // for this Management Group.
            IList<MonitoringAlertResolutionState> alertStates = mg.OperationalData.GetMonitoringAlertResolutionStates();
            MonitoringAlertResolutionState closedState = null;
            foreach (MonitoringAlertResolutionState thisState in alertStates)
            {
                if (thisState.Name == "Closed")
                {
                    closedState = thisState;
                }
            }

            // Close all alerts not already in the "Closed" resolution state.
            string comment = "Closing the alert";
            foreach(MonitoringAlert a in alerts)
            {
                a.ResolutionState = closedState.ResolutionState;
            }

            IList<MonitoringAlertUpdateFailure> updateFailures = mg.OperationalData.UpdateMonitoringAlerts(alerts, comment);

            if (updateFailures != null && updateFailures.Count > 0)
            {
                foreach (MonitoringAlertUpdateFailure failure in updateFailures)
                {
                    if(failure.Exception is AlertMonitorUnhealthyException)
                    {
                        // It means the alert being closed is a monitor alert and the monitor which generated this alert is still unhealthy
                        // take an appropriate action. Here an error message is being displayed at console
                        Console.WriteLine("The alert with Alert Name" + a.Name + "cannot be closed as the monitor which genrated the alert is still unhealthy.")
                    }
            }           
        }

    }
}

Určení, jestli se výstraha vyřeší automaticky

Postupujte následovně:

  1. Vyberte výstrahu a pak v podrobnostech výstrahy vyberte název monitorování výstrahy. Otevře se dialogové okno vlastností monitoru.

  2. Ve vlastnostech monitorování vyberte kartu Výstrahy , abyste zjistili, jestli je vybraná možnost Automaticky vyřešit výstrahu, když se monitorování vrátí do stavu v pořádku.

Zavření výstrahy vygenerované monitorováním

Postupujte následovně:

  1. Přečtěte si výstrahu a prozkoumejte její vlastnosti. Zkontrolujte podrobnosti výstrahy a zjistěte, jestli se výstraha vygenerovala monitorováním nebo pravidlem. Pomocí znalostí o produktu pro výstrahu můžete určit příčinu výstrahy.

  2. Vyřešte příčiny výstrahy a proveďte akce potřebné k vyřešení problému.

  3. Po vyřešení problému vyberte v podrobnostech výstrahy možnost Zdroj . Tím se otevře zobrazení State pro objekt přidružený k výstraze.

  4. Klikněte pravým tlačítkem myši na objekt, přejděte na Příkaz Otevřít a vyberte Průzkumníka stavů pro název objektu.

  5. Vyberte monitor, který výstrahu vygeneroval, a na panelu nástrojů vyberte Obnovit stav . Zavřete Průzkumníka stavů a zobrazení Stav .

  6. Aktualizujte zobrazení výstrah. Pokud je výstraha stále uvedená, vyberte výstrahu a v podokně Akce vyberte Zavřít výstrahu .

Poznámka:

Následující aktualizace (uzavření osamocených výstrah) platí pro Operations Manager 2019 UR3 a novější.

Uzavření osamocených výstrah

V Operations Manageru 2019 RTM, UR1 a UR2 se aktivní výstrahy v určitých scénářích nezavírají, jak je popsáno níže:

  1. Převzetí služeb při selhání:

    • Převzetí služeb při selhání, které se může aktivovat, když server pro správu přejde do režimu offline.
    • Vzhledem k přidání nových serverů pro správu do fondu zdrojů vede k vyrovnávání zatížení.
    • Když počítač bez agenta převezme služby při selhání a bude monitorován jiným serverem pro správu, a proto bude nový stav.
  2. Agent se po nějaké době odpojil a znovu připojil, ve kterém změna stavu nezná předchozí stav.

  3. Server pro správu se odpojil a znovu připojil.

  4. Vymaže se mezipaměť služby Health Service.

Služba Health Service celkově neudržuje poslední stav monitorování; upozornění se při resetování monitoru do stavu v pořádku nezavřou.

V Operations Manageru 2019 UR3 jsou všechna osamocené výstrahy zavřené, nakonec v závislosti na typu monitorování, jak je popsáno níže:

  • Monitorování služeb: okamžitě zavřete.
  • Všechny monitory s modulem okamžitého vyžádání: okamžitě zavřete.
  • Všechna monitorování bez modulů na vyžádání: zavírejte při druhém spuštění v závislosti na frekvenci.
  • Monitorování na základě událostí: Zavřete událost, která je v pořádku, ke které dochází po inicializaci.

Přechod stavu ukazuje menší změnu při inicializaci monitorování; ukázka níže:

Snímek obrazovky znázorňující přechod stavu

Jak je znázorněno na obrázku výše, během inicializace se monitor nejprve změní v pořádku. Pak se znovu vypočítá a změní se na stav v pořádku. Uvidíte dva přechody změn stavu z prázdného stavu na v pořádku.

Změny v prostředí ukončení upozornění

Správce může zvolit uzavření výstrahy Monitorování stavu, která je ve stavu Není v pořádku.

Ve verzi 2019 se nepodařilo zavřít výstrahu vygenerovanou monitorováním, pokud stav odpovídajícího monitoru není v pořádku. Pokud se pokusíte zavřít výstrahu vygenerovanou monitorováním, která není v pořádku, zobrazí se chybová zpráva a výstraha by se nezavřela.

Správce může toto chování změnit tak, že přejde do nastavení správy>a vybere některou z následujících možností:

  • Zavření výstrah vygenerovaných monitorováním pouze v případě, že je vyřešen stav základního monitorování nebo resetován ručně
  • Zavření výstrah vygenerovaných monitorováním resetováním základního stavu monitorování: Tato možnost umožňuje programově zavřít výstrahy monitorů, které nejsou v pořádku, a v uživatelském rozhraní. Tím se obnoví základní stav monitorování, který implicitně zavře odpovídající výstrahu. Tato možnost také umožňuje hromadné uzavření výstrah generovaných monitorováním.

Můžete také sledovat, jak se výstraha ukončila, zobrazením historie vlastností>výstrahy.

Snímek obrazovky s nastavením globální skupiny pro správu

Snímek obrazovky zobrazující historii upozornění

Další kroky