Get-SqlErrorLog
Obtiene los registros de errores de SQL Server.
Sintaxis
Get-SqlErrorLog
[-Timespan <TimeSpan>]
[-Before <DateTime>]
[-After <DateTime>]
[-Since <SinceType>]
[-Ascending]
[[-Path] <String[]>]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-ProgressAction <ActionPreference>]
[<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>]
[-ProgressAction <ActionPreference>]
[<CommonParameters>]
Get-SqlErrorLog
[-Timespan <TimeSpan>]
[-Before <DateTime>]
[-After <DateTime>]
[-Since <SinceType>]
[-Ascending]
[-InputObject] <Server[]>
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-ProgressAction <ActionPreference>]
[<CommonParameters>]
Description
El cmdlet Get-SqlErrorLog obtiene los registros de errores de SQL Server.
Este cmdlet admite los siguientes modos de operación para obtener un registro de errores:
- Pase la instancia de SQL Server.
- Especifique el parámetro Path de la instancia de SQL Server.
- Invoque el cmdlet en un contexto válido.
Ejemplos
Ejemplo 1: Obtener todos los registros generados en un período de tiempo específico que tenga una palabra de búsqueda
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
El primer comando cambia el directorio a la instancia de SQL Server.
Ejemplo 2: Obtener todos los registros generados en un período de tiempo específico
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.
El primer comando cambia el directorio a la instancia de SQL Server.
Ejemplo 3: Obtener todos los registros generados en un período de tiempo específico ordenado ascendente y agrupado
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
El primer comando cambia el directorio a la instancia de SQL Server.
Parámetros
-AccessToken
El token de acceso que se usa para autenticarse en SQL Server, como alternativa a la autenticación de usuario o contraseña de Windows.
Esto se puede usar, por ejemplo, para conectarse a SQL Azure DB
y SQL Azure Managed Instance
mediante un Service Principal
o un Managed Identity
.
El parámetro que se va a usar puede ser una cadena que representa el token o un objeto PSAccessToken
tal como se devuelve mediante la ejecución de Get-AzAccessToken -ResourceUrl https://database.windows.net
.
Este parámetro es nuevo en la versión 22 del módulo.
Tipo: | PSObject |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-After
Especifica que este cmdlet solo obtiene los registros de errores generados después del tiempo especificado.
Si especifica el parámetro Before, este cmdlet obtiene todos los registros de errores generados antes del especificado.
No especifique este parámetro si piensa usar los parámetros Since o Timespan.
El formato se define según las reglas de .Net System.DataTime.Parse().
Tipo: | DateTime |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Ascending
Indica que el cmdlet ordena la colección de registros de errores por la fecha de registro en orden ascendente. Si no especifica este parámetro, el cmdlet ordena los registros de errores en orden descendente.
Cuando este cmdlet obtiene varios orígenes de errores, la ordenación se aplica a todos los registros de errores del mismo origen. Los registros que obtiene este cmdlet se agrupan primero por origen y, a continuación, se ordenan por fecha de registro.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Before
Especifica que este cmdlet solo obtiene los registros de errores generados antes de la hora especificada.
Si se especifica el parámetro After, el cmdlet tiene como valor predeterminado ahora, lo que significa que el cmdlet obtiene todos los registros de errores generados después de lo que especificó para este parámetro hasta el momento actual.
No especifique un valor para este parámetro si piensa usar los parámetros Since o Timespan. El formato se define según las reglas de .Net System.Datatime.Parse().
Tipo: | DateTime |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ConnectionTimeout
Especifica el número de segundos que se deben esperar a una conexión de servidor antes de un error de tiempo de espera. El valor de tiempo de espera debe ser un entero entre 0 y 65534. Si se especifica 0, los intentos de conexión no agoten el tiempo de espera.
Tipo: | Int32 |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Credential
Especifica un objeto PSCredential que se usa para especificar las credenciales de un inicio de sesión de SQL Server que tiene permiso para realizar esta operación.
Tipo: | PSCredential |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Encrypt
Tipo de cifrado que se va a usar al conectarse a SQL Server.
Este valor se asigna a la propiedad Encrypt
SqlConnectionEncryptOption
en el objeto SqlConnection del controlador Microsoft.Data.SqlClient.
En la versión 22 del módulo, el valor predeterminado es Optional
(por compatibilidad con v21). En la versión 23+ del módulo, el valor predeterminado será "Obligatorio", que puede crear un cambio importante para los scripts existentes.
Este parámetro es nuevo en la versión 22 del módulo.
Tipo: | String |
Valores aceptados: | Mandatory, Optional, Strict |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-HostNameInCertificate
Nombre de host que se va a usar para validar el certificado TLS/SSL de SQL Server. Debe pasar este parámetro si la instancia de SQL Server está habilitada para Forzar cifrado y desea conectarse a una instancia mediante el nombre de host o el nombre corto. Si se omite este parámetro, es necesario pasar el nombre de dominio completo (FQDN) a -ServerInstance es necesario para conectarse a una instancia de SQL Server habilitada para Forzar cifrado.
Este parámetro es nuevo en la versión 22 del módulo.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-InputObject
Especifica el objeto de servidor, como una matriz, de la instancia de destino de la que este cmdlet obtiene los registros.
Tipo: | Server[] |
Posición: | 1 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-Path
Especifica la ruta de acceso, como matriz, a la instancia de SQL Server en la que este cmdlet ejecuta la operación. Si no especifica un valor para este parámetro, el cmdlet usa la ubicación de trabajo actual.
Tipo: | String[] |
Posición: | 1 |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ProgressAction
Determina cómo Responde PowerShell a las actualizaciones de progreso generadas por un script, cmdlet o proveedor, como las barras de progreso generadas por el cmdlet Write-Progress. El cmdlet Write-Progress crea barras de progreso que muestran el estado de un comando.
Tipo: | ActionPreference |
Alias: | proga |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ServerInstance
Especifica el nombre de una instancia de SQL Server, como una matriz. Para las instancias predeterminadas, especifique solo el nombre del equipo: MyComputer. Para las instancias con nombre, use el formato NombreDeEquipo\NombreDeInstancia.
Tipo: | String[] |
Posición: | 1 |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-Since
Especifica una abreviatura para el parámetro Timespan.
No especifique este parámetro si piensa usar el parámetro After o Before.
Los valores aceptables para este parámetro son:
- Medianoche (obtiene todos los registros generados después de medianoche)
- Ayer (obtiene todos los registros generados en las últimas 24 horas).
- LastWeek (obtiene todos los registros generados en la última semana)
- LastMonth (obtiene todos los registros generados en el último mes)
Tipo: | SinceType |
Valores aceptados: | Midnight, Yesterday, LastWeek, LastMonth |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Timespan
Especifica un objeto TimeSpan que este cmdlet filtra los registros de errores que hacen fuera del intervalo de tiempo.
El formato de este parámetro es d.HH:mm:ss.
Este parámetro se omite si usa los parámetros Since, After o Before.
Tipo: | TimeSpan |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-TrustServerCertificate
Indica si el canal se cifrará mientras se pasa la cadena de certificados para validar la confianza.
En la versión 22 del módulo, el valor predeterminado es $true
(por compatibilidad con v21). En la versión 23+ del módulo, el valor predeterminado será "$false", que puede crear un cambio importante para los scripts existentes.
Este parámetro es nuevo en la versión 22 del módulo.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
Entradas
System.String[]
Microsoft.SqlServer.Management.Smo.Server[]