Blog/Nutanix/compression_info.ps1

55 lines
1.7 KiB
PowerShell
Raw Normal View History

2023-12-17 20:09:45 +01:00
#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
}