Get-WinEvent
Obtient les événements à partir des journaux des événements et des fichiers journaux de suivi d'événements sur les ordinateurs locaux et distants.
Syntaxe
GetLogSet (Par défaut)
Get-WinEvent
[[-LogName] <String[]>]
[-MaxEvents <Int64>]
[-ComputerName <String>]
[-Credential <PSCredential>]
[-FilterXPath <String>]
[-Force]
[-Oldest]
[<CommonParameters>]
ListLogSet
Get-WinEvent
[-ListLog] <String[]>
[-ComputerName <String>]
[-Credential <PSCredential>]
[-Force]
[<CommonParameters>]
ListProviderSet
Get-WinEvent
[-ListProvider] <String[]>
[-ComputerName <String>]
[-Credential <PSCredential>]
[<CommonParameters>]
GetProviderSet
Get-WinEvent
[-ProviderName] <String[]>
[-MaxEvents <Int64>]
[-ComputerName <String>]
[-Credential <PSCredential>]
[-FilterXPath <String>]
[-Force]
[-Oldest]
[<CommonParameters>]
FileSet
Get-WinEvent
[-Path] <String[]>
[-MaxEvents <Int64>]
[-Credential <PSCredential>]
[-FilterXPath <String>]
[-Oldest]
[<CommonParameters>]
HashQuerySet
Get-WinEvent
[-FilterHashtable] <Hashtable[]>
[-MaxEvents <Int64>]
[-ComputerName <String>]
[-Credential <PSCredential>]
[-Force]
[-Oldest]
[<CommonParameters>]
XmlQuerySet
Get-WinEvent
[-FilterXml] <XmlDocument>
[-MaxEvents <Int64>]
[-ComputerName <String>]
[-Credential <PSCredential>]
[-Oldest]
[<CommonParameters>]
Description
Cette applet de commande est disponible uniquement sur la plateforme Windows.
L’applet de commande Get-WinEvent retourne les informations d’événement dans l’ordre du plus récent au plus ancien.
Get-WinEvent répertorie les journaux des événements et les fournisseurs de journaux d’événements. Pour interrompre la commande, appuyez sur Ctrl+C. Vous pouvez obtenir des événements à partir des journaux sélectionnés ou des journaux générés par les fournisseurs d’événements sélectionnés. Vous pouvez également combiner des événements à partir de plusieurs sources dans une seule commande.
Get-WinEvent vous permet de filtrer les événements à l’aide de requêtes XPath, de requêtes XML structurées et de requêtes de table de hachage.
Si vous n’exécutez pas PowerShell en tant qu’administrateur, vous pouvez voir des messages d’erreur que vous ne pouvez pas récupérer d’informations sur un journal.
Exemples
Exemple 1 : Obtenir tous les journaux d’activité d’un ordinateur local
Cette commande obtient tous les journaux d’événements sur l’ordinateur local. Les journaux sont répertoriés dans l’ordre dans lequel Get-WinEvent les obtient. Les journaux classiques sont récupérés en premier, suivis des nouveaux journaux d’événements Windows.
Il est possible qu’un journal RecordCount soit null, qui est vide ou zéro.
Get-WinEvent -ListLog *
LogMode MaximumSizeInBytes RecordCount LogName
------- ------------------ ----------- -------
Circular 15532032 14500 Application
Circular 1052672 117 Azure Information Protection
Circular 1052672 3015 CxAudioSvcLog
Circular 20971520 ForwardedEvents
Circular 20971520 0 HardwareEvents
L’applet de commande Get-WinEvent obtient des informations de journal à partir de l’ordinateur. Le paramètre ListLog utilise le caractère générique astérisque (*) pour afficher des informations sur chaque journal.
Exemple 2 : Obtenir le journal d’installation classique
Cette commande obtient un objet
Get-WinEvent -ListLog Setup | Format-List -Property *
FileSize : 69632
IsLogFull : False
LastAccessTime : 3/13/2019 09:41:46
LastWriteTime : 3/13/2019 09:41:46
OldestRecordNumber : 1
RecordCount : 23
LogName : Setup
LogType : Operational
LogIsolation : Application
IsEnabled : True
IsClassicLog : False
SecurityDescriptor : O:BAG:SYD: ...
LogFilePath : %SystemRoot%\System32\Winevt\Logs\Setup.evtx
MaximumSizeInBytes : 1052672
LogMode : Circular
OwningProviderName : Microsoft-Windows-Eventlog
ProviderNames : {Microsoft-Windows-WUSA, Microsoft-Windows-ActionQueue...
ProviderLevel :
ProviderKeywords :
ProviderBufferSize : 64
ProviderMinimumNumberOfBuffers : 0
ProviderMaximumNumberOfBuffers : 64
ProviderLatency : 1000
ProviderControlGuid :
L’applet de commande Format-List de commande.
Exemple 3 : Configurer le journal de sécurité classique
Cette commande obtient un objet EventLogConfiguration qui représente le journal de sécurité classique. L’objet est ensuite utilisé pour configurer les paramètres du journal, tels que la taille maximale du fichier, le chemin d’accès au fichier et si le journal est activé.
$log = Get-WinEvent -ListLog Security
$log.MaximumSizeInBytes = 1gb
try{
$log.SaveChanges()
Get-WinEvent -ListLog Security | Format-List -Property *
}catch [System.UnauthorizedAccessException]{
$ErrMsg = 'You do not have permission to configure this log!'
$ErrMsg += ' Try running this script with administrator privileges. '
$ErrMsg += $_.Exception.Message
Write-Error $ErrMsg
}
FileSize : 69632
IsLogFull : False
LastAccessTime : 3/13/2019 09:41:46
LastWriteTime : 3/13/2019 09:41:46
OldestRecordNumber : 1
RecordCount : 23
LogName : Security
LogType : Administrative
LogIsolation : Custom
IsEnabled : True
IsClassicLog : True
SecurityDescriptor : O:BAG:SYD: ...
LogFilePath : %SystemRoot%\System32\Winevt\Logs\Security.evtx
MaximumSizeInBytes : 1073741824
LogMode : Circular
OwningProviderName :
ProviderNames : {Microsoft-Windows-WUSA, Microsoft-Windows-ActionQueue...
ProviderLevel :
ProviderKeywords :
ProviderBufferSize : 64
ProviderMinimumNumberOfBuffers : 0
ProviderMaximumNumberOfBuffers : 64
ProviderLatency : 1000
ProviderControlGuid :
L’applet Get-WinEvent de commande utilise le paramètre ListLog pour spécifier le journal de sécurité . L’objet est enregistré dans une variable. La propriété MaximumSizeInBytes est définie sur 1 gigaoctet sur l’objet. La méthode SaveChanges est appelée pour envoyer (push) la modification au système à l’intérieur d’un bloc try pour gérer les violations d’accès. L’applet Get-WinEvent de commande est appelée à nouveau dans le journal de sécurité et redirigée vers l’applet Format-List de commande pour vérifier que la propriété MaximumSizeInBytes a été enregistrée sur l’ordinateur.
Exemple 4 : Obtenir les journaux des événements à partir d’un serveur
Cette commande obtient uniquement les journaux des événements sur l’ordinateur local qui contient des événements. Il est possible que le RecordCount d’un journal soit null ou zéro. L’exemple utilise la variable $_. Pour plus d’informations, consultez à propos des variables automatiques.
Get-WinEvent -ListLog * -ComputerName localhost | Where-Object { $_.RecordCount }
LogMode MaximumSizeInBytes RecordCount LogName
------- ------------------ ----------- -------
Circular 15532032 14546 Application
Circular 1052672 117 Azure Information Protection
Circular 1052672 2990 CxAudioSvcLog
Circular 1052672 9 MSFTVPN Setup
Circular 1052672 282 OAlerts
L’applet de commande Get-WinEvent obtient des informations de journal à partir de l’ordinateur. Le paramètre ListLog utilise le caractère générique astérisque (*) pour afficher des informations sur chaque journal. Le paramètre ComputerName spécifie d’obtenir les journaux à partir de l’ordinateur local, localhost. Les objets sont envoyés au pipeline à l’applet de commande Where-Object.
Where-Object utilise $_.RecordCount pour retourner uniquement les journaux contenant des données.
$_ est une variable qui représente l’objet actuel dans le pipeline.
RecordCount est une propriété de l’objet avec une valeur non null.
Exemple 5 : Obtenir les journaux des événements à partir de plusieurs serveurs
Cet exemple obtient des objets qui représentent les journaux d’événements application sur trois ordinateurs : Server01, Server02 et Server03. Le mot clé foreach est utilisé, car le paramètre ComputerName n’accepte qu’une seule valeur. Pour plus d’informations, consultez about_Foreach.
$S = 'Server01', 'Server02', 'Server03'
foreach ($Server in $S) {
Get-WinEvent -ListLog Application -ComputerName $Server |
Select-Object LogMode, MaximumSizeInBytes, RecordCount, LogName,
@{Name='ComputerName'; Expression={$Server}} |
Format-Table -AutoSize
}
LogMode MaximumSizeInBytes RecordCount LogName ComputerName
------- ------------------ ----------- ------- ------------
Circular 15532032 14577 Application Server01
Circular 15532032 9689 Application Server02
Circular 15532032 5309 Application Server03
La variable $S stocke les noms trois serveurs : Server01, Server02et Server03. L’instruction foreach utilise une boucle pour traiter chaque serveur, ($Server in $S). Le bloc de script dans les accolades ({ }) exécute la commande Get-WinEvent. Le paramètre $Server pour obtenir des informations de journal à partir de chaque serveur.
Les objets sont envoyés au pipeline à l’applet de commande Select-Object.
Select-Object obtient les propriétés LogMode, MaximumSizeInBytes, RecordCount, LogName, et utilise une expression calculée pour afficher l'ComputerName à l’aide de la variable $Server. Les objets sont envoyés au pipeline à l’applet de commande Format-Table pour afficher la sortie dans la console PowerShell. Le paramètre AutoSize met en forme la sortie pour qu’elle corresponde à l’écran.
Exemple 6 : Obtenir des fournisseurs de journaux d’événements et des noms de journaux
Cette commande obtient les fournisseurs de journaux d’événements et les journaux dans lesquels ils écrivent.
Get-WinEvent -ListProvider *
Name : .NET Runtime
LogLinks : {Application}
Opcodes : {}
Tasks : {}
Name : .NET Runtime Optimization Service
LogLinks : {Application}
Opcodes : {}
Tasks : {}
L’applet de commande Get-WinEvent obtient des informations de journal à partir de l’ordinateur. Le paramètre ListProvider
Exemple 7 : Obtenir tous les fournisseurs de journaux d’événements qui écrivent dans un journal spécifique
Cette commande obtient tous les fournisseurs qui écrivent dans le journal application.
(Get-WinEvent -ListLog Application).ProviderNames
.NET Runtime
.NET Runtime Optimization Service
Application
Application Error
Application Hang
Application Management
L’applet de commande Get-WinEvent obtient des informations de journal à partir de l’ordinateur. Le paramètre ListLog
Exemple 8 : Obtenir des noms de fournisseurs de journaux d’événements qui contiennent une chaîne spécifique
Cette commande obtient les fournisseurs de journaux d’événements avec des noms qui incluent une chaîne spécifique dans le nom du fournisseur.
Get-WinEvent -ListProvider *Policy*
Name : Group Policy Applications
LogLinks : {Application}
Opcodes : {}
Tasks : {}
Name : Group Policy Client
LogLinks : {Application}
Opcodes : {}
Tasks : {}
Name : Group Policy Data Sources
LogLinks : {Application}
Opcodes : {}
Tasks : {}
L’applet de commande Get-WinEvent obtient des informations de journal à partir de l’ordinateur. Le paramètre ListProvider
Exemple 9 : Obtenir les ID d’événement générés par le fournisseur d’événements
Cette commande répertorie les ID d’événement générés par le fournisseur d’événements Microsoft-Windows-GroupPolicy, ainsi que la description de l’événement.
(Get-WinEvent -ListProvider Microsoft-Windows-GroupPolicy).Events | Format-Table Id, Description
Id Description
-- -----------
1500 The Group Policy settings for the computer were processed successfully...
1501 The Group Policy settings for the user were processed successfully...
4115 Group Policy Service started.
4116 Started the Group Policy service initialization phase.
4117 Group Policy Session started.
L’applet de commande Get-WinEvent obtient des informations de journal à partir de l’ordinateur. Le paramètre ListProvider Format-Table.
Format-Table affiche l’ID de et Description des objets d’événement.
Exemple 10 : Obtenir des informations de journal à partir des propriétés de l’objet d’événement
Cet exemple montre comment obtenir des informations sur le contenu d’un journal à l’aide de propriétés d’objet d’événement. Les objets d’événement sont stockés dans une variable, puis regroupés et comptés par ID d’événement et niveau.
$Event = Get-WinEvent -LogName 'Windows PowerShell'
$Event.Count
$Event | Group-Object -Property Id -NoElement | Sort-Object -Property Count -Descending
$Event | Group-Object -Property LevelDisplayName -NoElement
195
Count Name
----- ----
147 600
22 400
21 601
3 403
2 103
Count Name
----- ----
2 Warning
193 Information
L’applet de commande $Event. La propriété Count d’affiche $Eventle nombre total d’événements enregistrés.
La variable $Event est envoyée au pipeline à l’applet de commande Group-Object.
Group-Object utilise le paramètre Property pour spécifier la propriété Id et compte les objets par la valeur ID d’événement. Le paramètre NoElement supprime d’autres propriétés de la sortie des objets. Les objets groupés sont envoyés au pipeline à l’applet de commande Sort-Object.
La variable $Event est envoyée au pipeline à l’applet de commande Group-Object.
Group-Object utilise le paramètre Property pour spécifier la propriété LevelDisplayName et compte les objets par LevelDisplayName. Les objets sont regroupés par les niveaux tels que d’avertissement et Informations.
Le paramètre NoElement supprime d’autres propriétés de la sortie. Dans la sortie, la colonne count
Exemple 11 : Obtenir les événements d’erreur qui ont une chaîne spécifiée dans leur nom
Cet exemple utilise une chaîne séparée par des virgules de noms de journaux. La sortie est regroupée par le niveau tel que l’erreur ou l’avertissement et le nom du journal.
Get-WinEvent -LogName *PowerShell*, Microsoft-Windows-Kernel-WHEA* |
Group-Object -Property LevelDisplayName, LogName -NoElement |
Format-Table -AutoSize
Count Name
----- ----
1 Error, PowerShellCore/Operational
26 Information, Microsoft-Windows-Kernel-WHEA/Operational
488 Information, Microsoft-Windows-PowerShell/Operational
77 Information, PowerShellCore/Operational
9835 Information, Windows PowerShell
19 Verbose, PowerShellCore/Operational
444 Warning, Microsoft-Windows-PowerShell/Operational
512 Warning, PowerShellCore/Operational
L’applet de commande Get-WinEvent obtient des informations de journal à partir de l’ordinateur. Le paramètre LogName utilise une chaîne séparée par des virgules avec le caractère générique astérisque (*) pour spécifier les noms de journal. Les objets sont envoyés au pipeline à l’applet de commande Group-Object. Format-Table.
Format-Table utilise le paramètre AutoSize pour mettre en forme les colonnes. La colonne Count contient le nombre total de chaque événement. La colonne
Exemple 12 : Obtenir des événements à partir d’un journal des événements archivé
Get-WinEvent pouvez obtenir des informations sur les événements à partir des fichiers journaux enregistrés. Cet exemple utilise un journal PowerShell archivé stocké sur l’ordinateur local.
Get-WinEvent -Path 'C:\Test\Windows PowerShell.evtx'
ProviderName: PowerShell
TimeCreated Id LevelDisplayName Message
----------- -- ---------------- -------
3/15/2019 13:54:13 403 Information Engine state is changed from Available to Stopped...
3/15/2019 13:54:13 400 Information Engine state is changed from None to Available...
3/15/2019 13:54:13 600 Information Provider "Variable" is Started...
3/15/2019 13:54:13 600 Information Provider "Function" is Started...
3/15/2019 13:54:13 600 Information Provider "FileSystem" is Started...
L’applet de commande Get-WinEvent obtient des informations de journal à partir de l’ordinateur. Le paramètre Path spécifie le répertoire et le nom du fichier.
Exemple 13 : Obtenir un nombre spécifique d’événements à partir d’un journal des événements archivé
Ces commandes obtiennent un nombre spécifique d’événements à partir d’un journal des événements archivé.
Get-WinEvent a des paramètres qui peuvent obtenir un nombre maximal d’événements ou les événements les plus anciens. Cet exemple utilise un journal PowerShell archivé stocké dans C :\Test\PowerShellCore Operational.evtx.
Get-WinEvent -Path 'C:\Test\PowerShellCore Operational.evtx' -MaxEvents 100
ProviderName: PowerShellCore
TimeCreated Id LevelDisplayName Message
----------- -- ---------------- -------
3/15/2019 09:54:54 4104 Warning Creating Scriptblock text (1 of 1):...
3/15/2019 09:37:13 40962 Information PowerShell console is ready for user input
3/15/2019 07:56:24 4104 Warning Creating Scriptblock text (1 of 1):...
...
3/7/2019 10:53:22 40961 Information PowerShell console is starting up
3/7/2019 10:53:22 8197 Verbose Runspace state changed to Opening
3/7/2019 10:53:22 8195 Verbose Opening RunspacePool
L’applet de commande Get-WinEvent obtient des informations de journal à partir de l’ordinateur. Le paramètre Path spécifie le répertoire et le nom de fichier. Le paramètre MaxEvents spécifie que 100 enregistrements sont affichés, du plus récent au plus ancien.
Exemple 14 : Suivi d’événements pour Windows
Le suivi des événements pour Windows (ETW) écrit des événements dans le journal à mesure que des événements se produisent. Les événements sont stockés dans l’ordre du plus ancien au plus récent. Un fichier ETW archivé est enregistré sous la forme d’un .etl tel que TraceLog.etl.
Les événements sont répertoriés dans l’ordre dans lequel ils sont écrits dans le journal, de sorte que le paramètre le plus ancien est requis.
Get-WinEvent -Path 'C:\Tracing\TraceLog.etl' -Oldest |
Sort-Object -Property TimeCreated -Descending |
Select-Object -First 100
L’applet de commande Get-WinEvent obtient des informations de journal à partir du fichier archivé. Le paramètre Path spécifie le répertoire et le nom du fichier. Le paramètre le plus ancien est utilisé pour générer des événements dans l’ordre dans lequel ils sont écrits, les plus anciens au plus récent. Les objets sont envoyés au pipeline à l’applet de commande Sort-ObjectSort-Object trie les objets dans l’ordre décroissant en fonction de la valeur de la propriété TimeCreated. Les objets sont envoyés au pipeline à l’applet de commande Select-Object qui affiche les 100 événements les plus récents.
Exemple 15 : Obtenir des événements à partir d’un journal de suivi des événements
Cet exemple montre comment obtenir les événements à partir d’un fichier journal de trace d’événements (.etl) et d’un fichier journal Windows PowerShell archivé (.evtx). Vous pouvez combiner plusieurs types de fichiers dans une seule commande.
Étant donné que les fichiers contiennent le même type d’objet .NET Framework, EventLogRecord, vous pouvez les filtrer avec les mêmes propriétés. La commande nécessite le paramètre le plus ancien, car il lit à partir d’un fichier .etl, mais le paramètre le plus ancien s’applique à chaque fichier.
Get-WinEvent -Path 'C:\Tracing\TraceLog.etl', 'C:\Test\Windows PowerShell.evtx' -Oldest |
Where-Object { $_.Id -eq '403' }
L’applet de commande Get-WinEvent obtient les informations de journal des fichiers archivés. Le paramètre Path utilise une liste séparée par des virgules pour spécifier chaque répertoire de fichiers et nom de fichier. Le paramètre le plus ancien est utilisé pour générer des événements dans l’ordre dans lequel ils sont écrits, les plus anciens au plus récent. Les objets sont envoyés au pipeline à l’applet de commande Where-Object.
Where-Object utilise un bloc de script pour rechercher des événements avec un ID de 403. La variable $_ représente l’objet actuel dans le pipeline et Id est la propriété ID d’événement.
Exemple 16 : Filtrer les résultats du journal des événements
Cet exemple montre diverses méthodes pour filtrer et sélectionner des événements dans un journal des événements. Toutes ces commandes obtiennent des événements qui se sont produits au cours des 24 dernières heures à partir du journal des événements Windows PowerShell.
Les méthodes de filtre sont plus efficaces que l’utilisation de l’applet de commande Where-Object. Les filtres sont appliqués à mesure que les objets sont récupérés.
Where-Object récupère tous les objets, puis applique des filtres à tous les objets.
# Using the Where-Object cmdlet:
$Yesterday = (Get-Date) - (New-TimeSpan -Day 1)
Get-WinEvent -LogName 'Windows PowerShell' | Where-Object { $_.TimeCreated -ge $Yesterday }
# Using the FilterHashtable parameter:
$Yesterday = (Get-Date) - (New-TimeSpan -Day 1)
Get-WinEvent -FilterHashtable @{ LogName='Windows PowerShell'; Level=3; StartTime=$Yesterday }
# Using the FilterXML parameter:
$xmlQuery = @'
<QueryList>
<Query Id="0" Path="Windows PowerShell">
<Select Path="System">*[System[(Level=3) and
TimeCreated[timediff(@SystemTime) &lt;= 86400000]]]</Select>
</Query>
</QueryList>
'@
Get-WinEvent -FilterXML $xmlQuery
# Using the FilterXPath parameter:
$XPath = '*[System[Level=3 and TimeCreated[timediff(@SystemTime) &lt;= 86400000]]]'
Get-WinEvent -LogName 'Windows PowerShell' -FilterXPath $XPath
Exemple 17 : Utiliser FilterHashtable pour obtenir des événements à partir du journal des applications
Cet exemple utilise le paramètre
$Date = (Get-Date).AddDays(-2)
Get-WinEvent -FilterHashtable @{ LogName='Application'; StartTime=$Date; Id='1003' }
L’applet de commande Get-Date utilise la méthode AddDays pour obtenir une date de deux jours avant la date actuelle. L’objet date est stocké dans la variable $Date.
L’applet de commande Get-WinEvent obtient des informations de journal. Le paramètre FilterHashtable est utilisé pour filtrer la sortie. La clé $Date. La clé ID de
Exemple 18 : Utiliser FilterHashtable pour obtenir des erreurs d’application
Cet exemple utilise le paramètre FilterHashtable pour rechercher les erreurs d’application Internet Explorer qui se sont produites au cours de la semaine dernière.
$StartTime = (Get-Date).AddDays(-7)
Get-WinEvent -FilterHashtable @{
Logname='Application'
ProviderName='Application Error'
Data='iexplore.exe'
StartTime=$StartTime
}
L’applet de commande $StartTime.
L’applet de commande Get-WinEvent obtient des informations de journal. Le paramètre FilterHashtable est utilisé pour filtrer la sortie. La clé
Exemple 19 : Utiliser SuppressHashFilter pour filtrer les erreurs d’application
Comme l’exemple 16 ci-dessus, cet exemple utilise le paramètre FilterHashtable pour obtenir des événements à partir du journal des applications . Toutefois, nous ajoutons la clé SuppressHashFilter pour filtrer les événements au niveau de l’information .
$Date = (Get-Date).AddDays(-2)
$filter = @{
LogName='Application'
StartTime=$Date
SuppressHashFilter=@{Level=4}
}
Get-WinEvent -FilterHashtable $filter
Dans cet exemple, Get-WinEvent obtient tous les événements du journal des applications pour les deux derniers jours, sauf ceux qui ont un niveau de 4 (informations).
Paramètres
-ComputerName
Spécifie le nom de l’ordinateur que cette applet de commande obtient des événements à partir des journaux d’événements. Tapez le nom NetBIOS, une adresse IP ou le nom de domaine complet (FQDN) de l’ordinateur. La valeur par défaut est l’ordinateur local, localhost. Ce paramètre accepte un seul nom d’ordinateur à la fois.
Pour obtenir les journaux d’événements à partir d’ordinateurs distants, configurez le port de pare-feu du service de journal des événements pour autoriser l’accès à distance.
Cette applet de commande ne s’appuie pas sur la communication à distance PowerShell. Vous pouvez utiliser 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: | Local computer |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Cn |
Jeux de paramètres
GetLogSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
ListLogSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
ListProviderSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
GetProviderSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
HashQuerySet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
XmlQuerySet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Credential
Spécifie un compte d’utilisateur autorisé à effectuer cette action. La valeur par défaut est l’utilisateur actuel.
Tapez un nom d’utilisateur, tel que User01 ou Domain01\User01. Vous pouvez également entrer un objet PSCredential, tel qu’un objet généré par l’applet de commande Get-Credential. Si vous tapez un nom d’utilisateur, vous êtes invité à entrer un mot de passe. Si vous tapez uniquement le nom du paramètre, vous êtes invité à entrer un nom d’utilisateur et un mot de passe.
Propriétés du paramètre
| Type: | PSCredential |
| Valeur par défaut: | Current user |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
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 |
-FilterHashtable
Spécifie une requête au format de table de hachage pour sélectionner des événements dans un ou plusieurs journaux d’événements. La requête contient une table de hachage avec une ou plusieurs paires clé/valeur
Les requêtes de table de hachage ont les règles suivantes :
- Les clés et les valeurs ne respectent pas la casse.
- Les caractères génériques sont valides uniquement dans les valeurs associées aux clés LogName
et ProviderName . - Chaque clé ne peut être répertoriée qu’une seule fois dans chaque table de hachage.
- La valeur Chemin d’accès
prend des chemins d’accès aux fichiers journaux , et . - LesLogName
, Path etProviderName clés peuvent être utilisées dans la même requête. - La clé UserID peut prendre un identificateur de sécurité valide (SID) ou un nom de compte de domaine qui peut être utilisé pour construire un objet System.Security.Principal.NTAccount valide.
- La valeur Data prend les données d’événement dans un champ sans nom. Par exemple, les événements dans les journaux d’événements classiques.
-
<named-data>clé représente un champ de données d’événement nommé.
Quand Get-WinEvent ne peut pas interpréter une paire clé/valeur , elle interprète la clé comme un nom sensible à la casse pour les données d’événement dans l’événement.
Les paires Get-WinEventclé/valeur valides sont les suivantes :
-
=
<String[]>LogName -
ProviderName=
<String[]> -
chemin d’accès=
<String[]> -
mots clés=
<Long[]> - ID de =
<Int32[]> -
niveau=
<Int32[]> -
=
<DateTime>StartTime -
=
<DateTime>EndTime -
=
<SID>UserID -
=
<String[]>de données <named-data>=<String[]>-
SuppressHashFilter=
<Hashtable>
Propriétés du paramètre
| Type: | |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
HashQuerySet
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-FilterXml
Spécifie une requête XML structurée que cette applet de commande sélectionne des événements dans un ou plusieurs journaux d’événements.
Pour générer une requête XML valide, utilisez les fonctionnalités Créer une vue personnalisée et filtrer les fonctionnalités de de journal actuel dans l’Observateur d’événements Windows. Utilisez les éléments de la boîte de dialogue pour créer une requête, puis cliquez sur l’onglet XML pour afficher la requête au format XML. Vous pouvez copier le code XML à partir de l’onglet XML dans la valeur du paramètre de FilterXml. Pour plus d’informations sur les fonctionnalités de l’Observateur d’événements, consultez l’aide de l’Observateur d’événements.
Utilisez une requête XML pour créer une requête complexe qui contient plusieurs instructions XPath. Le format XML vous permet également d’utiliser un élément Supprimer le XML qui exclut les événements de la requête. Pour plus d’informations sur le schéma XML pour les requêtes de journal des événements, consultez La section Schéma de requête et requêtes d’événements XML de la sélection d’événements.
Vous pouvez également créer un élément Suppress à l’aide du paramètre FilterHashtable .
Propriétés du paramètre
| Type: | XmlDocument |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
XmlQuerySet
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-FilterXPath
Spécifie une requête XPath que cette applet de commande sélectionne des événements dans un ou plusieurs journaux d’activité.
Pour plus d’informations sur le langage XPath, consultez référence XPath et la section Filtres de sélection de la sélection d’événements.
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 |
Jeux de paramètres
GetLogSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
GetProviderSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
FileSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Force
Obtient les journaux de débogage et d’analyse, en plus d’autres journaux d’événements. Le paramètre Forcer est nécessaire pour obtenir un journal de débogage ou analytique lorsque la valeur du paramètre Name inclut des caractères génériques.
Par défaut, l’applet de commande Get-WinEvent exclut ces journaux, sauf si vous spécifiez le nom complet d’un journal de débogage ou d’analytique.
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
GetLogSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
ListLogSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
GetProviderSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
HashQuerySet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-ListLog
Spécifie les journaux d’événements. Entrez les noms du journal des événements dans une liste séparée par des virgules. Les caractères génériques sont autorisés. Pour obtenir tous les journaux, utilisez le caractère générique astérisque (*).
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
ListLogSet
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-ListProvider
Spécifie les fournisseurs de journaux d’événements que cette applet de commande obtient. Un fournisseur de journaux d’événements est un programme ou un service qui écrit des événements dans le journal des événements.
Entrez les noms des fournisseurs dans une liste séparée par des virgules. Les caractères génériques sont autorisés. Pour obtenir les fournisseurs de tous les journaux d’événements sur l’ordinateur, utilisez le caractère générique astérisque (*).
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
ListProviderSet
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-LogName
Spécifie les journaux d’événements à partir duquel cette applet de commande obtient des événements. Entrez les noms du journal des événements dans une liste séparée par des virgules. Les caractères génériques sont autorisés. Vous pouvez également diriger les noms de journaux vers l’applet de commande Get-WinEvent.
Remarque
PowerShell ne limite pas la quantité de journaux que vous pouvez demander. Toutefois, l’applet Get-WinEvent de commande interroge l’API Windows qui a une limite de 256. Cela peut compliquer le filtrage de tous vos journaux à la fois. Vous pouvez contourner ce problème à l’aide d’une foreach boucle pour itérer dans chaque journal comme suit : Get-WinEvent -ListLog * | ForEach-Object{ Get-WinEvent -LogName $_.LogName }
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
GetLogSet
| Position: | 0 |
| Obligatoire: | False |
| Valeur du pipeline: | True |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-MaxEvents
Spécifie le nombre maximal d’événements retournés. Entrez un entier tel que 100. La valeur par défaut consiste à renvoyer tous les événements dans les journaux ou les fichiers.
Propriétés du paramètre
| Type: | Int64 |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
GetLogSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
GetProviderSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
FileSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
HashQuerySet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
XmlQuerySet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Oldest
Indiquez que cette applet de commande obtient les événements dans l’ordre le plus ancien. Par défaut, les événements sont retournés dans le premier ordre.
Ce paramètre est nécessaire pour obtenir des événements à partir de .etl et de fichiers .evt et des journaux de débogage et d’analytique. Dans ces fichiers, les événements sont enregistrés dans l’ordre le plus ancien et les événements peuvent être retournés uniquement dans l’ordre le plus ancien.
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
GetLogSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
GetProviderSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
FileSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
HashQuerySet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
XmlQuerySet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Path
Spécifie le chemin d’accès aux fichiers journaux d’événements à partir duquel cette applet de commande obtient des événements. Entrez les chemins d’accès aux fichiers journaux dans une liste séparée par des virgules ou utilisez des caractères génériques pour créer des modèles de chemins d’accès de fichier.
Get-WinEvent prend en charge les fichiers avec les extensions de nom de fichier .evt, .evtxet .etl. Vous pouvez inclure des événements à partir de différents fichiers et types de fichiers dans la même commande.
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: | PSPath |
Jeux de paramètres
FileSet
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-ProviderName
Spécifie, en tant que tableau de chaînes, les fournisseurs de journaux d’événements à partir desquels cette applet de commande obtient des événements. Entrez les noms de fournisseurs dans une liste séparée par des virgules ou utilisez des caractères génériques pour créer des modèles de noms de fournisseur.
Un fournisseur de journaux d’événements est un programme ou un service qui écrit des événements dans le journal des événements. Ce n’est pas un fournisseur PowerShell.
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
GetProviderSet
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | True |
| 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
String
Vous pouvez diriger un LogName (chaîne) vers cette applet de commande.
XmlDocument
Vous pouvez diriger une requête FilterXML vers cette applet de commande.
Hashtable
Vous pouvez diriger une requête FilterHashtable vers cette applet de commande.
Sorties
EventLogConfiguration
Avec le paramètre ListLog , cette applet de commande retourne des objets EventLogConfiguration .
EventLogRecord
Par défaut, cette applet de commande retourne des objets EventLogRecord .
ProviderMetadata
Avec le paramètre ListProvider , cette applet de commande retourne des objets ProviderMetadata .
Notes
Get-WinEvent est conçu pour remplacer l’applet de commande Get-EventLog sur les ordinateurs exécutant Windows Vista et les versions ultérieures de Windows.
Get-EventLog obtient uniquement les événements dans les journaux d’événements classiques.
Get-EventLog est conservé pour des raisons de compatibilité descendante.
Les applets de commande Get-WinEvent et Get-EventLog ne sont pas prises en charge dans Windows Pre-installation Environment (Windows PE).