Я пытаюсь заставить скрипт работать, но я сталкиваюсь с некоторыми проблемами. У нас есть папка, в которую отправляются ZIP-файлы по FTP, и служба на сервере перемещает их в другой каталог для обработки. Иногда проблема заключается в том, что служба будет работать, но ничего не будет делать, поэтому мониторинг не отправил предупреждение. Я работаю над сценарием PowerShell, чтобы проверить папку на наличие ZIP-файлов старше 30 минут и, если найден, отправить электронное письмо этой команде, чтобы выяснить, почему файлы не были перемещены. Ниже то, что я написал, любая помощь будет принята с благодарностью. Спасибо.
$Path = "c:\test"
$SMTPServer = "mail.server.com"
$From = "Monitor Prod <mon.server.com>"
$To = "people@server.com"
$Subject = "Alert: Potential issue with service in PROD"
$SMTPMessage = @{
To = $To
From = $From
Subject = "$Subject"
Smtpserver = $SMTPServer
}
$File = Get-ChildItem -path $path -Filter ".txt" | Where-Object {$_.LastWriteTime -lt (Get-Date).AddMinutes(-30)}
If ($File)
{ $SMTPBody = "Batches older than 30 minutes located in c:\test while service is actively running. Service may require a restart."
$File | ForEach { $SMTPBody += "$($_.FullName)`n" }
Send-MailMessage @SMTPMessage -Body $SMTPBody
}