public StoreDriverSubmission(IStoreDriverTracer storeDriverTracer)
 {
     ArgumentValidator.ThrowIfNull("storeDriverTracer", storeDriverTracer);
     this.storeDriverTracer = storeDriverTracer;
     ExTraceGlobals.FaultInjectionTracer.RegisterExceptionInjectionCallback(new ExceptionInjectionCallback(StoreDriverSubmission.FaultInjectionCallback));
     ResourceHealthMonitorManager.Initialize(ResourceHealthComponent.Transport);
 }
        private static void Main(string[] args)
        {
            new LocalizedString("Workaround for bug # 72378");
            int num = Privileges.RemoveAllExcept(AssistantsService.requiredPrivileges);

            if (num != 0)
            {
                Environment.Exit(num);
            }
            ExWatson.Register();
            ExWatson.RegisterReportAction(new WatsonRegKeyReportAction("HKLM\\SYSTEM\\CurrentControlSet\\Services\\MSExchangeIS\\ImagePath"), WatsonActionScope.Process);
            AssistantsService.ReadRegParams();
            Globals.InitializeMultiPerfCounterInstance("MSExchMbxAsst");
            ResourceHealthMonitorManager.Initialize(ResourceHealthComponent.Assistants);
            AssistantsService service = new AssistantsService();

            if (Environment.UserInteractive && args.Length >= 1 && string.Compare(args[0], "-crash", true) == 0)
            {
                throw new Exception("Startup crash to test ExWatson stuff");
            }
            if (Environment.UserInteractive && args.Length >= 1 && string.Compare(args[0], "-console", true) == 0)
            {
                AssistantsService.TracerPfd.TracePfd <int>(3L, "PFD IWS {0} Starting the Mailbox Assistants Service in Console Mode", 28055);
                ExServiceBase.RunAsConsole(service);
                return;
            }
            ServiceBase.Run(service);
        }
示例#3
0
 internal static void InitializeServerThrottlingObjects(bool initializeRHM)
 {
     if (initializeRHM)
     {
         ThrottlingPerfCounterWrapper.Initialize(BudgetType.ResourceTracking, null, true);
         ResourceHealthMonitorManager.Initialize(ResourceHealthComponent.MRS);
     }
 }
 internal override void Load()
 {
     base.Load();
     ResourceHealthMonitorManager.Initialize(ResourceHealthComponent.OWA);
     this.CheckIncompatibleTimeoutValues();
     this.ReadInstantMessageSettings();
     this.ReadNotificationSettings();
     this.InitializeMaxBytesInConversationReadingPane();
     MessagePrefetchConfiguration.InitializeSettings();
     this.ReadAndInitializeIMPerfCounterSettings();
     this.ReadAndInitializeExceptionPerfCounterSettings();
 }
 public void Load()
 {
     try
     {
         MExEvents.Initialize(Path.Combine(ConfigurationContext.Setup.InstallPath, "TransportRoles\\Shared\\agents.config"), ProcessTransportRole.MailboxDelivery, LatencyAgentGroup.StoreDriver, "Microsoft.Exchange.Data.Transport.StoreDriverDelivery.StoreDriverDeliveryAgent");
         ResourceHealthMonitorManager.Initialize(ResourceHealthComponent.Transport);
         StoreDriverDeliveryDiagnostics.Initialize();
         StoreDriverDelivery.InitializePerformanceCounterMaintenance();
     }
     catch (ExchangeConfigurationException ex)
     {
         StoreDriverDeliveryDiagnostics.Diag.TraceError((long)this.GetHashCode(), "StoreDriver.Load threw ExchangeConfigurationException: shutting down service.");
         StoreDriverDelivery.eventLogger.LogEvent(TransportEventLogConstants.Tuple_CannotStartAgents, null, new object[]
         {
             ex.LocalizedString,
             ex
         });
         this.Stop();
     }
 }