Gewusst wie: Erstellen benutzerdefinierter Leistungsindikatoren

Aktualisiert: November 2007

Beim Erstellen eines neuen Leistungsindikators legen Sie zuerst eine Kategorie an und geben dann einen oder mehrere Leistungsindikatoren an, die darin aufgenommen werden sollen. Hierzu gibt es folgende Möglichkeiten:

Es gibt zwei besondere Probleme, die Sie beim Erstellen von Leistungsindikatoren und Kategorien beachten sollten. Erstens können Sie auf Remotecomputern keine benutzerdefinierten Kategorien und Leistungsindikatoren erstellen. Zweitens ist die Zusammenarbeit mit benutzerdefinierten Leistungsindikatoren und Kategorien auf den schreibgeschützen Modus beschränkt, sofern dies nicht explizit anders festgelegt wird. Im schreibgeschützten Modus können Sie diese nicht inkrementieren oder dekrementieren noch in diesen den Rohwert oder andere Werte festlegen. Mithilfe der ReadOnly-Eigenschaft können Sie einen benutzerdefinierten Leistungsindikator in den schreibbaren Modus überführen.

Zwischen dem Erstellen eines Leistungsindikators und dem Erstellen einer Instanz der PerformanceCounter-Komponente besteht ein deutlicher Unterschied. Beim Erstellen eines Leistungsindikators legen Sie keine Komponente im Projekt oder der Anwendung an, sondern eine neue Kategorie mit zugehörigen Leistungsindikatoren im Windows-Betriebssystem. Wenn Sie eine Instanz der PerformanceCounter-Komponente erstellen, erstellen Sie eine Komponente innerhalb des Visual Studio-Projekts, die auf einen externen Leistungsindikator verweist.

Hinweis:

Es bestehen Sicherheitsbeschränkungen, die sich auf die Möglichkeit der Verwendung von Leistungsindikatoren auswirken. Weitere Informationen hierzu finden Sie unter Einführung in die Überwachung von Leistungsschwellenwerten.

Sicherheitshinweis:

Beachten Sie beim Erstellen eines Leistungsindikators, dass die Ressource bereits vorhanden sein kann. Möglicherweise wurde die Ressource bereits von einem bösartigen Prozess erstellt, der nun darauf zugreifen kann. Wenn Sie dem Leistungsindikator Daten hinzufügen, kann der andere Prozess darauf zugreifen.

Hinweis:

Die PerformanceCounter-Klasse wird in Microsoft Windows NT, Version 4.0, nicht vollständig unterstützt. Sie können in den Systemleistungsindikatoren lesen, Sie können jedoch keine benutzerdefinierten Indikatoren erstellen, in diese schreiben oder sie löschen.

Hinweis:

Ihr Computer zeigt möglicherweise für einige der Elemente der Visual Studio-Benutzeroberfläche in der folgenden Anleitung andere Namen oder Standorte an. Diese Elemente sind von der jeweiligen Visual Studio-Version und den verwendeten Einstellungen abhängig. Weitere Informationen finden Sie unter Visual Studio-Einstellungen.

So erstellen Sie eine neue Kategorie und einen neuen Leistungsindikator während der Entwurfszeit

  1. Öffnen Sie den Server-Explorer, und erweitern Sie den Knoten des anzuzeigenden Servers.

    Hinweis:

    Wenn der gewünschte Server nicht aufgeführt ist, müssen Sie ihn hinzufügen. Weitere Informationen hierzu finden Sie unter Gewusst wie: Zugreifen auf und Initialisieren von Server-Explorer/Datenbank-Explorer.

  2. Klicken Sie mit der rechten Maustaste auf den Knoten Leistungsindikatoren, und wählen Sie Neue Kategorie erstellen.

    Das Dialogfeld Leistungsindikatoren-Generator wird angezeigt.

    Hinweis:

    Für den Zugriff auf Leistungsindikatoren müssen Sie Mitglied einer Sicherheitsgruppe mit entsprechenden Berechtigungen sein (z. b. die Gruppe Systemmonitorbenutzer). Außerdem erhalten Sie beim Ausführen von Aktionen, für die erhöhte Berechtigungen erforderlich sind, möglicherweise Aufforderungen unter Windows Vista, selbst wenn Sie über Administratorberechtigungen verfügen. Weitere Informationen finden Sie unter Windows Vista und Visual Studio.

  3. Geben Sie Namen und Beschreibung der zu erstellenden Kategorie ein.

    Hinweis:

    Wenn Sie den Namen einer bereits vorhandenen Kategorie angeben, wird eine Fehlermeldung ausgelöst. Zum Überschreiben einer vorhandenen Leistungsindikatorkategorie müssen Sie die Kategorie zunächst mit der Delete-Methode löschen und dann eine neue Kategorie hinzufügen.

  4. Verfahren Sie im Abschnitt Zählerlisten-Generator wie folgt:

    1. Klicken Sie auf die Schaltfläche Neu.

    2. Geben Sie im Rahmen Indikator einen Namen für den in der Kategorie zu erstellenden Indikator an.

    3. Wählen Sie in der Dropdownliste Typ einen Typ aus.

    4. Geben Sie eine Beschreibung des Leistungsindikators ein.

  5. Wiederholen Sie Schritt 4 für jeden Leistungsindikator, den Sie in dieser Kategorie erstellen möchten.

    Tipp:

    Bevor Sie das Dialogfeld schließen, können Sie einen der Indikatoren aus der Liste Indikatoren auswählen und deren Werte bearbeiten oder die Indikatoren löschen.

    Hinweis:

    Für im Dialogfeld erstellte Leistungsindikatoren und Kategorien besteht standardmäßig Lese-/Schreibzugriff, jedoch ist die Interaktion mit diesen über eine Instanz der PerformanceCounter-Komponente auf den schreibgeschützten Zugriff beschränkt, sofern Sie dies nicht anders festlegen.

So erstellen Sie eine neue Kategorie und eine Reihe von Leistungsindikatoren programmgesteuert

  1. Erstellen Sie eine Auflistung des Typs CounterCreationDataCollection.

  2. Erstellen Sie die gewünschten Leistungsindikatoren als Objekte vom Typ CounterCreationData, und legen Sie die erforderlichen Eigenschaften fest.

  3. Fügen Sie der Auflistung die CounterCreationData-Objekte hinzu, indem Sie die Add-Methode der Auflistung aufrufen.

  4. Rufen Sie die Create-Methode der PerformanceCounterCategory-Klasse auf, und übergeben Sie die Auflistung an die Methode.

    Im folgenden Beispiel wird gezeigt, wie eine Reihe von Leistungsindikatoren erstellt und an die zu erstellende Kategorie übergeben wird:

    ' Create a collection of type CounterCreationDataCollection.
    Dim CounterDatas As New CounterCreationDataCollection()
    ' Create the counters and set their properties.
    Dim cdCounter1 As New CounterCreationData()
    Dim cdCounter2 As New CounterCreationData()
    cdCounter1.CounterName = "MyCounter1"
    cdCounter1.CounterHelp = "help string"
    cdCounter1.CounterType = PerformanceCounterType.NumberOfItems64
    cdCounter2.CounterName = "MyCounter2"
    cdCounter2.CounterHelp = "help string 2"
    cdCounter2.CounterType = PerformanceCounterType.NumberOfItems64
    ' Add both counters to the collection.
    CounterDatas.Add(cdCounter1)
    CounterDatas.Add(cdCounter2)
    ' Create the category and pass the collection to it.
    PerformanceCounterCategory.Create("Multi Counter Category", _
        "Category help", PerformanceCounterCategoryType.SingleInstance, _
        CounterDatas)
    
         // Create a collection of type CounterCreationDataCollection.
            System.Diagnostics.CounterCreationDataCollection CounterDatas =
               new System.Diagnostics.CounterCreationDataCollection();
            // Create the counters and set their properties.
            System.Diagnostics.CounterCreationData cdCounter1 =
               new System.Diagnostics.CounterCreationData();
            System.Diagnostics.CounterCreationData cdCounter2 =
               new System.Diagnostics.CounterCreationData();
            cdCounter1.CounterName = "Counter1";
            cdCounter1.CounterHelp = "help string1";
            cdCounter1.CounterType = System.Diagnostics.PerformanceCounterType.NumberOfItems64;
            cdCounter2.CounterName = "Counter2";
            cdCounter2.CounterHelp = "help string 2";
            cdCounter2.CounterType = System.Diagnostics.PerformanceCounterType.NumberOfItems64;
            // Add both counters to the collection.
            CounterDatas.Add(cdCounter1);
            CounterDatas.Add(cdCounter2);
            // Create the category and pass the collection to it.
            System.Diagnostics.PerformanceCounterCategory.Create(
                "Multi Counter Category", "Category help",
                PerformanceCounterCategoryType.SingleInstance, CounterDatas);
    

Siehe auch

Aufgaben

Gewusst wie: Erstellen von Leistungsindikatorkategorien

Konzepte

Kategorie- und Indikatorverwaltung

Referenz

Gewusst wie: Zugreifen auf und Initialisieren von Server-Explorer/Datenbank-Explorer