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

SmokeBuster bekämpft SmokeLoader

Malware SmokeLoader wird weiterhin von Bedrohungsakteuren genutzt, um Payloads über neue C2-Infrastrukturen zu verbreiten.

14 Minuten ago

Taugen Kryptowährungen als Unterstützer der Energiewende?

Bankhaus Metzler und Telekom-Tochter MMS testen, inwieweit Bitcoin-Miner das deutsche Stromnetz stabilisieren könnten.

16 Stunden ago

Supercomputer-Ranking: El Capitan überholt Frontier und Aurora

Mit 1,7 Exaflops ist El Capitan nun der dritte Exascale-Supercomputer weltweit. Deutschland stellt erneut den…

20 Stunden ago

Ionos führt neue AMD-Prozessoren ein

Der deutsche Hyperscaler erweitert sein Server-Portfolio um vier Angebote mit den neuen AMD EPYC 4004…

21 Stunden ago

Lags beim Online-Gaming? DSL-Vergleich und andere Tipps schaffen Abhilfe

Beim Online-Gaming kommt es nicht nur auf das eigene Können an. Auch die technischen Voraussetzungen…

21 Stunden ago

GenKI-Fortbildung immer noch Mangelware

Fast jedes zweite Unternehmen bietet keinerlei Schulungen an. In den übrigen Betrieben profitieren oft nur…

22 Stunden ago