C#: Leistungsdaten von Anwendungen mit Performance-Countern anzeigen

Da es sich bei Performance-Countern um eine Standard-Systemfunktion handelt, eignen sie sich hervorragend, um die Leistung von Anwendungen zu überwachen. Beispielsweise gibt es Performance-Counter, die die CPU-Zeit oder die Speicher- und Festplattenauslastung des Systems anzeigen. Microsoft bietet im .NET-Framework mehrere Klassen, um anwenderspezifische Performance-Counter auszugeben.

Werden etwa beim Parsen von Dateien Datensätze in eine Datenbank eingefügt, kann ein Performance-Counter die Anzahl der eingefügten Datensätze anzeigen. So lässt sich ermitteln, mit welcher Geschwindigkeit die Datensätze integriert werden. Das ist durchaus interessant, beispielsweise zur Bestimmung von Skalierungsoptionen und Hardwareanforderungen.

Performance-Counter liefern auch Aussagen darüber, ob ein Prozess wirklich abgeschlossen ist oder nicht. Falls sich die Datenanzeige über einen bestimmten Zeitraum hinweg nicht ändert, lässt sich daraus schließen, dass es ein Problem gab. Ein hervorragendes Beispiel dafür ist etwa das Überwachen von MSMQ-Nachrichten. Im Allgemeinen ist davon auszugehen, dass sich die Anzahl der Nachrichten in einer MSMQ-Warteschlange ziemlich rasch ändert. Steigt sie irgendwann nicht mehr an, dann ist die Wahrscheinlichkeit nicht gerade gering, dass irgendetwas im Argen liegt.

So lässt sich ein Counter erstellen

Performance-Counter sind in Kategorien organisiert, die wiederum mehrere Counter beinhalten. Diese überwachen in der Regel unterschiedliche Aspekte der gleichen Systemfunktion. Innerhalb eines jeden Counters kann es außerdem mehrere Instanzen geben. Soll zum Beispiel die Anzahl an Nachrichten in einer MSMQ-Warteschlange angezeigt werden, empfiehlt es sich, die Kategorie MSMQ Queue aufzurufen, den Counter Messages in Queue auszuwählen und dann die Instanz zu bestimmen, die überwacht werden soll – im folgenden Beispiel übrigens jede Warteschlange eine Instanz.

Nachdem festgelegt ist, wie die anwenderspezifischen Counter organisiert werden sollen, müssen sie noch erstellt werden. Der folgenden Code erzeugt in der Kategorie SampleCategory einen Performance-Counter mit der Bezeichnung SampleCounter.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Google schließt Zero-Day-Lücke in Chrome

Von ihr geht ein hohes Risiko aus. Angreifbar sind Chrome für Windows, macOS und Linux.

15 Stunden ago

KI erkennt Emotionen in echten Sportsituationen

Forschende des KIT haben ein Modell zur Emotionsanalyse entwickelt, das affektive Zustände ähnlich genau wie…

1 Tag ago

Ermittlern gelingt weiterer Schlag gegen Ransomware-Gruppe LockBit

Sie decken die Identität des Kopfs der Gruppe auf. Britische Behörden fahnden mit einem Foto…

2 Tagen ago

Apple stellt neuen Mobilprozessor M4 vor

Er treibt das neue iPad Pro mit OLED-Display an. Apple verspricht eine deutliche Leistungssteigerung gegenüber…

3 Tagen ago

Cyberabwehr: Mindestens zwei kritische Vorfälle pro Tag

Davon entfällt ein Viertel auf staatliche Einrichtungen und 12 Prozent auf Industrieunternehmen.

3 Tagen ago

Tunnelvision: Exploit umgeht VPN-Verschlüsselung

Forscher umgehen die Verschlüsselung und erhalten Zugriff auf VPN-Datenverkehr im Klartext. Für ihren Angriff benötigen…

3 Tagen ago