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

Устранение неполадок сценария Powershell, отправляющего электронную почту

Этот сценарий отправляет электронное письмо при возникновении определенного события. Я запускаю этот сценарий, когда экран с файлами, который я настроил на FSRM, обнаруживает, что пользователь сохраняет определенные типы файлов. На вкладке команд я запускаю файл powershell.exe и аргументы этого скрипта. Я пытаюсь добавить сообщение из журнала событий, на создание которого настроен мой файловый экран. Однако, когда этот сценарий генерирует электронное письмо, он генерирует следующее вместо сообщения о событии.

 System.Diagnostics.EventLogEntry 

Вот сценарий:

function 
    sendMail{

         Write-Host “Sending Email”

         #SMTP server name
         $smtpServer = “smtp.abc.com”

         #Creating a Mail object
         $msg = new-object Net.Mail.MailMessage

         #gets the server name
         $srv = $env:computername

         #gets the event ID details
         $event = Get-Eventlog -LogName Application -source SRMSVC -Newest 1

         #Creating SMTP server object
         $smtp = new-object Net.Mail.SmtpClient($smtpServer)

         #Email structure 
         $msg.From = “FileServer@abc.com“
         $msg.ReplyTo = “administrator@ABC.com“
         $msg.To.Add(“RECEPIENT@ABC.com“)
         $msg.subject = “Event Alert”
         $msg.body = “The file resource management service has detected activity. Please check the appliction log on $srv and look for id 8215. Here are the event details $event ”

         #Sending email 
         $smtp.Send($msg)

    }

    #Calling function
    sendMail

Переменная $ srv вводится правильно, добавляя правильное имя компьютера в тело письма.

Кто-нибудь знает, почему вместо этого сообщение о событии не включается в тело письма?

Попробуйте изменить

$msg.body = “The file resource management service has detected activity. Please check the appliction log on $srv and look for id 8215. Here are the event details $event ”

к

$msg.body = “The file resource management service has detected activity. Please check the appliction log on $srv and look for id 8215. Here are the event details $($event.message) ”

Все, что я сделал, это изменилось $event к $($event.message)