Praćenje razmjene dnevnika razmjene get-messageTrackingLog

Možete koristiti cmdlet za analizu transportnih dnevnika prilikom praćenja e-pošte u programu Exchange. Get-MessageTrackingLog Konzola za upravljanje Exchange. U ovom članku navest ću primjere jednorednih naredbi PowerShell koje često koristim pri pretraživanju i praćenju usmjeravanja pošte u Exchange Serveru 2016/2013/2010 i Office 365 (Exchange Online).

Podsjetit ću da se podaci o prijevoznom sustavu Exchange pohranjuju u direktoriju % ExchangeInstallPath% TransportRoles \ Dnevnici \ Traženje poruka a najučinkovitiji i najfleksibilniji način za analizu ovih zapisnika prilikom praćenja poruka u sustavu Exchange je upotreba cmdleta Get-MessageTrackingLog.

Prije svega, razmislite o glavnim parametrima cmdleta Get-MessageTrackingLog koji možete koristiti za filtriranje događaja u zapisnicima. Najčešće korišteni parametri cmdleta su:

  • pošiljalac - pretraživanje po pošiljatelju;
  • primatelji - pretraživanje po primatelju;
  • server - Traži na određenom transportnom poslužitelju
  • početak "30.02.2019 08:00:00" -kraj “31.02.2019 21:00:00” - potražite određeno vremensko razdoblje;
  • MessageSubject - pretraživanje na temu poruke;
  • EventID - pretraživanje prema kodu događaja na poslužitelju (koriste se obično kodovi RECEIVE, SEND, FAIL, DSN, DOSTAVA, BADMAIL, RESOLVE, EXPAND, REDIRECT, TRANSFER, SUBMIT, POISONMESSAGE, DEFER);
  • messageID - praćenje pisama po ID-u.

Ako pokrenete cmdlet Get-MessageTrackingLog bez parametara bit će prikazani svi događaji iz Exchange dnevnika u zadnjih 30 dana. Dobro je što s takvim pokretanjem, cmdlet prikazuje samo zadnjih 1000 događaja. Da biste uklonili ograničenje broja prikazanih događaja, morate odrediti parametar -ResultSize Neograničeno (ne preporučuje se to bez određivanja dodatnih parametara filtriranja zbog mogućeg opterećenja na poslužitelju).

Informacije o Exchange događajima možete prikazati u obliku stranice pomoću naredbe:

Get-MessageTrackingLog | Izvan domaćina-Stranica

Da biste podatke prikazali u tabličnom obliku i poravnali širinu stupaca, upotrijebite cmdlet Format-Table:

Get-MessageTrackingLog | Format-tablica -AutoSize

Ako vaša organizacija Exchange koristi nekoliko poslužitelja prometa Hub, za pretraživanje dnevnika poslužitelja navedite naziv poslužitelja kao argument parametru -Server ili pokrenite naredbu za pretraživanje za svaki Hub Transport poslužitelj:

Get-TransportServer | Get-MessageTrackingLog

Prikazujemo sva slova u zadnjih 12 sati ((Datum-datum). AddHours (-12)) u kojem je primatelj iz poštanskog sustava @ gmail.com naveden kao primatelj:

Get-MessageTrackingLog -Start (Get-Date) .AddHours (-12) -ResultSize neograničeno | gdje [string] $ _. primatelji -like "*@gmail.com"

Da biste prikazali sva pisma koja je određeni korisnik poslao određeno vrijeme kroz određeni poslužitelj (u izvješću će se prikazati samo određena polja):

Get-MessageTrackingLog -ResultSize neograničeno -Sender "[email protected]" -server msk-hub-01 -Start "30.03.2019 08:00:00" -Da "04.04.2019 21:00:00" | vremenski žig s odabranim objektom, pošiljatelj, primatelji, poruka, predmet, događaj | ft

Pronađite sva pisma koja je jedan korisnik poslao drugom i prenesite rezultat u CSV datoteku:

Get-MessageTrackingLog -Sender "[email protected]" -Recipients "[email protected]" -ResultSize neograničeno -server msk-hub-01 | Vremenska oznaka objekta-pošiljatelja, pošiljatelj, $ _. Primatelji, porukaSubjekt | Export-Csv -Path "C: \ ps \ exchange \ msg_tracking_out.csv" -Encoding Default -Delimiter ";"

Pretražite na temu pisma. Da biste prikazali sva slova s ​​naslovnom linijom koja sadrži frazu "test", pokrenite sljedeću naredbu (da biste rezultate pretraživanja prikazali u zasebnom tabelarnom grafičkom prozoru s prikladnim opcijama za sortiranje, filtriranje i pretraživanje podataka, možete koristiti cmdlet out-gridview):

Get-MessageTrackingLog -MessageSubject "test" -ResultSize neograničeno -server msk-hub-01 | Vremenska oznaka objekta-pošiljatelja, pošiljatelj, $ _. Primatelji, porukaSubjekt | out-GridView

Možete pretraživati ​​prema određenom identifikatoru poruke (na primjer, dobili ste ga iz zaglavlja usluga u programu Outlook):

Get-MessageTrackingLog -messageID "[email protected]" -ResultSize neograničen -server msk-hub-01 | Vremenska oznaka objekta-pošiljatelja, pošiljatelj, $ _. Primatelji, porukaSubjekt

Da biste izračunali broj dolaznih poruka u zadnjih 7 dana za određeni poštanski sandučić, učinite:

(Get-MessageTrackingLog -EventID "RECEIVE" -Recipients "[email protected]" -ResultSize neograničeno) .Count

Možete prikazati statistiku pisama s grupiranjem. Na primjer, želite vidjeti koliko pisama raznih pošiljatelja iz domene mail.ru vaša je organizacija primila u jednom danu (prikazat ćemo ukupan broj pisama koje je poslao svaki vanjski pošiljatelj):

Get-MessageTrackingLog -EventId "Receive" -Start (Get-Date) .AddDays (-1) -ResultSize Neograničeno | Where-Object $ _. Pošiljatelj -like "*@mail.ru" | Pošiljatelj grupe-predmeta | Poredaj-Broj objekata -Padajući | Format-tablica *

Za traženje e-poruka pohranjenih u korisničkim poštanskim sandučićima Exchange upotrijebite cmdlet Search-Mailbox.

Office 365 ima mogućnost pretraživanja zapisnika za praćenje s web sučelja Exchange Admin Center (EAC). Idite na odjeljak Tok protoka -> Trag poruke. Ispunite obavezna polja za pretraživanje. U suštini, ovo je web sučelje za cmdlet Get-MessageTrackingLog, koji korisniku omogućuje formiranje naredbe PowerShell u jednostavnom obliku za pretraživanje poruka pomoću zapisnika..

Gornje metode pomoći će vam da dobijete statistiku o porukama poslanim i primljenim u sustavu Exchange i dijagnosticirate probleme s slanjem poruka.