我正在使用PowerShell为EventLog消息发送电子邮件。 由于这是BizTalk系统,因此我决定查找消息正文并将其包括在内。 现在,它已包含在EventLog消息下。 但是,我尝试放置一些换行符或一个子表以将其分开。
这大致是电子邮件的构建方式:
$tableFragmentTemp = $getEventLogWithSelectedColumns |
ConvertTo-Html -Fragment TimeGenerated,EntryType,Source,FriendlyDescr,Message,EventID
$tableTempFragments = "
Application Event Log
" + $tableFragmentTempif ($getEventLogSysFiltered -ne $null)
{
$tableFragmentTempSys = $getEventLogSysFiltered |
ConvertTo-Html -Fragment TimeGenerated,EntryType,Source,FriendlyDescr,Message,EventID
$tableTempFragments = $tableTempFragments + "
System Event Log
" + $tableFragmentTempSys}
$tableFragment = ConvertTo-HTML -head $head -PostContent $tableTempFragments
然后,我使用$ tableFragment并用更多的格式和更多的标头信息包装它。 然后最终像这样发送:
send-mailmessage -from $fromemail -to $toEmails -subject $emailSubject -BodyAsHTML -body $HTMLmessage -priority High -smtpServer $smtpServer
我最后的尝试是使用这样的嵌套表:
$messageID = GetMessageID $messageText
if ($messageID -ne "")
{
$subTable = "
#breaks didn't work either
#$item.Message = $item.Message + "
Full Message Text
" + $messageText + [REI.BizTalkUtils.RetrieveMessageByMessageID.Lookups]::LookupByMessageID($messageID)
# I realized as pasting this that I need some
's as well# but if
$subTable = $subTable + [REI.BizTalkUtils.RetrieveMessageByMessageID.Lookups]::LookupByMessageID($messageID)
$subTable = $subTable + "
$item.Message = $item.Message + $subTable
}
但是输出是通过电子邮件发送的,就像嵌套HTML表不被接受一样。
. MessageId: {A0BA2DE8-63B1-40AC-9988-3C40280CA8B0} InstanceID: {3C42CCD1-F1D1-486A-BB48-CC5955B071D0}
在仍然使用ConvertTo-HTML的同时有什么方法可以解决,还是我只需要自己构建所有表?