Bonjour a tous,

Je suis confronté a un soucis que je ne sais pas résoudre.
Dans le cadre d'un script d'analyse de machine a distance j'utilise les instruction suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
$cpuTime = (Get-Counter -ComputerName $SErvername '\Processor(_Total)\% Processor Time').CounterSamples.CookedValue
$availMem = (Get-Counter -ComputerName $SErvername '\Memory\Available MBytes').CounterSamples.CookedValue
ou $SErvername est une variable contenant un nom de serveur valide sur mon réseau.
Pour la majorité de mes serveurs j'obtiens les résultats et tout se passe bien. Mais pour d'autre j'obtiens l'erreur suivante :
Get-Counter : L’objet spécifié n’a pas été trouvé sur l’ordinateur.
Au caractère C:\DBAWORKSPACE\Testing\powershell\DiagServer_.ps1:54 : 17
+ ... $cpuTime = (Get-Counter -ComputerName $SErvername "\Processor(_Total) ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidResult : ( [Get-Counter], Exception
+ FullyQualifiedErrorId : CounterApiError,Microsoft.PowerShell.Commands.GetCounterCommand
Je précise que si je me connecte en TSE sur les serveurs en question et que je lance ces mêmes commandes en local (mais identique, je renseigne la variable SErvername avec le nom du serveur local) les commandes fonctionnent bien.
Je précise aussi que les serveurs sont tous installé avec la même image et donc les compteurs sont bien déployés, également que ces serveurs n'ont pas été installé avec de pack de langue Windows et donc ce n'est pas un probleme de traduction du nom des compteurs.

J'en viens a supposer que cette cmdlet utilise l'instrumentation WMI et que celle si peut être ne répond pas en remote pour certain serveur.
Que puis je faire ? un restart du service WMI sur mes serveurs sera t'il suffisant (on parle de serveur de production donc je ne touche pas au doigt mouillé) ?

Merci de vos conseils et réponses.