
Preciso recuperar programaticamente uma amostra do uso recente de CPU e memória em um sistema Hyper-V, conforme visto pelo sistema operacional convidado. Por recente, quero dizer nos últimos minutos.
Não consigo personalizar o sistema Hyper-V de destino (nem o host nem o convidado). Portanto, não consigo configurar logs de desempenho ou instalar recursos personalizados.
Eu esperava fazer isso por meio de uma consulta WMI, mas não consegui identificar uma classe WMI que fornecesse histórico de CPU ou memória.
Eu tentei o contador get (referência) cmd, mas não extrai dados históricos. Em vez disso, parece começar a amostragem no momento em que executo o cmd. E então não atende às minhas necessidades.
O cmd Get-ClusterPerformanceHistory (referência) parecia promissor, mas requer o recurso de espaços de armazenamento do Windows, o que é impossível no meu caso.
Existe uma maneira, por meio de uma consulta WMI ou de um cmd do PowerShell, de fazer o que preciso?
Responder1
Bem, você está sem sorte. Você não pode obter o que não está registrado. Você precisa usar a API para o monitor de desempenho - mas ela só registra quando tem instruções para fazer isso e a menos que alguém tenha configurado isso - sem que você possa fazer isso (pois é uma mudança no sistema) - avise quem deu você essa tarefa de falar com o Papai Noel.
O cmd Get-ClusterPerformanceHistory (ref) parecia promissor, mas requer o recurso de espaços de armazenamento do Windows
Por que você diria isso, visto que esse é um recurso que 90% depende da presença do cluster com espaços de armazenamento e principalmente registra dados para isso.