protected override void InternalProcessRecord() { TaskLogger.LogEnter(); base.InternalProcessRecord(); MonitoringData monitoringData = null; List <TroubleshooterCheck> checkList = this.GetCheckList(); List <TroubleshooterCheck> failedCheckList = TroubleshooterCheck.RunChecks(checkList, new TroubleshooterCheck.ContinueToNextCheck(TroubleshooterCheck.ShouldContinue), out monitoringData); this.RunResolveProblems(monitoringData, checkList, failedCheckList); base.WriteObject(monitoringData, true); TaskLogger.LogExit(); }