#Script créé par Nicolas Lang - Sous licence CC-BY-SA #https://nicolaslang.fr #ajout du snappin Add-PSSnapin NutanixCMDletsPSSnapin #l'ip du cluster que nous allons interroger $clusterip = "10.0.0.100" #un identifiant ayant possibilité de se connecter $username = 'user@domain.fr' #le mot de passe lié à cet utilisateur $password = (Get-Content C:\users\moi\motdepassechiffré.txt | ConvertTo-SecureString) #création d'une connexion $connection = Connect-NTNXCluster -Server $ip -UserName $username -Password $password -ForcedConnection -AcceptInvalidSSLCerts if ($connection.isconnected -eq $false) { exit 20 } #id du container recherché $id = "00042dc6-1b11-a279-6b43-246e960c61c2::44330611" #on essaie d'obtenir les informations de compression, on exit avec un code d'erreur 30 si une erreur se produit. Vous pouvez ajouter dans la partie catch{} toute action supplémentaire qui vous permettrait d'avoir du debug. try { $stats = Get-NTNXContainerStat -Id $id -Metrics data_reduction.overall.saving_ratio_ppm,data_reduction.compression.saving_ratio_ppm -ErrorAction Stop } catch { exit 30 } #on prend la date et heure actuelle $now = Get-Date #on exporte nos informations en ajout d'un fichier CSV qui sera dans C:\Temp et qui aura pour nom la date du jour. try{ [pscustomobject]@{ "date" = $now.ToShortDateString() "heure" = $now.ToShortTimeString() "métrique 1" = $stats[0].metric "valeur 1" = $stats[0].values[0] / 1000000 "métrique 2" = $stats[1].metric "valeur 2" = $stats[1].values[0] / 1000000 } | Export-Csv -Delimiter ";" -NoTypeInformation -Append -Encoding UTF8 -Path "C:\Temp\compression_$($now.ToShortDateString().Replace("/","_")).csv" -ErrorAction Stop } catch { exit 40 }