Get-SqlErrorLog
Obtient les journaux d’erreurs SQL Server.
Syntax
Get-SqlErrorLog
[-Timespan <TimeSpan>]
[-Before <DateTime>]
[-After <DateTime>]
[-Since <SinceType>]
[-Ascending]
[[-Path] <String[]>]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[<CommonParameters>]
Get-SqlErrorLog
[-Timespan <TimeSpan>]
[-Before <DateTime>]
[-After <DateTime>]
[-Since <SinceType>]
[-Ascending]
[[-ServerInstance] <String[]>]
[-Credential <PSCredential>]
[-ConnectionTimeout <Int32>]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[<CommonParameters>]
Get-SqlErrorLog
[-Timespan <TimeSpan>]
[-Before <DateTime>]
[-After <DateTime>]
[-Since <SinceType>]
[-Ascending]
[-InputObject] <Server[]>
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[<CommonParameters>]
Description
L’applet de commande Get-SqlErrorLog obtient les journaux des erreurs SQL Server.
Cette applet de commande prend en charge les modes d’opération suivants pour obtenir un journal des erreurs :
- Passez la instance du SQL Server.
- Spécifiez le paramètre Path du SQL Server instance.
- Appelez l’applet de commande dans un contexte valide.
Exemples
Exemple 1 : Obtenir tous les journaux générés dans une période spécifique qui ont un mot de recherche
PS C:\> CD SQLSERVER:\SQL\MyServer\MyInstance
PS SQLSERVER:\SQL\MyServer\MyInstance> Get-SqlErrorLog -Since Yesterday | Where-Object { $_.Text -match 'Error' } | Format-Table
Date Source Text ArchiveNo ServerInstance
---- ------ ---- --------- --------------
6/16/2016 6:04:20 PM Logon Error: 17828, Severity: 20, State: 4. 0 MyServer\MyInstance
La première commande remplace le répertoire par le SQL Server instance.
Exemple 2 : Obtenir tous les journaux générés dans un laps de temps spécifique
PS C:\> CD SQLSERVER:\SQL\MyServer\MyInstance
PS SQLSERVER:\SQL\MyServer\MyInstance> Get-SqlErrorLog -Timespan '05:30:00' | Format-Table
Date Source Text
---- ------ ----
6/17/2016 12:00:00 AM spid26s This instance of SQL Server has been using a process ID of 21520 since 6/10/2016 3:56:...
6/16/2016 6:04:20 PM Logon The prelogin packet used to open the connection is structurally invalid; the connectio...
6/16/2016 6:04:20 PM Logon Error: 17828, Severity: 20, State: 4.
La première commande remplace le répertoire par le SQL Server instance.
Exemple 3 : Obtenir tous les journaux générés dans un intervalle de temps spécifique triés par ordre croissant et groupé
PS C:\> CD SQLSERVER:\SQL\MyServer
PS SQLSERVER:\SQL\MyServer> ls | Get-SqlErrorLog -After '2016-05-10' -Before '2016-06-18' -Ascending | ? { $_.Text -match 'Login failed' } | Group-Object -Property ServerInstance
Count Name Group
----- ---- -----
1 MyServer {{ Date = 6/17/2016 2:00:04 AM, Source = Logon, Text = Login failed for user ...
2 MyServer\INST1 {{ Date = 6/10/2016 3:58:46 PM, Source = Logon, Text = Login failed for user
La première commande remplace le répertoire par le SQL Server instance.
Paramètres
-AccessToken
Le jeton d’accès utilisé pour s’authentifier auprès de SQL Server, en guise d’alternative à l’authentification utilisateur/mot de passe ou à l’authentification Windows.
Cela peut être utilisé, par exemple, pour se connecter à et à SQL Azure DB
l’aide d’un Service Principal
ou d’un Managed Identity
.SQL Azure Managed Instance
Le paramètre à utiliser peut être une chaîne représentant le jeton ou un PSAccessToken
objet retourné en exécutant Get-AzAccessToken -ResourceUrl https://database.windows.net
.
Ce paramètre est nouveau dans v22 du module.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-After
Spécifie que cette applet de commande obtient uniquement les journaux d’erreur générés après le délai donné.
Si vous spécifiez le paramètre Before, cette applet de commande obtient tous les journaux d’erreurs générés avant le spécifié.
Ne spécifiez pas ce paramètre si vous envisagez d’utiliser les paramètres Since ou Timespan.
Le format est défini selon les règles de .Net System.DataTime.Parse().
Type: | DateTime |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Ascending
Indique que l’applet de commande trie la collection des journaux d’erreurs par date de journal dans l’ordre croissant. Si vous ne spécifiez pas ce paramètre, l’applet de commande trie les journaux d’erreurs dans l’ordre décroissant.
Lorsque cette applet de commande obtient les journaux d’erreur de plusieurs sources, le tri est appliqué à tous les journaux d’erreurs de la même source. Les journaux que cette applet de commande obtient sont d’abord regroupés par source, puis triés par date de journal.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Before
Spécifie que cette applet de commande obtient uniquement les journaux d’erreur générés avant l’heure donnée.
Si le paramètre After est spécifié, l’applet de commande par défaut est maintenant, ce qui signifie que l’applet de commande obtient tous les journaux d’erreurs générés après ce que vous avez spécifié pour ce paramètre jusqu’à l’heure actuelle.
Ne spécifiez pas de valeur pour ce paramètre si vous envisagez d’utiliser les paramètres Since ou Timespan. Le format est défini selon les règles de .Net System.Datatime.Parse().
Type: | DateTime |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConnectionTimeout
Spécifie le nombre de secondes d’attente d’une connexion serveur avant un échec de délai d’attente. La valeur du délai d'attente doit être un entier compris entre 0 et 65534. Si la valeur 0 est spécifiée, les tentatives de connexion n'expirent pas.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Spécifie un objet PSCredential utilisé pour spécifier les informations d’identification d’une connexion SQL Server autorisée à effectuer cette opération.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Encrypt
Type de chiffrement à utiliser lors de la connexion à SQL Server.
Cette valeur est mappée à la Encrypt
propriété SqlConnectionEncryptOption
sur l’objet SqlConnection du pilote Microsoft.Data.SqlClient.
Dans la version 22 du module, la valeur par défaut est Optional
(pour la compatibilité avec v21). Dans v23+ du module, la valeur par défaut est « Obligatoire », ce qui peut créer une modification cassant pour les scripts existants.
Ce paramètre est nouveau dans v22 du module.
Type: | String |
Accepted values: | Mandatory, Optional, Strict |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HostNameInCertificate
Nom d’hôte à utiliser pour valider le certificat SQL Server TLS/SSL. Vous devez passer ce paramètre si votre SQL Server instance est activé pour Forcer le chiffrement et que vous souhaitez vous connecter à un instance à l’aide d’un nom d’hôte/nom court. Si ce paramètre est omis, le passage du nom de domaine complet (FQDN) à -ServerInstance est nécessaire pour se connecter à un SQL Server instance activé pour forcer le chiffrement.
Ce paramètre est nouveau dans v22 du module.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Spécifie l’objet serveur, sous forme de tableau, de l’instance cible à partir duquel cette applet de commande obtient les journaux.
Type: | Server[] |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Path
Spécifie le chemin d’accès, sous forme de tableau, à la instance de SQL Server sur laquelle cette applet de commande exécute l’opération. Si vous ne spécifiez pas de valeur pour ce paramètre, l’applet de commande utilise l’emplacement de travail actuel.
Type: | String[] |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ServerInstance
Spécifie le nom d’un instance de SQL Server, sous la forme d’un tableau. Pour les instances par défaut, spécifiez uniquement le nom de l’ordinateur : MyComputer. Pour les instances nommées, utilisez le format ComputerName\InstanceName.
Type: | String[] |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Since
Spécifie une abréviation pour le paramètre Timespan.
Ne spécifiez pas ce paramètre si vous envisagez d’utiliser le paramètre After ou Before.
Les valeurs valides pour ce paramètre sont :
- Minuit (obtient tous les journaux générés après minuit)
- Hier (obtient tous les journaux générés au cours des dernières 24 heures).
- LastWeek (obtient tous les journaux générés au cours de la dernière semaine)
- LastMonth (obtient tous les journaux générés au cours du dernier mois)
Type: | SinceType |
Accepted values: | Midnight, Yesterday, LastWeek, LastMonth |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Timespan
Spécifie un objet TimeSpan que cette applet de commande filtre des journaux d’erreurs qui se trouvent en dehors de l’intervalle de temps.
Le format de ce paramètre est d.HH :mm :ss.
Ce paramètre est ignoré si vous utilisez les paramètres Since, After ou Before.
Type: | TimeSpan |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TrustServerCertificate
Indique si le canal sera chiffré tout en contournant la chaîne de certificats pour valider l’approbation.
Dans la version 22 du module, la valeur par défaut est $true
(pour la compatibilité avec v21). Dans v23+ du module, la valeur par défaut est « $false », ce qui peut créer une modification cassant pour les scripts existants.
Ce paramètre est nouveau dans v22 du module.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entrées
System.String[]
Microsoft.SqlServer.Management.Smo.Server[]