Jump to content

Powershell Get-MessageTrackingLog -> Brainbug


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Moin,

 

Was ich möchte: Die Anzahl aller Mails die wir von einer Postfachdatenbank/ Domain von uns verschickt wurden. Und das Monatlich.

 

Der Befehl läuft durch und die domain.log wird auch erstellt. Aber sie ist leer. Vermutlich ists nur nen kleiner Fehler, aber ich raffs nicht.

EXC2010, Skript wird auf dem Server mit der Transporterrolle gefahren.

 

Hier mein Aufruf:

 

C:\skripte\exc-stat>Get-MessageTrackingLog -ResultSize Unlimited -Start "01/01/2012 00:00:00" -End "01/31/2012 23:5
9:59" -EventId "Send" -Sender "*@domain.tld" > C:\log\exc-stat\domain.log

 

Ideen?

Link zu diesem Kommentar

Search Message Tracking Logs: Exchange 2010 Help

unter

Controlling the Output of a Message Tracking Log Search Performed in the Exchange Management Shell

 

You can display or hide specific fields that are returned from a message tracking log search. Wildcard characters (*) are supported.

 

 

Oder ich habe einen Denkfehler, was nicht auszuschließen ist.

Link zu diesem Kommentar

Moin,

 

kein Denkfehler, Du hast es missverstanden. Dein zitiertet Satz fängt als Einleitung an mit:

 

You can control the output of the Get-MessageTrackingLog cmdlet by using command output options in the Exchange Management Shell according to the following guidelines:

 

Dein Satz bezieht sich auf die AUSGABE. Die kannst Du steuern, auch mit Wildcards. Im dritten Satz steht ja auch, dass Du die Ausgabe in eine Datei speichern kannst, was das CMDLET ja auch nicht kann.

 

Gemeint sind hier die Mittel der Shell selbst.

 

Diese Information ist ziemlich überflüssig, denn mit PowerShell-Mittel kann man so ziemlich alles machen - egal, welches CMDLET den Input liefert.

Link zu diesem Kommentar

Alles klar, danke für die Erklärung. Funktioniert jetzt auch so wie ich das will. Nur zwei Fragen bleiben noch offen.

 

1. ich muss mir die Stats von allen Hub/CAS Rollenservern holen und sie dann zusammenrechnen lassen. Geht das auch alles von einem Server aus? SOLVED

 

2. Kann es sein das das CMDLET nur die externen Mails auflistet?

 

gruß

Link zu diesem Kommentar

Get-ExchangeServer | where {$_.isHubTransportServer -eq $true -or $_.isMailboxServer -eq $true} | Get-MessageTrackingLog -ResultSize Unlimited -Start $startdate -End $enddate | Where-Object { $_.Sender -like "*@domain.tld" -and $_.EventID -eq "SEND" -or $_.EventID -eq "DELIVER"} >> C:\exc-stat\domain.log

 

Okay, das funktioniert ansich. Nur leider listet der Deliver Parameter alles mögliche auf :( eine Idee wie ich auch die Mails von intern nach intern rausbekomme?

 

Edit:

Kleines Verständnisproblem:

Ich sage ihm er soll mir alle Einträge rauswerfen die:

 

Sender = *@domaint.tld

und

EventID = SEND

oder

EventID = DELIVER

 

soweit so gut ABER: ich habe in meiner domain.log auch Eintrage drin die, wo der SENDER name@Domain2.tld ist.

 

Edit2: ich hab alles in dem logfile :D. Ich vermute mal das einfach aneinanderreihen hat wohl nicht geklappt.

 

Edit3:

Get-ExchangeServer | where {$_.isHubTransportServer -eq $true -or $_.isMailboxServer -eq $true} | Get-MessageTrackingLog -ResultSize Unlimited -Start $startdate -End $enddate | Where-Object { $_.Sender -like "*@domain.tld" -and { Where-Object { $_.EventID -eq "SEND" -or $_.EventID -eq "DELIVER"}}} >> C:\exc-stat\domain.log

 

Auch das funktioniert nicht wie gewollt...

bearbeitet von Schranz
Link zu diesem Kommentar

Lösung:

 

Get-ExchangeServer | where {$_.isHubTransportServer -eq $true -or $_.isMailboxServer -eq $true} | Get-MessageTrackingLog -ResultSize Unlimited -Start $startdate -End $enddate | Where-Object { $_.Sender -like "*@domain.tld" -and ( $_.EventID -eq "SEND" -or $_.EventID -eq "DELIVER")} >> C:\exc-stat\domain.log

 

Es waren runter Klammern von nöten.

Link zu diesem Kommentar

Bonusfrage:

Ich habe vorne

 

Get-ExchangeServer | where {$_.isHubTransportServer -eq $true -or $_.isMailboxServer -eq $true}

 

stehen, damit er nur die Messagelogs auf den Hub/Cas Servern durch pflügt. Aber in der Console sehe ich, das er auch die Server mit der DAG Rolle durchsucht, warum tut er das jetzt? Heute morgen hat er das noch nicht getan.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...