2016-09-21 4 views
0

Пытается создать СЕВЕРНОСТЬ СОБЫТИЙ СЕРВЕРА, чтобы захватить события_событий xml_deadlock_report в файл для последующего анализа со следующим утверждением;расширенных событий заблокирован отчет процесса отсутствует в sys.dm_xe_objects

CREATE EVENT SESSION [blocked_process] ON SERVER 
ADD EVENT sqlserver.blocked_process_report(
    ACTION(sqlserver.client_app_name, 
      sqlserver.client_hostname, 
      sqlserver.database_name)) , 
ADD EVENT sqlserver.xml_deadlock_report (
    ACTION(sqlserver.client_app_name, 
      sqlserver.client_hostname, 
      sqlserver.database_name)) 
ADD TARGET package0.asynchronous_file_target 
(SET filename = N'c:\temp\XEventSessions\blocked_process.xel', 
    metadatafile = N'c:\temp\XEventSessions\blocked_process.xem', 
    max_file_size=(65536), 
    max_rollover_files=5) 
WITH (MAX_DISPATCH_LATENCY = 5SECONDS) 

Принять следующую ошибку, попробуйте выполнить это утверждение;

Msg 25623, уровень 16, состояние 1, строка 1 Имя события, "sqlserver.blocked_process_report", является недействительным, или объект не может быть найден **

запрос в имени порядок sys.dm_xe_objects

SELECT * FROM sys.dm_xe_objects порядке по имени;

Идет из binary_data в boolean, no "blocked_process_report" найдено, следовательно, ошибка.

Текущая версия: Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64) 28 июня 2012 г. 08:36:30 Авторское право (c) Microsoft Corporation Express Edition (64-разрядная версия) для Windows NT 6.1 (сборка 7601) : Пакет обновления 1)

Я вижу другие ссылки на вопросы относительно этого отсутствующего события, но нет ответов.

Что я делаю неправильно?

+1

проверить комментарии по этой ссылке: https: //www.brentozar.com/archive/2014/03/extended-events-doesnt-hard/ – TheGameiswar

ответ

1

К сожалению, blocked_process_report был добавлен в качестве отслеживаемой расширенного события в SQL Server 2012.

Поскольку расширенный мастер событий (ы) не были добавлены до SQL Server 2012, я хотел бы использовать следующий запрос для просмотра доступные расширенные события:

SELECT * 
FROM sys.dm_xe_objects AS Events 
WHERE Events.object_type = 'event' AND Events.name LIKE '%blocked%' 
ORDER BY Events.name; 

Или еще лучше прочитать this ИСКЛЮЧИТЕЛЬНО хорошую статью Джонатана Kehayias.