Get-EventLog
Obtient les événements dans un journal des événements, ou une liste des journaux d’événements, sur l’ordinateur local ou les ordinateurs distants.
Syntaxe
LogName (Par défaut)
Get-EventLog
[-LogName] <string>
[[-InstanceId] <long[]>]
[-ComputerName <string[]>]
[-Newest <int>]
[-After <datetime>]
[-Before <datetime>]
[-UserName <string[]>]
[-Index <int[]>]
[-EntryType <String[]>]
[-Source <String[]>]
[-Message <String>]
[-AsBaseObject]
[<CommonParameters>]
List
Get-EventLog
[-ComputerName <String[]>]
[-List]
[-AsString]
[<CommonParameters>]
Description
L’applet de commande Get-EventLog obtient des événements et des journaux d’événements à partir d’ordinateurs locaux et distants. Par défaut, Get-EventLog obtient les journaux à partir de l’ordinateur local. Pour obtenir des journaux d’activité à partir d’ordinateurs distants, utilisez le paramètre ComputerName
Vous pouvez utiliser les paramètres Get-EventLog et les valeurs de propriété pour rechercher des événements. L’applet de commande obtient les événements qui correspondent aux valeurs de propriété spécifiées.
Les applets de commande PowerShell qui contiennent le nom EventLog fonctionnent uniquement sur les journaux d’événements classiques Windows, tels que l’application, le système ou la sécurité. Pour obtenir des journaux qui utilisent la technologie du journal des événements Windows dans Windows Vista et les versions ultérieures de Windows, utilisez Get-WinEvent.
Exemples
Exemple 1 : Obtenir les journaux des événements sur l’ordinateur local
Cet exemple montre comment afficher la liste des journaux d’événements disponibles sur l’ordinateur local. Les noms de la colonne Journal sont utilisés avec le paramètre LogName pour spécifier le journal recherché pour les événements.
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
L’applet de commande Get-EventLog utilise le paramètre List pour afficher les journaux disponibles.
Exemple 2 : Obtenir des entrées récentes à partir d’un journal des événements sur l’ordinateur local
Cet exemple obtient les entrées récentes du journal des événements système.
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...
L’applet de commande
Exemple 3 : Rechercher toutes les sources pour un nombre spécifique d’entrées dans un journal des événements
Cet exemple montre comment rechercher toutes les sources incluses dans les 1 000 entrées les plus récentes dans le journal des événements système.
$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
L’applet de commande $Events. Les objets $Events sont envoyés au pipeline à l’applet de commande Group-Object.
Exemple 4 : Obtenir des événements d’erreur à partir d’un journal des événements spécifique
Cet exemple obtient des événements d’erreur à partir du journal des événements système.
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...
L’applet de commande
Exemple 5 : Obtenir des événements à partir d’un journal des événements avec une valeur InstanceId et Source
Cet exemple obtient les événements du journal système pour un InstanceId et une source spécifiques.
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...
L’applet de commande
Exemple 6 : Obtenir des événements à partir de plusieurs ordinateurs
Cette commande obtient les événements du journal des événements système sur trois ordinateurs : Server01, Server02 et Server03.
Get-EventLog -LogName System -ComputerName Server01, Server02, Server03
L’applet de commande
Exemple 7 : Obtenir tous les événements qui incluent un mot spécifique dans le message
Cette commande obtient tous les événements dans le journal des événements système qui contiennent un mot spécifique dans le message de l’événement. Il est possible que votre valeur de Message spécifiée soit incluse dans le contenu du message, mais qu’elle n’est pas affichée sur la console PowerShell.
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'...
L’applet de commande
Exemple 8 : Afficher les valeurs de propriété d’un événement
Cet exemple montre comment afficher toutes les propriétés et valeurs d’un événement.
$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 :
L’applet de commande $A. L’objet de la variable $A est envoyé au pipeline à l’applet de commande Select-Object.
Select-Object utilise le paramètre Property avec un astérisque (*) pour sélectionner toutes les propriétés de l’objet.
Exemple 9 : Obtenir des événements à partir d’un journal des événements à l’aide d’une source et d’un ID d’événement
Cet exemple obtient des événements pour une source et un ID d’événement spécifiés.
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.
L’applet de commande Where-Object. Pour chaque objet du pipeline, l’applet de commande Where-Object utilise la variable $_.EventID pour comparer la propriété ID d’événement à la valeur spécifiée. Les objets sont envoyés au pipeline à l’applet de commande Select-Object.
Select-Object utilise le paramètre Property pour sélectionner les propriétés à afficher dans la console PowerShell.
Exemple 10 : Obtenir des événements et regrouper par une propriété
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
L’applet de commande *) pour spécifier une partie du nom d’utilisateur. Les objets d’événement sont envoyés au pipeline à l’applet de commande Group-Object. Select-Object.
Select-Object utilise le paramètre Property pour sélectionner les propriétés à afficher dans la console PowerShell.
Exemple 11 : Obtenir les événements qui se sont produits pendant une plage de date et d’heure spécifique
Cet exemple obtient les événements d’erreur à partir du journal des événements système pour une plage de date et d’heure spécifiée. Les paramètres Before et After définissent la plage de date et d’heure, mais sont exclus de la sortie.
$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...
L’applet de commande Get-Date utilise le paramètre Date pour spécifier une date et une heure. Les objets DateTime sont stockés dans les variables $Begin et $End. L’applet de commande $Begin et paramètre Before et $End variable.
Paramètres
-After
Obtient les événements qui se sont produits après une date et une heure spécifiées. Les Après date et heure du paramètre sont exclus de la sortie. Entrez un objet DateTime
Propriétés du paramètre
| Type: | DateTime |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
LogName
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-AsBaseObject
Indique que cette applet de commande retourne un objet standard System.Diagnostics.EventLogEntry pour chaque événement. Sans ce paramètre, Get-EventLog retourne un objet PSObject étendu avec des propriétés EventLogName supplémentaires, Sourceet InstanceId.
Pour afficher 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.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
LogName
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-AsString
Indique que cette applet de commande retourne la sortie sous forme de chaînes, au lieu d’objets.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
List
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Before
Obtient les événements qui se sont produits avant une date et une heure spécifiées. La date et l’heure du paramètre Before sont exclues de la sortie. Entrez un objet DateTime
Propriétés du paramètre
| Type: | DateTime |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
LogName
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-ComputerName
Ce paramètre spécifie le nom NetBIOS d’un ordinateur distant, l’adresse IP (Internet Protocol) ou un nom de domaine complet (FQDN).
Si le paramètre ComputerName n’est pas spécifié, Get-EventLog valeurs par défaut sur l’ordinateur local. Le paramètre accepte également un point (.) pour spécifier l’ordinateur local.
Le paramètre ComputerName ne s’appuie pas sur la communication à distance Windows PowerShell. Vous pouvez utiliser Get-EventLog avec le paramètre ComputerName même si votre ordinateur n’est pas configuré pour exécuter des commandes distantes.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Cn |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-EntryType
Spécifie, en tant que tableau de chaînes, le type d’entrée des événements que cette applet de commande obtient.
Les valeurs acceptables pour ce paramètre sont les suivantes :
- Erreur
- Informations
- FailureAudit
- SuccessAudit
- Avertissement
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Valeurs acceptées: | Error, Information, FailureAudit, SuccessAudit, Warning |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | ET |
Jeux de paramètres
LogName
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Index
Spécifie les valeurs d’index à obtenir à partir du journal des événements. Le paramètre accepte une chaîne séparée par des virgules de valeurs.
Propriétés du paramètre
| Type: | int[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
LogName
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-InstanceId
Spécifie les ID d’instance à obtenir à partir du journal des événements. Le paramètre accepte une chaîne séparée par des virgules de valeurs.
Propriétés du paramètre
| Type: | long[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
LogName
| Position: | 1 |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-List
Affiche la liste des journaux d’événements sur l’ordinateur.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
List
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-LogName
Spécifie le nom d’un journal des événements. Pour rechercher les noms de journal, utilisez Get-EventLog -List. Les caractères génériques sont autorisés. Ce paramètre est obligatoire.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
| Alias: | LN |
Jeux de paramètres
LogName
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Message
Spécifie une chaîne dans le message d’événement. Vous pouvez utiliser ce paramètre pour rechercher des messages qui contiennent certains mots ou expressions. Les caractères génériques sont autorisés.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
| Alias: | MSG |
Jeux de paramètres
LogName
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Newest
Commence par les événements les plus récents et obtient le nombre spécifié d’événements. Le nombre d’événements est requis, par exemple -Newest 100. Spécifie le nombre maximal d’événements retournés.
Propriétés du paramètre
| Type: | Int |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
LogName
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Source
Spécifie, sous la forme d’un tableau de chaînes, des sources écrites dans le journal que cette applet de commande obtient. Les caractères génériques sont autorisés.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
| Alias: | ABO |
Jeux de paramètres
LogName
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-UserName
Spécifie, en tant que tableau de chaînes, les noms d’utilisateur associés aux événements. Entrez des noms ou des modèles de noms, tels que User01, User*ou Domain01\User*. Les caractères génériques sont autorisés.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
LogName
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
CommonParameters
Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.
Entrées
None
Vous ne pouvez pas diriger l’entrée vers Get-EventLog.
Sorties
System.Diagnostics.EventLogEntry. System.Diagnostics.EventLog. System.String
Si le paramètre LogName
Si seul le paramètre List
Si les paramètres List et AsString sont spécifiés, la sortie est une collection d’objets System.String.
Notes
Les applets de commande Get-EventLog et Get-WinEvent ne sont pas prises en charge dans l’environnement de préinstallation Windows (Windows PE).