Оптимизация производительности SQL Azure. Как найти код, выполняющий запросы «худшего нарушителя»? - PullRequest
0 голосов
/ 05 сентября 2018

Итак, у меня есть база данных SQL Azure, работающая за веб-приложением Asp.NET MVC.

Портал Azure прошел большой путь, и теперь я могу провести некоторый анализ производительности на своем SQL-сервере, чтобы выяснить, какие запросы являются худшими нарушителями.

Здесь мы видим, что есть довольно продолжительные запросы. wow that's long

И мы можем извлечь из этого некоторый идентификатор запроса, который даже даст мне представление о том, как запрос построен.

Некоторые из них я определенно могу определить, просто взглянув на SQL, но некоторые из этого кода запутаны библиотеками linq, и я даже не знаю, откуда он взялся. Худший преступник - один из них.

Есть ли способ узнать, какой из моего кода выполняет эти очень длинные запросы SQL?

1 Ответ

0 голосов
/ 05 сентября 2018

Есть ли способ узнать, какой из моего кода выполняет эти очень длинные запросы SQL?

EF не отправляет SQL Server никакой информации о коде, который сгенерировал запрос, но вы можете захватывать запросы с помощью EF Logging и добавлять их в журнал, который также содержит вызовы методов. Вы должны иметь возможность создавать журнал, содержащий запросы и имена методов в тестовой среде.

Либо вы можете выполнить регистрацию в рабочей среде, либо использовать Application Insights .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...