public IList <string> InstallCounters() { // Delete any existing counters UninstallCounters(); var counterCreationData = SignalRPerfCounterManager.GetCounterPropertyInfo() .Select(p => { var attribute = SignalRPerfCounterManager.GetPerformanceCounterAttribute(p); return(new CounterCreationData(attribute.Name, attribute.Description, attribute.CounterType)); }) .ToArray(); var createDataCollection = new CounterCreationDataCollection(counterCreationData); PerformanceCounterCategory.Create(SignalRPerfCounterManager.CategoryName, "SignalR application performance counters", PerformanceCounterCategoryType.MultiInstance, createDataCollection); return(counterCreationData.Select(c => c.CounterName).ToList()); }