Escolar Documentos
Profissional Documentos
Cultura Documentos
" 100 XP
A estrutura de eventos estendidos também permite que você use filtros para limitar a
quantidade de dados coletados a fim de reduzir a sobrecarga da coleta de dados e permite
que você identifique mais facilmente o problema de desempenho direcionando seu foco para
áreas específicas.
Veja abaixo um exemplo de uma sessão de evento estendido criada no Banco de Dados SQL
do Azure:
https://learn.microsoft.com/pt-br/training/modules/describe-performance-monitoring/5-explore-extended-events 1/10
11/07/2023, 14:42 Explorar eventos estendidos - Training | Microsoft Learn
Para obter mais informações, confira Eventos estendidos no Banco de Dados SQL do Azure.
Os eventos são adicionados às sessões, que podem hospedar vários eventos. Normalmente,
vários eventos são agrupados em uma sessão para capturar um conjunto de informações
relacionado.
Você pode executar a consulta abaixo para obter uma lista dos eventos, ações e destinos
disponíveis:
SQL
SELECT
obj.object_type,
pkg.name AS [package_name],
obj.name AS [object_name],
obj.description AS [description]
FROM sys.dm_xe_objects AS obj
INNER JOIN sys.dm_xe_packages AS pkg ON pkg.guid = obj.package_guid
WHERE obj.object_type in ('action', 'event', 'target')
ORDER BY obj.object_type,
pkg.name,
obj.name;
https://learn.microsoft.com/pt-br/training/modules/describe-performance-monitoring/5-explore-extended-events 3/10
11/07/2023, 14:42 Explorar eventos estendidos - Training | Microsoft Learn
A imagem acima mostra a caixa de diálogo Nova Sessão do recurso de eventos estendidos.
Primeiro você deve nomear a sessão. O SQL Server fornece vários modelos agrupados nas
seguintes categorias:
Bloqueios e Blocos
Equivalentes Profiler
Execução da consulta
Monitoramento do Sistema
Esses modelos predefinidos permitem que você comece rapidamente a usar eventos
estendidos para monitoramento. Neste exemplo, você verá eventos adicionados manualmente
à sessão para se orientar por todas as opções, mas quando se está usando o recurso pela
primeira vez, usar um modelo pode ser uma maneira fácil de criar uma sessão básica.
Você tem algumas opções de seleção para quando iniciar esta sessão. Você pode optar por
iniciar sua nova sessão sempre que o servidor for inicializado ou iniciar a sessão assim que ela
for criada. Os administradores podem iniciar e interromper as sessões de eventos estendidos a
qualquer momento por meio do nó Eventos Estendidos no SQL Server Management Studio.
Você também tem a opção de habilitar o acompanhamento casual, que adiciona um GUID
(identificador global exclusivo) e um número de sequência para a saída de cada evento, o que
permite que você confira facilmente a ordem das etapas em que os eventos ocorreram.
https://learn.microsoft.com/pt-br/training/modules/describe-performance-monitoring/5-explore-extended-events 4/10
11/07/2023, 14:42 Explorar eventos estendidos - Training | Microsoft Learn
A imagem acima mostra a tela em que você adiciona os eventos à sua sessão. Um evento
representa um ponto de interesse no código do mecanismo de banco de dados. Eles podem
representar operações puramente internas do sistema ou podem ser associados à ações do
usuário, como a execução de consulta. No exemplo acima, você pode ver que os eventos
sp_statement_completed , sql_batch_completed e sql_statement_completed foram adicionados
a essa sessão de evento. Por padrão, essa sessão capturaria todas as instâncias desses eventos
ocorrendo na sua instância. Você pode limitar a coleta clicando no botão configurar.
https://learn.microsoft.com/pt-br/training/modules/describe-performance-monitoring/5-explore-extended-events 5/10
11/07/2023, 14:42 Explorar eventos estendidos - Training | Microsoft Learn
A tela de configuração de evento permite definir quais dados você está coletando, já que eles
estão relacionados aos seus eventos. Os campos globais permitem escolher os dados que
você está coletando quando o evento ocorre. Os campos globais também são conhecidos
como ações, porque a ação significa acrescentar campos de dados adicionais ao evento. Esses
campos representam os dados coletados quando o evento estendido ocorre e são comuns na
maioria dos eventos estendidos. A imagem abaixo mostra as opções de filtro para um evento
estendido.
https://learn.microsoft.com/pt-br/training/modules/describe-performance-monitoring/5-explore-extended-events 6/10
11/07/2023, 14:42 Explorar eventos estendidos - Training | Microsoft Learn
Os filtros são um recurso poderoso de Eventos Estendidos que permitem usar o controle
granular para capturar apenas as ocorrências específicas do evento que você deseja. Neste
exemplo, você pode ver que o filtro está sendo aplicado no campo sqlserver.is_system onde
ele é igual a zero, o que indica que a consulta não é uma operação interna. Em outras
palavras, a sessão não capturará a conclusão de instruções enviadas por conexões do sistema,
e o que queremos é capturar apenas instruções enviadas por usuários ou aplicativos de
usuário.
Os filtros se aplicam a apenas um campo em um evento único. Para garantir que não está
rastreando atividades do sistema para nenhum evento, você precisará de um filtro separado
para cada um: o evento sql_statement_completed , o evento sql_batch_completed e o evento
sp_statement_completed .
É uma boa prática configurar um filtro para cada evento que está sendo capturado. Isso ajuda
a melhorar a eficiência da coleta de dados e permite que você estreite o foco da sua pesquisa.
A imagem abaixo mostra os campos de evento coletados. Eles são específicos do evento que
está sendo disparado e podem incluir campos opcionais para coleta. No evento acima, você
pode ver que as opções de coleção opcionais são statement e parameterized_plan_handle .
https://learn.microsoft.com/pt-br/training/modules/describe-performance-monitoring/5-explore-extended-events 7/10
11/07/2023, 14:42 Explorar eventos estendidos - Training | Microsoft Learn
Depois de ter definido uma sessão do evento, você definirá um destino de armazenamento,
conforme mostrado na imagem abaixo.
https://learn.microsoft.com/pt-br/training/modules/describe-performance-monitoring/5-explore-extended-events 8/10
11/07/2023, 14:42 Explorar eventos estendidos - Training | Microsoft Learn
Uma sessão de evento estendido tem um destino e ele pode ser considerado apenas um lugar
para o mecanismo controlar as ocorrências de um evento. Dois dos destinos mais comuns são
arquivo de evento, que é um arquivo no sistema que pode armazenar eventos e, nas ofertas de
PaaS do SQL do Azure, esses dados são gravados em um armazenamento de blob. Outro
destino comum é o buffer em anel que está dentro da memória do SQL Server. O buffer em
anel é mais usado para a observação ao vivo de uma sessão de evento, porque ele é um
buffer circular e os dados não são mantidos além de uma sessão. A maioria dos destinos
processa os dados de forma assíncrona, o que significa que os dados do evento são gravados
na memória antes de terem persistido no disco. A exceção é o ETW (destino de rastreamento
de eventos do Windows) e os destinos do contador de eventos processados de forma
síncrona.
A tabela a seguir contém informações e usos para cada tipo de destino de Eventos Estendidos.
ETW (Rastreamento Usado para correlacionar eventos do SQL Server com Síncrono
de Eventos para os dados de evento do SO do Windows.
Windows)
https://learn.microsoft.com/pt-br/training/modules/describe-performance-monitoring/5-explore-extended-events 9/10
11/07/2023, 14:42 Explorar eventos estendidos - Training | Microsoft Learn
Como alternativa, você pode criar uma sessão de eventos estendidos usando T-SQL. Os
seguintes comandos T-SQL fornecem um exemplo de como criar uma sessão de eventos
estendidos:
SQL
Continuar T
https://learn.microsoft.com/pt-br/training/modules/describe-performance-monitoring/5-explore-extended-events 10/10