Get-EventLog
Obtient les événements d'un journal des événements ou la liste des journaux des événements présents sur les ordinateurs locaux ou distants.
Syntaxe
Get-EventLog [-AsString] [-ComputerName <string[]>] [-List] [<CommonParameters>]
Get-EventLog [-LogName] <string> [[-InstanceId] <Int64[]>] [-After <DateTime>] [-AsBaseObject] [-Before <DateTime>] [-ComputerName <string[]>] [-EntryType <string[]>] [-Index <Int32[]>] [-Message <string>] [-Newest <int>] [-Source <string[]>] [-UserName <string[]>] [<CommonParameters>]
Description
L'applet de commande Get-EventLog obtient les événements et les journaux des événements présents sur les ordinateurs locaux et distants.
Utilisez les paramètres de Get-EventLog pour rechercher des événements à l'aide de leurs valeurs de propriété. Get-EventLog obtient uniquement les événements qui correspondent à toutes les valeurs de propriété spécifiées.
Les applets de commande contenant le nom EventLog (les applets de commande EventLog) fonctionnent uniquement sur les journaux des événements classiques. Pour obtenir des événements à partir des journaux qui utilisent la technologie Journal des événements Windows sous Windows Vista et les versions ultérieures de Windows, utilisez Get-WinEvent.
Paramètres
-After <DateTime>
Obtient uniquement les événements qui se produisent après la date et l'heure spécifiées. Entrez un objet DateTime (celui retourné par l'applet de commande Get-Date, par exemple).
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-AsBaseObject
Retourne un objet System.Diagnostics.EventLogEntry standard pour chaque événement. Sans ce paramètre, Get-EventLog retourne un objet PsObject étendu avec d'autres propriétés EventLogName, Source et InstanceId.
Pour voir l'effet de ce paramètre, dirigez les événements vers l'applet de commande Get-Member et examinez la valeur TypeName dans le résultat.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
False |
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-AsString
Retourne la sortie sous forme de chaînes au lieu d'objets.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-Before <DateTime>
Obtient uniquement les événements qui se produisent avant la date et l'heure spécifiées. Entrez un objet DateTime (celui retourné par l'applet de commande Get-Date, par exemple).
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-ComputerName <string[]>
Spécifie un ordinateur distant. La valeur par défaut est l'ordinateur local.
Tapez le nom NetBIOS, une adresse IP ou le nom de domaine complet d'un ordinateur distant. Pour spécifier l'ordinateur local, tapez le nom de l'ordinateur, un point (.) ou « localhost ».
Ce paramètre ne s'appuie pas sur la communication à distance Windows PowerShell. Vous pouvez utiliser le paramètre ComputerName de Get-EventLog même si votre ordinateur n'est pas configuré pour exécuter des commandes distantes.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-EntryType <string[]>
Obtient uniquement les événements ayant le type d'entrée spécifié. Les valeurs valides sont Error, Information, FailureAudit, SuccessAudit et Warning. La valeur par défaut est tous les événements.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
All events |
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-Index <Int32[]>
Obtient uniquement les événements ayant les valeurs d'index spécifiées.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
All events |
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-InstanceId <Int64[]>
Obtient uniquement les événements portant les ID d'instance spécifiés.
Obligatoire ? |
false |
Position ? |
2 |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-List
Obtient la liste des journaux des événements présents sur l'ordinateur.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-LogName <string>
Spécifie le journal des événements. Entrez le nom de journal (la valeur de la propriété Log et non LogDisplayName) d'un journal des événements. Les caractères génériques ne sont pas autorisés. Ce paramètre est obligatoire.
Obligatoire ? |
true |
Position ? |
1 |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-Message <string>
Obtient les événements qui comportent la chaîne spécifiée dans leurs messages. Vous pouvez utiliser cette propriété pour rechercher des messages qui contiennent certains mots ou certaines expressions. Les caractères génériques sont autorisés.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
true |
-Newest <int>
Spécifie le nombre maximal d'événements récupérés. Get-EventLog obtient le nombre spécifié d'événements, en commençant par l'événement le plus récent dans le journal.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-Source <string[]>
Obtient les événements qui ont été écrits dans le journal par les sources spécifiées. Les caractères génériques sont autorisés.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
true |
-UserName <string[]>
Obtient uniquement les événements auxquels les noms d'utilisateurs spécifiés sont associés. Entrez les noms ou modèles de nom (User01, User* or Domain01\User*, par exemple). Les caractères génériques sont autorisés.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
true |
<CommonParameters>
Cette applet de commande prend en charge les paramètres courants : -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer et -OutVariable. Pour plus d'informations, consultez about_Commonparameters.
Entrées et sorties
Le type d'entrée est le type des objets que vous pouvez diriger vers l'applet de commande. Le type de retour est le type des objets que l'applet de commande retourne.
Entrées |
Aucun. Vous ne pouvez pas diriger d'entrée vers cette applet de commande. |
Sorties |
System.Diagnostics.EventLogEntry. System.Diagnostics.EventLog. System.String Si le paramètre LogName est spécifié, la sortie est une collection d'objets EventLogEntry (System.Diagnostics.EventLogEntry). Si seul le paramètre List est spécifié, la sortie est une collection d'objets EventLog (System.Diagnostics.EventLog). Si les deux paramètres List et AsString sont spécifiés, la sortie est une collection de chaînes (System.String). |
Exemple 1
C:\PS>get-eventlog -list
Description
-----------
Cette commande affiche des informations à propos des journaux des événements sur l'ordinateur.
Exemple 2
C:\PS>get-eventlog -newest 5 -logname application
Description
-----------
Cette commande affiche les cinq dernières entrées consignées dans le journal des événements de l'application.
Exemple 3
C:\PS>$events = get-eventlog -logname system -newest 1000
C:\PS> $events | group-object -property source -noelement | sort-object -property count -descending
Count Name
----- ----
75 Service Control Manager
12 Print
6 UmrdpService
2 DnsApi
2 DCOM
1 Dhcp
1 TermDD
1 volsnap
Description
-----------
Cet exemple montre comment rechercher toutes les sources qui sont représentées dans les 1 000 dernières entrées du journal des événements système.
La première commande obtient les 1 000 dernières entrées du journal des événements système et les stocke dans la variable $events.
La deuxième commande utilise un opérateur de pipeline (|) pour envoyer les événements de la variable $events à l'applet de commande Group-Object, qui regroupe les entrées en fonction de la valeur de la propriété Source. Cette commande utilise un deuxième opérateur de pipeline pour envoyer les événements regroupés à l'applet de commande Sort-Object, qui les trie dans l'ordre décroissant (la source qui apparaît le plus souvent est répertoriée en premier).
La propriété Source ne concerne que les entrées de journal des événements. Pour consulter toutes les propriétés d'une entrée de journal des événements, dirigez les événements vers l'applet de commande Get-Member.
Exemple 4
C:\PS>get-eventlog -logname System -EntryType Error
Description
-----------
Cette commande obtient uniquement les événements d'erreur du journal des événements système.
Exemple 5
C:\PS>get-eventlog -logname System -instanceID 3221235481 -Source "DCOM"
Description
-----------
Cette commande obtient les événements du journal système qui ont un InstanceID de 3221235481 et une valeur Source de « DCOM ».
Exemple 6
C:\PS>get-eventlog -logname "Windows PowerShell" -computername localhost, Server01, Server02
Description
-----------
Cette commande obtient les événements du journal des événements Windows PowerShell sur trois ordinateurs (Server01, Server02 et l'ordinateur local, appelé « localhost »).
Exemple 7
C:\PS>get-eventlog -logname "Windows PowerShell" -message "*failed*"
Description
-----------
Cette commande obtient tous les événements du journal des événements Windows PowerShell qui ont une valeur de message comportant le mot « échec ».
Exemple 8
C:\PS>$a = get-eventlog -log System -newest 1
C:\PS> $a | format-list -property *
EventID : 7036
MachineName : Server01
Data : {}
Index : 10238
Category : (0)
CategoryNumber : 0
EntryType : Information
Message : The description for Event ID
Source : Service Control Manager
ReplacementStrings : {WinHTTP Web Proxy Auto-Disco
InstanceId : 1073748860
TimeGenerated : 4/11/2008 9:56:05 PM
TimeWritten : 4/11/2008 9:56:05 PM
UserName :
Site :
Container :
Description
-----------
Cet exemple montre comment afficher toutes les valeurs de propriété d'un événement.
La première commande obtient le dernier événement du journal des événements système et l'enregistre dans la variable $a.
La deuxième commande utilise un opérateur de pipeline (|) pour envoyer l'événement de la variable $a à la commande Format-List, qui affiche tous les (*) des propriétés de cet événement.
Exemple 9
C:\PS>get-eventlog -log application -source outlook | where {$_.eventID -eq 34}
Description
-----------
Cette commande obtient les événements du journal des événements de l'application où la source est Outlook et l'ID d'événement est 34. Même si Get-EventLog ne possède pas de paramètre EventID, vous pouvez utiliser l'applet de commande Where-Object pour sélectionner des événements en fonction de la valeur d'une propriété d'événement.
Exemple 10
C:\PS>get-eventlog -log system -username NT* | group-object -property username -noelement | format-table Count, Name -auto
Count Name
----- ----
6031 NT AUTHORITY\SYSTEM
42 NT AUTHORITY\LOCAL SERVICE
4 NT AUTHORITY\NETWORK SERVICE
Description
-----------
Cette commande retourne les événements du journal système regroupés en fonction de la valeur de leur propriété UserName. La commande Get-EventLog utilise le paramètre UserName pour obtenir uniquement les événements dans lesquels le nom d'utilisateur commence par « NT* ».
Exemple 11
C:\PS>$May31 = get-date 5/31/08
C:\PS> $July1 = get-date 7/01/08
C:\PS> get-eventlog -log "Windows PowerShell" -entrytype Error -after $may31 -before $july1
Description
-----------
Cette commande obtient toutes les erreurs du journal des événements Windows PowerShell qui se sont produites en juin 2008.
Voir aussi
Concepts
Get-WinEvent
Clear-EventLog
Limit-EventLog
New-EventLog
Remove-EventLog
Show-EventLog
Write-EventLog
Get-WinEvent