Sdílet prostřednictvím


Vytvoření řídicího panelu s vlastním widgetem ve webové konzole

V nástroji System Center Operations Manager poskytuje webová konzola monitorovací rozhraní pro skupinu pro správu, kterou lze otevřít na libovolném počítači pomocí libovolného prohlížeče, který má připojení k serveru webové konzoly. Následující kroky popisují, jak přidat vlastní widget na řídicí panel v nové webové konzole HTML5, která používá nové rozhraní API založené na REST. Spustí zadaný kód HTML a vizualizuje požadovaný výstup v různých vizualizacích.

Poznámka:

Operations Manager 2019 UR1 a novější podporuje tokeny CSRF (Cross-Site Request Forgery), aby se zabránilo útokům CSRF. Pokud používáte Operations Manager 2019 UR1 nebo novější, musíte inicializovat token CSRF. Skripty HTML nefungují bez inicializace tokenu CSRF.

Inicializace tokenu CSRF

Požadovaná akce použitelná pro Operations Manager 2019 UR1 a novější

  1. Do hlavičky HTML řídicího panelu přidejte následující kód:
var requestHeaders = {
            Accept: 'q=0.8;application/json;q=0.9',
            "Content-Type": "application/json"
        };
        InitializeCSRFToken();
        function InitializeCSRFToken() {
            var documentcookies = document.cookie.split('; ');
            var result = {};
            for (var i = 0; i < documentcookies.length; i++) {
                var cur = documentcookies[i].split('=');
                result[cur[0]] = cur[1];
            }
            if (result["SCOM-CSRF-TOKEN"] && result["SCOM-CSRF-TOKEN"] != null) {
                requestHeaders["SCOM-CSRF-TOKEN"] = decodeURIComponent(result["SCOM-CSRF-TOKEN"]);
            }
        }
  1. Ve funkci onload změňte hodnotu hlavičky na requestHeaders. Pokud hodnota záhlaví neexistuje, přidejte ji, jak je znázorněno níže.

Příklad:

Inicializace tokenu CSRF

Použití referenčních informací k rozhraní REST API nástroje Operations Manager

Referenční informace k rozhraní REST API slouží k získání informací o dostupných operacích, které můžete provádět s vlastním widgetem k prezentaci provozních dat na řídicím panelu. Pokud s rozhraním REST API začínáte, podívejte se na informace o tom, jak začít s tímto rozhraním API , pokud jste ho ještě neviděli.

Struktura skriptu

Vlastní skript widgetu má tři hlavní části:

  1. Definování rozhraní REST API a jeho vlastností Tato část definuje, jaká data je potřeba načíst z Operations Manageru pro vizualizaci, jako jsou výstrahy, stav nebo údaje o výkonu.
  2. Zadejte obchodní logiku, která identifikuje výsledky, které se mají ve vizualizaci prezentovat, například identifikaci třídy nebo skupiny, podmínek, jako je závažnost, stav nebo konkrétní instance objektu výkonu.
  3. Vizualizace třetích stran, která je opensourcová knihovna hostovaná na cloudflare.com, které jsou potřeba k vykreslení dat v závislosti na vybraném typu grafu.

Vlastnosti widgetu

Aby skript mohl dotazovat a vracet data ve vizualizaci, parametr adresy URL určuje adresu webové konzoly Operations Manageru a datového typu. Syntaxe adresy URL je http:// servername>/operationsmanager/data/<dataitem> a hodnota dataitem je jedna z následujících možností:<

  • výstraha představuje výstrahu monitorování.
  • stav představuje monitorování dat o stavu
  • výkon představuje monitorování dat o výkonu.
<!DOCTYPE HTML>
<html>

<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script type="text/javascript">
        var criticalCounter = 0;
        var informationCounter = 0;
        var warningCounter = 0;

        window.onload = function () {
            $.ajax({
                url: "/OperationsManager/data/alert",
                type: "POST",

Pokud chcete určit rozsah dat monitorování pro každý datový typ, můžete vybrat třídu, která zobrazí všechny instance této třídy, nebo zobrazit pouze podmnožinu objektů vybrané třídy, můžete také zahrnout skupinu. Chcete-li například zadat všechny objekty třídy Windows Server DC Computer, upravte hodnotu vlastnosti pro classId.

Poznámka:

To platí jenom pro data o stavu, ne pro výstrahy nebo výkon. Pro údaje o výkonu zadejte skupinu nebo monitorovaný objekt.

<!DOCTYPE HTML>
<html>

<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script type="text/javascript">
        var criticalCounter = 0;
        var informationCounter = 0;
        var warningCounter = 0;

        window.onload = function () {
            $.ajax({
                url: "/OperationsManager/data/alert",
                type: "POST",
                data: JSON.stringify({
                    "classId": "Microsoft.Windows.Library!Micr…ft.Windows.Server.DC.Computer",
                    "objectIds": { }),

Chcete-li zadat skupinu, která obsahuje podmnožinu objektů stejné třídy určené pro vlastnost classId, upravte hodnoty objectId a zadejte identifikátor GUID skupiny. Hodnota musí být v uvozovkách.

<!DOCTYPE HTML>
<html>

<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script type="text/javascript">
        var criticalCounter = 0;
        var informationCounter = 0;
        var warningCounter = 0;

        window.onload = function () {
            $.ajax({
                url: "/OperationsManager/data/alert",
                type: "POST",
                data: JSON.stringify({
                    "classId": null,
                    "objectIds": { "3c8ac4f3-475e-44dd-4163-8a97af363705": -1 }),

Jakmile zadáte cílovou třídu a volitelně skupinu pro další obor výsledků, můžete určit kritéria pro omezení typu dat, která se mají zobrazit podle hodnot jedné nebo více vlastností.

Příklady widgetů

Widget podporuje vykreslování dat monitorování v následujících typech grafů:

  • Pruhový graf (stavová data)
  • Spojnicový graf (údaje o výkonu)
  • Pruhový graf (data upozornění)
  • Výsečový graf a prostorový výsečový graf
  • Prstencový a 3D prstenec
  • Kombinovaný graf
  • Skládaný pruhový graf

Typ grafu můžete nakonfigurovat tak, aby se zobrazila data o stavu, výkonu a výstrahách. V každém příkladu níže jsou výstrahy ze skupiny počítačů s Windows vráceny pro všechny závažnosti odpovídající konkrétním stavům řešení.

Výběrem požadované karty zobrazíte kód HTML pro příslušný typ grafu:

Následující kód HTML ukazuje vykreslení pruhového grafu se stavovými daty:

<!DOCTYPE HTML>
<html>

<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script type="text/javascript">
        var criticalCounter = 0;
        var healthyCounter = 0;
        var warningCounter = 0;
        var unmonitoredCounter = 0;

        window.onload = function () {
            $.ajax({
                url: "/OperationsManager/data/state",
                type: "POST",
                data: JSON.stringify({
                    "classId": "System.Library!System.Computer",
                    "objectIds": {
                        // Key value pairs => id: 0 (For objects)/-1 (For groups)
                        "1d62280e-f437-1369-316b-1e8659500e9a": -1
                    },
                    "criteria": "((HealthState = '0') OR (HealthState = '1') OR (HealthState = '2') OR (HealthState = '3') OR HealthState is null)",
                    "displayColumns": [
                        "healthstate",
                        "displayname",
                        "path",
                        "maintenancemode"
                    ]
                }),
                success: function (result) {
                    for (var i = 0; i < result.rows.length; i++) {
                        switch (result.rows[i].healthstate) {
                            case "critical":
                                criticalCounter++;
                                break;
                            case "healthy":
                                healthyCounter++;
                                break;
                            case "warning":
                                warningCounter++;
                                break;
                            case "unmonitored":
                                unmonitoredCounter++;
                                break;
                        }
                    }
                    renderChart();
                }
            });
        }

        function renderChart() {
            var chart = new CanvasJS.Chart("chartContainer", {
                title: {
                    text: "Health State of Windows Computers"
                },
                data: [{
                    type: "column",
                    dataPoints: [
                        { y: criticalCounter, label: "Critical", color: "Red" },
                        { y: healthyCounter, label: "Healthy", color: "Green" },
                        { y: warningCounter, label: "Warning", color: "Yellow" },
                        { y: unmonitoredCounter, label: "Unmonitored", color: "Gray" }
                    ]
                }]
            });
            chart.render();
        }
    </script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/canvasjs/1.7.0/canvasjs.min.js"></script>
    <title>CanvasJS Example</title>
</head>

<body>
    <div id="chartContainer" style="height: 400px; width: 100%;"></div>
</body>

</html>

Přidání widgetu na řídicí panel

  1. Otevřete webový prohlížeč na libovolném počítači a zadejte http://<web host>/OperationsManager, kde webový hostitel je název počítače, který je hostitelem webové konzoly.

  2. V levém podokně webové konzoly vyberte + Nový řídicí panel.

    Snímek obrazovky znázorňující výběr možnosti Nový řídicí panel ve webové konzole

  3. Na stránce Vytvořit nový řídicí panel zadejte název a popis řídicího panelu, který chcete vytvořit.

    Snímek obrazovky znázorňující zadání názvu a popisu nového řídicího panelu

  4. Řídicí panel můžete uložit v existující nezapečetěné sadě Management Pack tak, že vyberete sadu Management Pack z rozevíracího seznamu Sady Management Pack nebo řídicí panel uložíte tak, že vytvoříte novou sadu Management Pack výběrem možnosti Nový vedle rozevíracího seznamu sady Management Pack a zadáte název, popis a volitelně číslo verze.

    Snímek obrazovky znázorňující zadání názvu a popisu nového MP

  5. Až zadáte, kam chcete nový řídicí panel uložit, vyberte OK.

  6. Po zadání názvu a popisu nového řídicího panelu vyberte Uložit .

  7. Na prázdném prázdném řídicím panelu se v horní části stránky zobrazí název řídicího panelu, Přidat widget, Upravit řídicí panel, Odstranit řídicí panel a Zobrazit .

    Snímek obrazovky znázorňující plátno Nového řídicího panelu

  8. V rozevíracím seznamu Vybrat widget vyberte Vlastní widget.

  9. V podokně Vlastní widget vyberte kritéria pro widget, která přidávají kód HTML pomocí jednoho z předchozích příkladů pro vizualizaci dat monitorování v některé z podporovaných vizualizací grafů.

    Snímek obrazovky znázorňující konfiguraci vlastního widgetu pro řídicí panel

  10. Dokončete konfiguraci zadáním intervalu aktualizace názvu, popisu a widgetu (výchozí interval je 5 minut) widgetu. Výběrem možnosti Uložit widget uložte nový řídicí panel.

Po vytvoření widgetu se zobrazí výstup kódu HTML.

Snímek obrazovky znázorňující příklad dokončeného widgetu dlaždice na řídicím panelu