Я использую PartialMonitoringObject.StopMaintenanceMode
для установки режимов обслуживания в Microsoft System Center Operations Manager 2007 R2, отметьте здесь . Независимо от того, что я делаю, кажется, что игнорируется время окончания и немедленно заканчивается окно обслуживания, независимо от того, что я указываю. Код выглядит так:
foreach (string SCOMServer in SCOMServers)
{
ReadOnlyCollection<PartialMonitoringObject> windowsComputerObjects;
ManagementGroup managementGroup;
MonitoringClass windowsComputerClass;
managementGroup = new ManagementGroup(SCOMServer);
windowsComputerClass = managementGroup.GetMonitoringClass(SystemMonitoringClass.WindowsComputer);
windowsComputerObjects = managementGroup.GetPartialMonitoringObjects(new MonitoringObjectGenericCriteria("Name='" + ServerFQDN + "'"), windowsComputerClass);
foreach (PartialMonitoringObject windowsComputerObject in windowsComputerObjects)
{
if (windowsComputerObject.InMaintenanceMode)
{
windowsComputerObject.StopMaintenanceMode(DateTime.UtcNow.AddMinutes(DelayInMinutes),Microsoft.EnterpriseManagement.Common.TraversalDepth.Recursive);
// windowsComputerObject.ScheduleMaintenanceMode(DateTime.UtcNow,DateTime.UtcNow.AddMinutes(DelayInMinutes)
RetVal = true;
}
}
`