Ejemplo n.º 1
0
        /// <summary>
        /// Stops perf counters polling
        /// </summary>
        public void Stop()
        {
            PerfMonitorBase.Stop();

            if (cfg != null)
            {
                cfg.Properties[EnumKeyNames.PerfMonitorLib.ToString()] = null;
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Start polling and saving perf counters. Period is in sec
        /// </summary>
        /// <param name="pollPeriod_sec">Poll period, ms</param>
        public void Start(HttpConfiguration httpConfiguration, int pollPeriod_sec)
        {
            PerfMonitorBase.Start(pollPeriod_sec);

            cfg = httpConfiguration;

            httpConfiguration.Filters.Add(new ExceptionCounterFilter(this.PerfMonitorBase));

            httpConfiguration.MessageHandlers.Add(new RequestPerfMonitorMessageHandler(this.PerfMonitorBase));

            //httpConfiguration.Services.Add(typeof(PerfMonitorForWebApi), this);

            httpConfiguration.Properties[EnumKeyNames.PerfMonitorLib.ToString()] = this;

            //httpConfiguration.MapHttpAttributeRoutes();
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Start polling and saving perf counters. Period is in ms
        /// </summary>
        /// <param name="pollPeriod_sec">Poll period, ms</param>
        public void Start(HttpApplication app, RouteCollection routes, int pollPeriod_sec)
        {
            PerfMonitorBase.Start(pollPeriod_sec);

            app.Application[EnumKeyNames.PerfMonitorLib.ToString()] = this;

            if (Configuration.EnablePerfApi)
            {
                var r = routes.MapRoute(
                    name: "PerfMonitor",
                    url: "api/perfcounters/",
                    defaults: new { controller = "PerfCounters", action = "Get" }
                    );
                routes.Remove(r);
                routes.Insert(0, r);
            }

            GlobalFilters.Filters.Add(new PerfMonitoringFilter(PerfMonitorBase));
            GlobalFilters.Filters.Add(new ExceptionCounterFilter(PerfMonitorBase));
        }
Ejemplo n.º 4
0
 public void RegisterInMemoryCacheStorage(long expirationInSeconds = 60 *60)
 {
     Storage = PerfMonitorBase.RegisterInMemoryCacheStorage(expirationInSeconds);
 }
Ejemplo n.º 5
0
 public void RegisterLiteDbStorage(string dbPath)
 {
     Storage = PerfMonitorBase.RegisterLiteDbStorage(dbPath);
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Easy register some default perf counter storages implemented in the lib, if needed
 /// </summary>
 /// <param name="dbPath"></param>
 public void RegisterCSVFileStorage(string dbPath)
 {
     Storage = PerfMonitorBase.RegisterCSVFileStorage(dbPath);
 }
Ejemplo n.º 7
0
 /// <summary>
 /// Register perf counter storages
 /// </summary>
 /// <param name="storage"></param>
 public void RegisterStorages(params IPerfomanceCountersStorage[] storage)
 {
     Storage = PerfMonitorBase.RegisterStorages(storage);
 }
Ejemplo n.º 8
0
 /// <summary>
 /// Stops perf counters polling
 /// </summary>
 public void Stop()
 {
     PerfMonitorBase.Stop();
 }