All a matter of how you output the message tracking logs. Here's one I use to
track users that exceed 200 recipients in more than 50 messages in an hour.
Useful for determining if someone has been phished. Just one example of using
PowerShell to analyze the logs.
## Begin ##
Add-PSSnapin *exchange*
$time = (Get-Date).AddHours(-1)
$bad = 0
$Senders = Get-ClientAccessServer | Get-MessageTrackingLog -Start $time
-ResultSize unlimited | Where-Object {$_.EventID -like 'SEND'-and $_.Sender
-match "^[email protected]"} | Group-Object -Property "Sender" | sort Count
$messagepriority = "Normal"
foreach ($sender in $senders)
{
$sender | add-member -MemberType NoteProperty -name
RecipientCount -value 0
$sender.group | foreach {$sender.RecipientCount +=
$_.Recipients.Count}
if ($sender.RecipientCount -gt 200 -and
$sender.count -gt 50)
{
$messagePriority = "High"
$bad = 1
}
}
$senders2 = $senders | sort RecipientCount
$body = $Senders[-1..-15] | select Name,Count,RecipientCount
$body += "<br>"
$body += "<br>"
$body += "<br>"
$body += $Senders2[-1..-15] | select Name,Count,RecipientCount
$body = $body | ConvertTo-Html
### Email Results Normal Priority ###
function sendmail([string] $body)
{
$SmtpClient = new-object system.net.mail.smtpClient
$MailMessage = New-Object system.net.mail.mailmessage
$SmtpClient.Host = "mailhost.domain.com"
$mailmessage.from = "[email protected]"
$mailmessage.To.add("[email protected]")
$mailmessage.Subject = "Critical attention needed, possible phished user!"
$MailMessage.IsBodyHtml = $True
$mailmessage.Body = $body
$mailmessage.Priority = $MessagePriority
$smtpclient.Send($mailmessage)
}
if ($bad -eq 1)
{
sendmail($body)
}
## End ##
-------------------------------------------------
Thank you,
Pete Kretche
MCP, A+, HP APS
Senior Network/Systems Administrator
E-mail Administrator
UW - Green Bay
From: Paul Cookman [mailto:[email protected]]
Sent: Thursday, September 30, 2010 6:11 AM
To: MS-Exchange Admin Issues
Subject: RE: Email count.
Great,
Thanks I will look into the free product.
Any ideas of power shell commands? Sounds interesting..
From: Kretche, Peter [mailto:[email protected]]
Sent: 30 September 2010 12:04
To: MS-Exchange Admin Issues
Subject: RE: Email count.
Promodag makes a freeware product called StoreLog that can do some basic
analysis. It uses Access as a backend DB so it's rather limited in many
regards but if you're just looking for basics, it's worth a look. You could
always use Powershell to query the log files and do various output.
-------------------------------------------------
Thank you,
Pete Kretche
MCP, A+, HP APS
Senior Network/Systems Administrator
E-mail Administrator
UW - Green Bay
From: Paul Cookman [mailto:[email protected]]
Sent: Thursday, September 30, 2010 4:07 AM
To: MS-Exchange Admin Issues
Subject: Email count.
I am looking for a way to report on email count between users, I have seen
Promadag but was wondering any one new of a free way or better way.
Regards.
---
To manage subscriptions click here:
http://lyris.sunbelt-software.com/read/my_forums/
or send an email to
[email protected]<mailto:[email protected]>
with the body: unsubscribe exchangelist
---
To manage subscriptions click here:
http://lyris.sunbelt-software.com/read/my_forums/
or send an email to
[email protected]<mailto:[email protected]>
with the body: unsubscribe exchangelist
--
This message has been scanned for viruses and
dangerous content by MailScanner,
and is believed to be clean.
---
To manage subscriptions click here:
http://lyris.sunbelt-software.com/read/my_forums/
or send an email to
[email protected]<mailto:[email protected]>
with the body: unsubscribe exchangelist
---
To manage subscriptions click here:
http://lyris.sunbelt-software.com/read/my_forums/
or send an email to [email protected]
with the body: unsubscribe exchangelist