Get-SqlErrorLog
Возвращает журналы ошибок SQL Server.
Синтаксис
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>]
Описание
Командлет Get-SqlErrorLog получает журналы ошибок SQL Server.
Этот командлет поддерживает следующие режимы операции для получения журнала ошибок:
- Передайте экземпляр SQL Server.
- Укажите параметр Path экземпляра SQL Server.
- Вызовите командлет в допустимом контексте.
Примеры
Пример 1. Получение всех журналов, созданных в определенном интервале времени с словом поиска
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
Первая команда изменяет каталог на экземпляр SQL Server.
Пример 2. Получение всех журналов, созданных в определенном интервале времени
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.
Первая команда изменяет каталог на экземпляр SQL Server.
Пример 3. Получение всех журналов, созданных в определенном интервале времени сортировки по возрастанию и группировке
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
Первая команда изменяет каталог на экземпляр SQL Server.
Параметры
-AccessToken
Маркер доступа, используемый для проверки подлинности в SQL Server, в качестве альтернативы пользователю или паролю или проверке подлинности Windows.
Это можно использовать, например, для подключения к SQL Azure DB
и SQL Azure Managed Instance
с помощью Service Principal
или Managed Identity
.
Используемый параметр может быть строкой, представляющей маркер или объект PSAccessToken
, как возвращается при выполнении Get-AzAccessToken -ResourceUrl https://database.windows.net
.
Этот параметр является новым в версии 22 модуля.
Тип: | PSObject |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-After
Указывает, что этот командлет получает только журналы ошибок, созданные после заданного времени.
Если указать параметр "Перед", этот командлет получает все журналы ошибок, созданные до указанного параметра.
Не указывайте этот параметр, если вы планируете использовать параметры "С момента" или "Таймпан".
Формат определяется в соответствии с правилами .NET System.DataTime.Parse().
Тип: | DateTime |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Ascending
Указывает, что командлет сортирует коллекцию журналов ошибок по дате журнала по возрастанию. Если этот параметр не указан, командлет сортирует журналы ошибок в порядке убывания.
Когда этот командлет получает журналы ошибок несколько источников, сортировка применяется ко всем журналам ошибок из одного источника. Журналы, которые получает этот командлет, сначала группируются по источнику, а затем сортируются по дате журнала.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Before
Указывает, что этот командлет получает только журналы ошибок, созданные до заданного времени.
Если задан параметр After, командлет по умолчанию по умолчанию получает все журналы ошибок, созданные после указанного для этого параметра до настоящего времени.
Не указывайте значение для этого параметра, если планируется использовать параметры "С момента" или "Таймпан". Формат определяется в соответствии с правилами .NET System.Datatime.Parse().
Тип: | DateTime |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ConnectionTimeout
Указывает количество секунд ожидания подключения к серверу до сбоя времени ожидания. Значение времени ожидания должно быть целым числом от 0 до 65534. Если задано значение 0, попытки подключения не истекает.
Тип: | Int32 |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Credential
Указывает объект PSCredential, используемый для указания учетных данных для имени входа SQL Server, имеющего разрешение на выполнение этой операции.
Тип: | PSCredential |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Encrypt
Тип шифрования, используемый при подключении к SQL Server.
Это значение сопоставляется со свойством Encrypt
SqlConnectionEncryptOption
в объекте SqlConnection драйвера Microsoft.Data.SqlClient.
В версии 22 модуля по умолчанию используется Optional
(для совместимости с версией 21). В версии 23+ модуля значение по умолчанию будет "Обязательный", которое может создать критическое изменение для существующих скриптов.
Этот параметр является новым в версии 22 модуля.
Тип: | String |
Допустимые значения: | Mandatory, Optional, Strict |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-HostNameInCertificate
Имя узла, используемое при проверке TLS/SSL-сертификата SQL Server. Этот параметр необходимо передать, если экземпляр SQL Server включен для принудительного шифрования и требуется подключиться к экземпляру с помощью имени узла или короткого имени. Если этот параметр опущен, передача полного доменного имени (FQDN) в -ServerInstance необходима для подключения к экземпляру SQL Server, включенного для принудительного шифрования.
Этот параметр является новым в версии 22 модуля.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-InputObject
Указывает объект сервера в виде массива целевого экземпляра, из который этот командлет получает журналы.
Тип: | Server[] |
Position: | 1 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Path
Указывает путь в виде массива к экземпляру SQL Server, на котором выполняется операция. Если значение этого параметра не указано, командлет использует текущее рабочее расположение.
Тип: | String[] |
Position: | 1 |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ProgressAction
Определяет, как PowerShell реагирует на обновления хода выполнения, созданные скриптом, командлетом или поставщиком, например индикаторами хода выполнения, созданными командлетом Write-Progress. Командлет Write-Progress создает индикаторы хода выполнения, показывающие состояние команды.
Тип: | ActionPreference |
Aliases: | proga |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ServerInstance
Указывает имя экземпляра SQL Server в виде массива. Для экземпляров по умолчанию укажите только имя компьютера: MyComputer. Для именованных экземпляров используйте формат ComputerName\InstanceName.
Тип: | String[] |
Position: | 1 |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Since
Указывает аббревиацию параметра Timespan.
Не указывайте этот параметр, если вы планируете использовать параметр After или Before.
Допустимые значения для этого параметра:
- Полночь (получает все журналы, созданные после полуночи)
- Вчера (получает все журналы, созданные за последние 24 часа).
- LastWeek (получает все журналы, созданные на прошлой неделе)
- LastMonth (получает все журналы, созданные в прошлом месяце)
Тип: | SinceType |
Допустимые значения: | Midnight, Yesterday, LastWeek, LastMonth |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Timespan
Указывает объект TimeSpan, который этот командлет фильтрует из журналов ошибок, которые выполняются вне интервала времени.
Формат этого параметра — d.HH:mm:ss.
Этот параметр игнорируется, если вы используете параметры "С момента", "После" или "Перед".
Тип: | TimeSpan |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-TrustServerCertificate
Указывает, будет ли канал зашифрован при обходе цепочки сертификатов для проверки доверия.
В версии 22 модуля по умолчанию используется $true
(для совместимости с версией 21). В версии 23+ модуля значение по умолчанию будет иметь значение "$false", которое может создать критическое изменение для существующих скриптов.
Этот параметр является новым в версии 22 модуля.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
System.String[]
Microsoft.SqlServer.Management.Smo.Server[]