static private void OnShutdown()
        {
            try
            {
                AppDomain.CurrentDomain.ProcessExit -= OnShutdown;
                RIEventManager.OnConfigChange       -= OnConfigFileChange;

                RIEventManager.DoOnShutdown();
                ReflectInsight.OnShutdown();
                DebugManager.OnShutdown();
                RIMessageColors.OnShutdown();
                RILogManager.OnShutdown();
                RIListenerGroupManager.OnShutdown();
                ReflectInsightConfig.OnShutdown();
                TraceMethod.OnShutdown();

                RITraceListener.OnShutdown();
            }
            catch (Exception ex)
            {
                RIExceptionManager.Publish(ex, "Failed during: static ReflectInsightService.OnShutdown()");
            }
            finally
            {
                RIExceptionManager.OnShutdown();
                DebugTextLoggerManager.OnShutdown();
            }
        }
        static ReflectInsightService()
        {
            try
            {
                DebugTextLoggerManager.OnStartup();

                FLockObject = new Object();
                ProcessId   = Process.GetCurrentProcess().Id;
                SessionId   = (uint)Guid.NewGuid().ToString().BKDRHash();

                OnStartup();

                AppDomain.CurrentDomain.ProcessExit += OnShutdown;
                RIEventManager.OnConfigChange       += OnConfigFileChange;
            }
            catch (Exception ex)
            {
                RIExceptionManager.Publish(ex, "Failed during: static ReflectInsightService.ctor()");
            }
        }