internal void PerformanceCollectorAddRemoveCountersForWebAppTest(WebAppPerformanceCollector collector) { var counters = new[] { new PerformanceCounter("ASP.NET Applications", "Request Execution Time", "??APP_W3SVC_PROC??"), new PerformanceCounter("ASP.NET Applications", "Requests In Application Queue", "??APP_W3SVC_PROC??") }; foreach (var pc in counters) { string error; collector.RegisterCounter( PerformanceCounterUtility.FormatPerformanceCounter(pc), pc.GetHashCode().ToString(CultureInfo.InvariantCulture), true, out error, false); } var twoCounters = collector.PerformanceCounters.ToArray(); collector.RemoveCounter( @"\ASP.NET APPLICATIONS(??APP_W3SVC_PROC??)\Request Execution Time", counters[0].GetHashCode().ToString(CultureInfo.InvariantCulture)); var oneCounter = collector.PerformanceCounters.ToArray(); Assert.AreEqual(2, twoCounters.Count()); Assert.AreEqual(@"\ASP.NET Applications(??APP_W3SVC_PROC??)\Request Execution Time", twoCounters[0].OriginalString); Assert.AreEqual(@"\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests In Application Queue", twoCounters[1].OriginalString); Assert.AreEqual(@"\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests In Application Queue", oneCounter.Single().OriginalString); }
internal void PerformanceCollectorAddRemoveCountersForWebAppTest(WebAppPerformanceCollector collector) { var counterRequests = new[] { new PerformanceCounterCollectionRequest(@"\ASP.NET Applications(??APP_W3SVC_PROC??)\Request Execution Time", @"\ASP.NET Applications(??APP_W3SVC_PROC??)\Request Execution Time"), new PerformanceCounterCollectionRequest(@"\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests In Application Queue", @"\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests In Application Queue") }; foreach (var counterRequest in counterRequests) { string error; collector.RegisterCounter( counterRequest.PerformanceCounter, counterRequest.ReportAs, true, out error, false); } var twoCounters = collector.PerformanceCounters.ToArray(); collector.RemoveCounter( @"\ASP.NET APPLICATIONS(??APP_W3SVC_PROC??)\Request Execution Time", counterRequests[0].ReportAs); var oneCounter = collector.PerformanceCounters.ToArray(); Assert.AreEqual(2, twoCounters.Count()); Assert.AreEqual(@"\ASP.NET Applications(??APP_W3SVC_PROC??)\Request Execution Time", twoCounters[0].OriginalString); Assert.AreEqual(@"\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests In Application Queue", twoCounters[1].OriginalString); Assert.AreEqual(@"\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests In Application Queue", oneCounter.Single().OriginalString); }