Get-EventLog

Lekéri az eseményeket egy eseménynaplóban vagy az eseménynaplók listájában a helyi számítógépen vagy távoli számítógépeken.

Syntax

Get-EventLog
   [-LogName] <String>
   [-ComputerName <String[]>]
   [-Newest <Int32>]
   [-After <DateTime>]
   [-Before <DateTime>]
   [-UserName <String[]>]
   [[-InstanceId] <Int64[]>]
   [-Index <Int32[]>]
   [-EntryType <String[]>]
   [-Source <String[]>]
   [-Message <String>]
   [-AsBaseObject]
   [<CommonParameters>]
Get-EventLog
   [-ComputerName <String[]>]
   [-List]
   [-AsString]
   [<CommonParameters>]

Description

A Get-EventLog parancsmag helyi és távoli számítógépekről lekéri az eseményeket és az eseménynaplókat. Alapértelmezés szerint Get-EventLog lekéri a naplókat a helyi számítógépről. Ha távoli számítógépekről szeretne naplókat lekérni, használja a ComputerName paramétert.

A paraméterek és a Get-EventLog tulajdonságértékek segítségével eseményeket kereshet. A parancsmag a megadott tulajdonságértékekkel egyező eseményeket kap.

A főnevet tartalmazó EventLog PowerShell-parancsmagok csak a Windows klasszikus eseménynaplóiban működnek, például az Alkalmazás, a Rendszer vagy a Biztonság. A Windows Vista és újabb Windows-verziók windowsos eseménynapló technológiáját használó naplók lekéréséhez használja Get-WinEventa következőt: .

Feljegyzés

Get-EventLog Egy elavult Win32 API-t használ. Előfordulhat, hogy az eredmények nem pontosak. Használja inkább a Get-WinEvent parancsmagot.

Példák

1. példa: Eseménynaplók lekérése a helyi számítógépen

Ez a példa a helyi számítógépen elérhető eseménynaplók listáját jeleníti meg. A Napló oszlopban szereplő nevek a LogName paraméterrel adhatók meg, hogy melyik naplóban keresnek eseményeket.

Get-EventLog -List

Max(K)   Retain   OverflowAction      Entries  Log
------   ------   --------------      -------  ---
15,168        0   OverwriteAsNeeded   20,792   Application
15,168        0   OverwriteAsNeeded   12,559   System
15,360        0   OverwriteAsNeeded   11,173   Windows PowerShell

A Get-EventLog parancsmag a List paraméter használatával jeleníti meg az elérhető naplókat.

2. példa: Legutóbbi bejegyzések lekérése egy eseménynaplóból a helyi számítógépen

Ez a példa a rendszer eseménynaplójából szerzi be a legutóbbi bejegyzéseket.

Get-EventLog -LogName System -Newest 5

Index   Time          EntryType    Source              InstanceID   Message
-----   ----          ---------    ------              ----------   -------
13820   Jan 17 19:16  Error        DCOM                     10016   The description for Event...
13819   Jan 17 19:08  Error        DCOM                     10016   The description for Event...
13818   Jan 17 19:06  Information  Service Control...  1073748864   The start type of the Back...
13817   Jan 17 19:05  Error        DCOM                     10016   The description for Event...
13815   Jan 17 19:03  Information  Microsoft-Windows...        35   The time service is now sync...

A Get-EventLog parancsmag a LogName paraméter használatával adja meg a rendszer eseménynaplóját. A Legújabb paraméter az öt legutóbbi eseményt adja vissza.

3. példa: Adott számú bejegyzés összes forrásának megkeresése egy eseménynaplóban

Ez a példa bemutatja, hogyan keresheti meg a rendszer eseménynaplójának 1000 legutóbbi bejegyzésében szereplő összes forrást.

$Events = Get-EventLog -LogName System -Newest 1000
$Events | Group-Object -Property Source -NoElement | Sort-Object -Property Count -Descending

Count   Name
-----   ----
  110   DCOM
   65   Service Control Manager
   51   Microsoft-Windows-Kern...
   14   EventLog
   14   BTHUSB
   13   Win32k

A Get-EventLog parancsmag a LogName paraméter használatával adja meg a rendszernaplót. A Legújabb paraméter az 1000 legutóbbi eseményt választja ki. Az eseményobjektumok a $Events változóban vannak tárolva. A $Events rendszer elküldi az objektumokat a folyamatnak a Group-Object parancsmagnak. Group-ObjectA Tulajdonság paraméter használatával forrás szerint csoportosítja az objektumokat, és megszámolja az egyes forrásokhoz tartozó objektumok számát. A NoElement paraméter eltávolítja a csoporttagokat a kimenetből. A Sort-Object parancsmag a Tulajdonság paraméter használatával rendezi az egyes forrásnevek számát. A csökkenő paraméter sorrendbe rendezi a listát a legmagasabbtól a legalacsonyabbig.

4. példa: Hibaesemények lekérése egy adott eseménynaplóból

Ez a példa hibaeseményeket kap a rendszer eseménynaplójából.

Get-EventLog -LogName System -EntryType Error

Index Time          EntryType   Source  InstanceID Message
----- ----          ---------   ------  ---------- -------
13296 Jan 16 13:53  Error       DCOM    10016 The description for Event ID '10016' in Source...
13291 Jan 16 13:51  Error       DCOM    10016 The description for Event ID '10016' in Source...
13245 Jan 16 11:45  Error       DCOM    10016 The description for Event ID '10016' in Source...
13230 Jan 16 11:07  Error       DCOM    10016 The description for Event ID '10016' in Source...

A Get-EventLog parancsmag a LogName paraméter használatával adja meg a rendszernaplót. Az EntryType paraméter csak a hibaesemények megjelenítésére szűri az eseményeket.

5. példa: Események lekérése eseménynaplóból InstanceId és Forrás értékkel

Ez a példa egy adott InstanceId és forrás rendszernaplójából szerzi be az eseményeket.

Get-EventLog -LogName System -InstanceId 10016 -Source DCOM

Index Time          EntryType  Source  InstanceID  Message
----- ----          ---------  ------  ----------  -------
13245 Jan 16 11:45  Error      DCOM         10016  The description for Event ID '10016' in Source...
13230 Jan 16 11:07  Error      DCOM         10016  The description for Event ID '10016' in Source...
13219 Jan 16 10:00  Error      DCOM         10016  The description for Event ID '10016' in Source...

A Get-EventLog parancsmag a LogName paraméter használatával adja meg a rendszernaplót. Az InstanceID paraméter a megadott példányazonosítóval rendelkező eseményeket választja ki. A Forrás paraméter az eseménytulajdonságot adja meg.

6. példa: Események lekérése több számítógépről

Ez a parancs lekéri az eseményeket a rendszer eseménynaplójából három számítógépen: Server01, Server02 és Server03.

Get-EventLog -LogName System -ComputerName Server01, Server02, Server03

A Get-EventLog parancsmag a LogName paraméter használatával adja meg a rendszernaplót. A ComputerName paraméter egy vesszővel elválasztott sztringgel listázza azokat a számítógépeket, amelyekről le szeretné kapni az eseménynaplókat.

7. példa: Az üzenetben egy adott szót tartalmazó összes esemény lekérése

Ez a parancs lekéri a rendszer eseménynaplójában azokat az eseményeket, amelyek egy adott szót tartalmaznak az esemény üzenetében. Lehetséges, hogy a megadott üzenetparaméter értéke szerepel az üzenet tartalmában, de nem jelenik meg a PowerShell-konzolon.

Get-EventLog -LogName System -Message *description*

Index Time          EntryType   Source       InstanceID   Message
----- ----          ---------   ------       ----------   -------
13821 Jan 17 19:17  Error       DCOM              10016   The description for Event ID '10016'...
13820 Jan 17 19:16  Error       DCOM              10016   The description for Event ID '10016'...
13819 Jan 17 19:08  Error       DCOM              10016   The description for Event ID '10016'...

A Get-EventLog parancsmag a LogName paraméter használatával adja meg a rendszer eseménynaplóját. Az Üzenet paraméter az egyes események üzenetmezőjében keresendő szót adja meg.

8. példa: Esemény tulajdonságértékeinek megjelenítése

Ez a példa bemutatja, hogyan jelenítheti meg az esemény összes tulajdonságát és értékét.

$A = Get-EventLog -LogName System -Newest 1
$A | Select-Object -Property *

EventID            : 10016
MachineName        : localhost
Data               : {}
Index              : 13821
Category           : (0)
CategoryNumber     : 0
EntryType          : Error
Message            : The description for Event ID '10016' in Source 'DCOM'...
Source             : DCOM
ReplacementStrings : {Local,...}
InstanceId         : 10016
TimeGenerated      : 1/17/2019 19:17:23
TimeWritten        : 1/17/2019 19:17:23
UserName           : username
Site               :
Container          :

A Get-EventLog parancsmag a LogName paraméter használatával adja meg a rendszer eseménynaplóját. A Legújabb paraméter a legutóbbi eseményobjektumot választja ki. Az objektum a változóban $A van tárolva. A változóban lévő $A objektumot a rendszer elküldi a folyamatnak a Select-Object parancsmagnak. Select-Object A Tulajdonság paramétert csillag* () használatával választja ki az objektum összes tulajdonságát.

9. példa: Események lekérése eseménynaplóból forrás- és eseményazonosító használatával

Ez a példa egy megadott forrás- és eseményazonosító eseményeit kéri le.

Get-EventLog -LogName Application -Source Outlook | Where-Object {$_.EventID -eq 63} |
              Select-Object -Property Source, EventID, InstanceId, Message

Source   EventID   InstanceId   Message
------   -------   ----------   -------
Outlook       63   1073741887   The Exchange web service request succeeded.
Outlook       63   1073741887   Outlook detected a change notification.
Outlook       63   1073741887   The Exchange web service request succeeded.

A Get-EventLog parancsmag a LogName paraméter használatával adja meg az alkalmazás eseménynaplóját. A Forrás paraméter megadja az alkalmazás nevét, az Outlookot. A rendszer elküldi az objektumokat a folyamatnak a Where-Object parancsmagnak. A folyamat minden objektumához a Where-Object parancsmag a változóval $_.EventID hasonlítja össze az Eseményazonosító tulajdonságot a megadott értékkel. A rendszer elküldi az objektumokat a folyamatnak a Select-Object parancsmagnak. Select-Object A Tulajdonság paraméter használatával válassza ki a PowerShell-konzolon megjelenítendő tulajdonságokat.

10. példa: Események lekérése és csoportosítás tulajdonság szerint

Get-EventLog -LogName System -UserName NT* | Group-Object -Property UserName -NoElement |
              Select-Object -Property Count, Name

Count  Name
-----  ----
6031   NT AUTHORITY\SYSTEM
  42   NT AUTHORITY\LOCAL SERVICE
   4   NT AUTHORITY\NETWORK SERVICE

A Get-EventLog parancsmag a LogName paraméter használatával adja meg a rendszernaplót. A UserName paraméter tartalmazza a csillag (*) helyettesítő karaktert a felhasználónév egy részének megadásához. Az eseményobjektumok le lesznek küldve a folyamatról a Group-Object parancsmagnak. Group-Object A Tulajdonság paraméter használatával adja meg, hogy a UserName tulajdonság használatával csoportosítsa az objektumokat, és megszámolja az egyes felhasználónevek objektumainak számát. A NoElement paraméter eltávolítja a csoporttagokat a kimenetből. A rendszer elküldi az objektumokat a folyamatnak a Select-Object parancsmagnak. Select-Object A Tulajdonság paraméter használatával válassza ki a PowerShell-konzolon megjelenítendő tulajdonságokat.

11. példa: Adott dátum és időtartomány során történt események lekérése

Ez a példa hibaeseményeket kér le a rendszer eseménynaplójából egy megadott dátumra és időtartományra vonatkozóan. A Before és After paraméterek megszúrják a dátumot és az időtartományt, de nem szerepelnek a kimenetben.

$Begin = Get-Date -Date '1/17/2019 08:00:00'
$End = Get-Date -Date '1/17/2019 17:00:00'
Get-EventLog -LogName System -EntryType Error -After $Begin -Before $End

Index Time          EntryType   Source   InstanceID  Message
----- ----          ---------   ------   ----------  -------
13821 Jan 17 13:40  Error       DCOM          10016  The description for Event ID...
13820 Jan 17 13:11  Error       DCOM          10016  The description for Event ID...
...
12372 Jan 17 10:08  Error       DCOM          10016  The description for Event ID...
12371 Jan 17 09:04  Error       DCOM          10016  The description for Event ID...

A Get-Date parancsmag a Date paraméterrel adja meg a dátumot és az időt. A DateTime-objektumok a változókban és $End a $Begin változókban vannak tárolva. A Get-EventLog parancsmag a LogName paraméter használatával adja meg a rendszernaplót. Az EntryType paraméter a hibaesemény típusát adja meg. A dátumot és az időtartományt az After paraméter és $Begin a változó, valamint a Before paraméter és $End a változó állítja be.

Paraméterek

-After

Lekéri a megadott dátum és idő után történt eseményeket. Az After paraméter dátuma és ideje ki van zárva a kimenetből. Adjon meg egy DateTime-objektumot , például a Get-Date parancsmag által visszaadott értéket.

Type:DateTime
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AsBaseObject

Azt jelzi, hogy ez a parancsmag egy standard System.Diagnostics.EventLogEntry objektumot ad vissza minden eseményhez. A paraméter Get-EventLog nélkül egy kiterjesztett PSObject objektumot ad vissza további EventLogName, Source és InstanceId tulajdonságokkal.

A paraméter hatásának megtekintéséhez az eseményeket a Get-Member parancsmagba kell csöveznie, és meg kell vizsgálnia az eredmény TypeName értékét.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AsString

Azt jelzi, hogy ez a parancsmag sztringek helyett sztringként adja vissza a kimenetet.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Before

Lekéri a megadott dátum és idő előtt történt eseményeket. Az Before paraméter dátuma és ideje ki van zárva a kimenetből. Adjon meg egy DateTime-objektumot , például a Get-Date parancsmag által visszaadott értéket.

Type:DateTime
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Ez a paraméter egy távoli számítógép NetBIOS-nevét, IP-címét vagy teljes tartománynevét (FQDN) adja meg.

Ha a ComputerName paraméter nincs megadva, Get-EventLog az alapértelmezés a helyi számítógép lesz. A paraméter a helyi számítógép megadásához egy pont (.) értéket is elfogad.

A ComputerName paraméter nem támaszkodik a Windows PowerShell-újraküldésre. A ComputerName paraméterrel akkor is használhatóGet-EventLog, ha a számítógép nincs távoli parancsok futtatására konfigurálva.

Type:String[]
Aliases:Cn
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EntryType

Sztringtömbként megadja a parancsmag által lekért események bejegyzéstípusát.

A paraméter elfogadható értékei a következők:

  • Hiba
  • Tájékoztatás
  • FailureAudit
  • SuccessAudit
  • Figyelmeztetés
Type:String[]
Aliases:ET
Accepted values:Error, Information, FailureAudit, SuccessAudit, Warning
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Index

Megadja az eseménynaplóból lekérendő indexértékeket. A paraméter egy vesszővel tagolt értéksztringet fogad el.

Type:Int32[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InstanceId

Megadja az eseménynaplóból lekérendő példányazonosítókat. A paraméter egy vesszővel tagolt értéksztringet fogad el.

Type:Int64[]
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-List

Megjeleníti a számítógépen található eseménynaplók listáját.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LogName

Egy eseménynapló nevét adja meg. A naplónevek megkereséséhez használja a következőt Get-EventLog -List: . A helyettesítő karakterek használata engedélyezett. Ez a paraméter kötelező.

Type:String
Aliases:LN
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:True

-Message

Egy sztringet ad meg az eseményüzenetben. Ezzel a paramétersel bizonyos szavakat vagy kifejezéseket tartalmazó üzeneteket kereshet. Helyettesítő karakterek használata engedélyezett.

Type:String
Aliases:MSG
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Newest

A legújabb eseményekkel kezdődik, és a megadott számú eseményt kapja meg. Az események száma például kötelező -Newest 100. A visszaadott események maximális számát adja meg.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Source

Sztringtömbként megadja a parancsmag által lekért naplóba írt forrásokat. Helyettesítő karakterek használata engedélyezett.

Type:String[]
Aliases:ABO
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-UserName

Sztringtömbként megadja az eseményekhez társított felhasználóneveket. Adjon meg neveket vagy névmintákat, például User01: , User*vagy Domain01\User*. Helyettesítő karakterek használata engedélyezett.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

Bevitelek

None

A bemenő adatokat nem lehet becsúszni.Get-EventLog

Kimenetek

System.Diagnostics.EventLogEntry. System.Diagnostics.EventLog. System.String

Ha a LogName paraméter meg van adva, a kimenet System.Diagnostics.EventLogEntry objektumok gyűjteménye.

Ha csak a List paraméter van megadva, a kimenet System.Diagnostics.EventLog-objektumok gyűjteménye.

Ha a List és az AsString paraméterek is meg vannak adva, a kimenet System.String-objektumok gyűjteménye.

Jegyzetek

A parancsmagok Get-EventLogGet-WinEvent nem támogatottak a Windows előtelepítési környezetében (Windows PE).