Назад | Перейти на главную страницу

Отправка моментальных снимков по электронной почте

У меня есть текущий сценарий, который должен войти в vsphere, получить все снимки, сделанные более недели назад, и отправить результаты по электронной почте.

Connect-ViServer server

$weekOldSnapshots = (Get-Date).AddDays(-7)
$smtpSrv = "name"
$from = "email"
$to = "email"
$subject = "Snapshot Report"
$body = Get-Snapshot -VM $_ | foreach-object { if($_.Created -gt $weekOldSnapshots){ Select Name, VM, SizeMB}}
$message = new-object Net.Mail.MailMessage($from, $to, $subject, $body)
$smtp = new-object Net.Mail.SMTPclient($smtpSrv)
$smtp.send($message)

Однако когда я запускаю это, я получаю следующую ошибку:

Отчет Алана Ренуфа vCheck сделает это и многое другое за вас. https://github.com/alanrenouf/vCheck-vSphere

Догадаться. Для тех, кто может быть заинтересован в использовании такого фрагмента кода в будущем:

Connect-ViServer server
$body = Get-Folder -name vm | Get-VM | Get-Snapshot | Select Name, VM, SizeMb, Created | Out-String 
send-mailmessage -From "myemail.com" -To "myemail.com" -SmtpServer "myserver.com" -Body