//! Start monitoring
 public static void StartMonitoring(IconisTracer tracer)
 {
     if (_bPerfMonitoringActive == false)
     {
         _bPerfMonitoringActive = true;
         // interval in milliseconds (default = 30min = 1800s)
         _timer.Interval = 1800000;
         _timer.Elapsed += new System.Timers.ElapsedEventHandler(timer_Elapsed);
         _timer.Enabled  = true;
         _GlobalStopWatch.Start();
         _tracer = tracer;
     }
 }
        //! Trace in specified tracer
        public static void TraceInfos(IconisTracer icoTracer)
        {
            if (icoTracer != null)
            {
                TimeSpan time = _GlobalStopWatch.Elapsed;
                String   str  = String.Format("Total elapsed time since program monitoring starts = [{0}h {1}m {2}s {3}ms]",
                                              Math.Round(time.TotalHours, 0), time.Minutes, time.Seconds, time.Milliseconds);

                icoTracer.TracePerformance(str);

                foreach (PerfStat st in _perfStats)
                {
                    icoTracer.TracePerformance(st.ToString());
                }
            }
        }
 protected void InitTraceManagement(string strPath, string strComponent)
 {
     m_IconisTracer = new IconisTracer();
     m_IconisTracer.StartTrace(strPath, strComponent);
 }