Usando Eventos Estendidos no SQL 2016 - como podemos capturar todas as consultas executadas por usuários em um banco de dados específico. Isso nos ajuda a entender quais desenvolvedores/analistas de relatórios/desenvolvedores etl estão executando consultas na instância de produção.
Resultado esperado: nome de usuário, consulta TSQL executada, tempo de conclusão
Você desejará usar o
sqlserver.sql_statement_completed
evento, que inclui ostatement
campo de ação por padrão. Além disso, adicione apackage0.collect_system_time
ação e existem várias opções para capturar o nome de usuário.Este exemplo usa
sqlserver.session_nt_username
para obter o usuário NT da sessão atual. Ele produzirá os resultados em um arquivo e você provavelmente precisará ajustar algumas das opções conforme necessário para seu ambiente.