Обнаружение режима обслуживания агента scom (он же MOM) - PullRequest
0 голосов
/ 08 августа 2010

Есть ли программный способ выяснить, находится ли агент SCOM в режиме обслуживания.

1 Ответ

0 голосов
/ 01 сентября 2010

Это можно сделать, вызвав командлеты.

Add-PSSnapin Microsoft.EnterpriseManagement.OperationsManager.Client
Get-Agent 

Добавить ссылку на System.Management.Automation.dll

public class ExecuteCmdlet
{
    public static InitialSessionState state;
    public static RunspacePool pool;

    static ExecuteCmdlet()
    {
        Console.WriteLine("Creating Initial State");
        state = InitialSessionState.CreateDefault();
        try
        {
            PSSnapInException ex = null;
            state.ImportPSSnapIn("Microsoft.EnterpriseManagement.OperationsManager.Client", out ex);
        }
        catch { }

        pool = RunspaceFactory.CreateRunspacePool(state);
        pool.SetMinRunspaces(3);
        pool.SetMaxRunspaces(10);
        pool.Open();
    }

     public static Collection<PSObject> Execute(string cmd)
    {
        PowerShell gpc = PowerShell.Create();
        // Specify the runspace to use and add commands.
        gpc.RunspacePool = pool;
        gpc.AddCommand(cmd);
        return gpc.Invoke();
    }
}
...