[ Team LiB ] Previous Section Next Section

PerformanceCounterCategory

System.Diagnostics (system.dll)sealed class

This class allows you to create and manage categories of performance counters. You can see the categories recognized by your system when you use the Performance Administrative Tool. When you attempt to add a counter, you'll see the categories listed in the Performance object drop-list, such as Processor, Memory, Thread, and Network Interface.

Use Create( ) to add a new category. The three-argument form lets you supply a category name, a description of the category, and a collection of CounterCreationData objects. Each CounterCreationData object describes a counter to create in the new category. Use the four-argument form of Create( ) to create a new category with only a single counter.

Delete( ) removes a counter category, and Exists( ) checks whether a given category exists. If you want to check if a specific counter exists in a category, call CounterExists( ). To check for an instance in a category, use InstanceExists( ). GetCategories( ) returns all the categories recognized by the system.

The CategoryHelp, CategoryName, and MachineName properties provide access to the name, help text, and machine name for a given category. You can use the nonstatic versions of CounterExists( ) and InstanceExists( ) to check if a specified counter or instance exists in the inspected category. GetCounters( ) and GetInstanceNames( ) retrieve a list of the counters and instances in a category.

public sealed class PerformanceCounterCategory {
// Public Constructors
   public PerformanceCounterCategory( );
   public PerformanceCounterCategory(string categoryName);
   public PerformanceCounterCategory(string categoryName, string machineName);
// Public Instance Properties
   public string CategoryHelp{get; }
   public string CategoryName{set; get; }
   public string MachineName{set; get; }
// Public Static Methods
   public static bool CounterExists(string counterName, string categoryName);
   public static bool CounterExists(string counterName, string categoryName, string machineName);
   public static PerformanceCounterCategory Create(string categoryName, string categoryHelp,
       CounterCreationDataCollection counterData);
   public static PerformanceCounterCategory Create(string categoryName, string categoryHelp,
       string counterName, string counterHelp);
   public static void Delete(string categoryName);
   public static bool Exists(string categoryName);
   public static bool Exists(string categoryName, string machineName);
   public static PerformanceCounterCategory[ ] GetCategories( );
   public static PerformanceCounterCategory[ ] GetCategories(string machineName);
   public static bool InstanceExists(string instanceName, string categoryName);
   public static bool InstanceExists(string instanceName, string categoryName, string machineName);
// Public Instance Methods
   public bool CounterExists(string counterName);
   public PerformanceCounter[ ] GetCounters( );
   public PerformanceCounter[ ] GetCounters(string instanceName);
   public string[ ] GetInstanceNames( );
   public bool InstanceExists(string instanceName);
   public InstanceDataCollectionCollection ReadCategory( );
}
    [ Team LiB ] Previous Section Next Section