private MicroDelayScope(MailboxReplicationProxyService mrsProxy, params ResourceKey[] resources) { this.startedCallProcessingAt = ExDateTime.UtcNow; this.resources = resources; this.budget = StandardBudget.AcquireUnthrottledBudget("MrsProxyBudget", BudgetType.ResourceTracking); this.workLoadSettings = (mrsProxy.IsHighPriority ? CommonUtils.WorkloadSettingsHighPriority : CommonUtils.WorkloadSettings); this.skipWLMThrottling = (!ResourceHealthMonitorManager.Active || !TestIntegration.Instance.MicroDelayEnabled || mrsProxy.SkipWLMThrottling || mrsProxy.IsInFinalization); bool flag = false; try { if (!this.skipWLMThrottling) { ResourceLoadDelayInfo.CheckResourceHealth(this.budget, this.workLoadSettings, this.resources); } this.budget.StartConnection("MailboxReplicationService.MicroDelayScope.MicroDelayScope"); this.budget.StartLocal("MailboxReplicationService.MicroDelayScope.MicroDelayScope", default(TimeSpan)); if (!ActivityContext.IsStarted) { this.scope = ActivityContext.Start(null); this.scope.Action = "MailboxReplicationProxyService"; if (OperationContext.Current != null) { this.scope.UpdateFromMessage(OperationContext.Current); } this.scope.UserId = mrsProxy.ExchangeGuid.ToString(); if (mrsProxy.ClientVersion != null) { this.scope.ClientInfo = mrsProxy.ClientVersion.ComputerName; } } flag = true; } finally { if (!flag) { this.SuppressDisposeTracker(); if (this.budget != null) { this.budget.Dispose(); this.budget = null; } if (this.scope != null) { this.scope.End(); this.scope = null; } } } }
public void CheckResourceHealth() { ResourceLoadDelayInfo.CheckResourceHealth(this.ibudget, TeamMailboxSyncResourceMonitorFactory.TeamMailboxSyncResourceMonitor.workloadSettings, this.resourcesToAccess); }
// Token: 0x060016A6 RID: 5798 RVA: 0x000559A7 File Offset: 0x00053BA7 public void CheckResourceHealth(IThrottlingModuleInfo tmInfo) { ResourceLoadDelayInfo.CheckResourceHealth(tmInfo.PSBudget, tmInfo.GetWorkloadSettings(), tmInfo.ResourceKeys); }