Просмотр и чтение журнала диагностики экземпляра отказоустойчивого кластера
Все критические ошибки и события предупреждений для библиотеки ресурсов SQL Server записываются в журнал событий Windows. Диагностические сведения, свя��анные с SQL Server, записываемые в журнал, перехватываются системной хранимой процедурой sp_server_diagnostics (Transact-SQL) и записываются в файлы журнала диагностики отказоустойчивого кластера SQL Server (также называемые журналами SQLDIAG).
Перед началом работы выполните следующие действия. Рекомендации, Безопасность
Просмотр журнала диагностики с помощью следующего: SQL Server Management Studio, Transact-SQL
Настройка параметров журнала диагностики с помощью следующего: Transact-SQL
Перед началом работы
Рекомендации
По умолчанию журналы SQLDIAG хранятся в локальной папке LOG в каталоге экземпляра SQL Server, например «C\Program Files\Microsoft SQL Server\MSSQL11.<имя_экземпляра>\MSSQL\LOG», узла-владельца экземпляра отказоустойчивого кластера AlwaysOn (FCI). Размер каждого файла журнала SQLDIAG ограничен 100 МБ. На компьютере сохраняются десять таких файлов журнала, после чего они освобождаются для новых журналов.
В журналах используется формат файлов расширенных событий. Для чтения файлов, созданных расширенными событиями, можно использовать системную функцию sys.fn_xe_file_target_read_file. Возвращается одно событие в каждой строке в формате XML. Выполните запрос к системному представлению для синтаксического анализа XML-данных в виде результирующего набора. Дополнительные сведения см. в разделе sys.fn_xe_file_target_read_file (Transact-SQL).
[Top]
Безопасность
Разрешения
Для запуска fn_xe_file_target_read_file требуется разрешение VIEW SERVER STATE.
Откройте среду SQL Server Management Studio в качестве администратора
[Top]
Использование среды SQL Server Management Studio
Просмотр файлов журнала диагностики:
В меню Файл выберите Открыть, Файл и выберите файл журнала диагностики для просмотра.
События отображаются в виде строк в правой панели, причем по умолчанию показаны только два столбца, name и timestamp.
Это также приводит к активации меню ExtendedEvents.
Для отображения большего числа столбцов перейдите в меню ExtendedEvents и укажите Выбрать столбцы.
Откроется диалоговое окно с доступными столбцами, позволяя выбрать столбцы для отображения.
Можно фильтровать и сортировать данные событий, используя меню ExtendedEvents и выбирая параметр Фильтр.
[Top]
Использование Transact-SQL
Просмотр файлов журнала диагностики:
Для просмотра всех записей в файле журнала SQLDIAG используйте следующий запрос.
SELECT
xml_data.value('(event/@name)[1]','varchar(max)') AS 'Name'
,xml_data.value('(event/@package)[1]','varchar(max)') AS 'Package'
,xml_data.value('(event/@timestamp)[1]','datetime') AS 'Time'
,xml_data.value('(event/data[@name=''state'']/value)[1]','int') AS 'State'
,xml_data.value('(event/data[@name=''state_desc'']/text)[1]','varchar(max)') AS 'State Description'
,xml_data.value('(event/data[@name=''failure_condition_level'']/value)[1]','int') AS 'Failure Conditions'
,xml_data.value('(event/data[@name=''node_name'']/value)[1]','varchar(max)') AS 'Node_Name'
,xml_data.value('(event/data[@name=''instancename'']/value)[1]','varchar(max)') AS 'Instance Name'
,xml_data.value('(event/data[@name=''creation time'']/value)[1]','datetime') AS 'Creation Time'
,xml_data.value('(event/data[@name=''component'']/value)[1]','varchar(max)') AS 'Component'
,xml_data.value('(event/data[@name=''data'']/value)[1]','varchar(max)') AS 'Data'
,xml_data.value('(event/data[@name=''info'']/value)[1]','varchar(max)') AS 'Info'
FROM
( SELECT object_name AS 'event'
,CONVERT(xml,event_data) AS 'xml_data'
FROM sys.fn_xe_file_target_read_file('C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Log\SQLNODE1_MSSQLSERVER_SQLDIAG_0_129936003752530000.xel',NULL,NULL,NULL)
)
AS XEventData
ORDER BY Time;
Примечание |
---|
Можно отфильтровать результаты для определенных компонентов или состояний с помощью предложения WHERE. |
Использование Transact-SQL
Настройка свойств журнала диагностики
Примечание |
---|
Пример этой процедуры см. в подразделе Примеры (Transact-SQL) далее в этом разделе. |
С помощью инструкции языка описания данных DDL ALTER SERVER CONFIGURATION можно запускать или останавливать запись в журнал диагностических данных, полученных с помощью хранимой процедуры sp_server_diagnostics (Transact-SQL), а также задавать такие параметры конфигурации журналов SQLDIAG, как количество переключений файлов журнала, размер файлов журнала и расположение файлов. Дополнительные сведения о синтаксисе см. в разделе Setting diagnostic log options.
Примеры (Transact-SQL)
Настройка параметров журнала диагностики
В примерах этого раздела показана установка значений параметра журнала диагностики.
A.Запуск регистрации диагностических данных в журнале
В следующем примере запускается запись в журнал диагностических данных.
ALTER SERVER CONFIGURATION SET DIAGNOSTICS LOG ON;
Б.Останов регистрации диагностических данных в журнале
В следующем примере запись в журнал диагностических данных прекращается.
ALTER SERVER CONFIGURATION SET DIAGNOSTICS LOG OFF;
В.Задание расположения журналов диагностических данных
В следующем примере для журналов диагностических данных задается расположение по указанному пути к файлам.
ALTER SERVER CONFIGURATION
SET DIAGNOSTICS LOG PATH = 'C:\logs';
Г.Задание максимального размера каждого из журналов диагностики
В следующем примере задан максимальный размер каждого из журналов диагностики, равный 10 мегабайтам.
ALTER SERVER CONFIGURATION
SET DIAGNOSTICS LOG MAX_SIZE = 10 MB;
[Top]
См. также
Основные понятия
Политика отработки отказа для экземпляров отказоустойчивого кластера