Os Conjuntos de Coletores de Dados são bons, profissionais e podem ser acionados por um evento como ... alto uso da CPU.
Você também pode usar o Powershell.
$proc = Get-Process | Sort-Object TotalProcessorTime -Descending -EA 0 | Select -First 1
"$(Get-Date) - $($proc.Name) - $($proc.TotalProcessorTime)" | Out-File file.txt -Append
Salve isso como um * .ps1. Execute-o como uma tarefa agendada a cada 5 minutos ou qualquer outra coisa. A primeira linha encontra o processo mais "intensivo" da CPU no momento. A segunda linha registra em um arquivo com um registro de data e hora.
Você também pode obter o máximo que puder imaginar, fazendo com que o script seja registrado apenas se o uso total da CPU do sistema for superior a 99% ou algo parecido. O céu é o limite.