Расширенные события не захватывают запросы Entity Framework (чтение / обновление)

Я добавил событие Extended для отслеживания вызовов sql, что замедляет работу моей системы, что приводит к исключениям тайм-аута и другим

CREATE EVENT SESSION [longrunning_statements] ON SERVER 
      ADD EVENT sqlserver.sql_statement_completed(
WHERE ([duration]>(2000000) AND [database_id]=(9)))
      ADD TARGET package0.event_file(SET filename=N'c:\capture\xe_longrunning_statement.xel',metadatafile=N'c:\capture\xe_longrunning_statement.xem')
       WITH (MAX_MEMORY=4096 KB,EVENT_RETENTION_MODE=ALLOW_SINGLE_EVENT_LOSS,MAX_DISPATCH_LATENCY=30 SECONDS,MAX_EVENT_SIZE=0 KB,MEMORY_PARTITION_MODE=NONE,TRACK_CAUSALITY=OFF,STARTUP_STATE=OFF)
 GO

Но я заметил, что он не регистрирует обновления SQL Server / запросы на чтение / вызовы процедур из Entity Framework, а только регистрирует мои SQL-запросы, запущенные с использованием SSMS.

Любые идеи приветствуются

ОБНОВИТЬ:

Я использую EF6.1, который, я думаю, использовал пакеты для сохранения данных.

1 ответ

Вместо того, чтобы пытаться захватить sqlserver.sql_statement_completed Я бы захватил sqlserver.sql_batch_completed а также sqlserver.rpc_completed для приложений /API выданных запросов / хранимых процедур.

Если это не работает, то удалите фильтры (или, по крайней мере, duration Фильтр (как предлагает Андрей в комментариях), вероятно, даст нам больше понимания того, почему запросы не фиксируются.

Другие вопросы по тегам