Compartilhar via


Classe de evento Broker:Conversation

Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure

O SQL Server gera um evento Broker:Conversation para relatar o progresso de uma conversa do Service Broker.

Colunas de dados da classe de evento Broker:Conversation

Coluna de dados Tipo Descrição Column number Filtrável
ApplicationName nvarchar O nome do aplicativo cliente que criou a conexão com uma instância do SQL Server. Essa coluna é populada com os valores transmitidos pelo aplicativo e não com o nome exibido do programa. 10 Sim
ClientProcessID int A ID atribuída pelo computador host ao processo em que está sendo executado o aplicativo cliente. Essa coluna de dados será populada se a ID do processo do cliente for fornecida pelo cliente. 9 Sim
DatabaseID int A ID do banco de dados que é especificada pela instrução de banco de dados USE. A ID do banco de dados padrão, se nenhuma instrução de banco de dadosUSE tiver sido emitida. O SQL Server Profiler exibirá o nome do banco de dados se a coluna de dados ServerName for capturada no rastreamento e o servidor estiver disponível. Determine o valor de um banco de dados usando a função DB_ID . 3 Sim
EventClass int O tipo de classe de evento capturado. Sempre 124 para Broker:Conversa. 27 Não
EventSequence int Número de sequência para esse evento. 51 Não
EventSubClass nvarchar O tipo de subclasse de evento. Esse tipo fornece mais informações sobre cada classe de evento. 21 Sim
GUID uniqueidentifier A identificação de conversa do diálogo. Esse identificador é transmitido como parte da mensagem e é compartilhado por ambos os lados da conversa. 54 Não
HostName nvarchar O nome do computador no qual o cliente está sendo executado. Essa coluna de dados será populada se o nome do host for fornecido pelo cliente. Para determinar o nome do host, use a função HOST_NAME . 8 Sim
IsSystem int Indica se o evento ocorreu em um processo do sistema ou do usuário.

0 = usuário

1 = sistema
60 Não
LoginSid imagem Número SID (identificação de segurança) do usuário que fez logon. Cada SID é exclusivo para cada logon no servidor. 41 Sim
MethodName nvarchar O grupo de conversa ao qual a conversa pertence. 47 Não
NTDomainName nvarchar O domínio do Windows ao qual o usuário pertence. 7 Sim
NTUserName nvarchar O nome do usuário proprietário da conexão que gerou este evento. 6 Sim
ObjectName nvarchar O identificador de conversa do diálogo. 34 Não
Prioridade int O nível de prioridade da conversa. 5 Sim
RoleName nvarchar A função do identificador de conversa. É initiator (iniciador) ou target(destino). 38 Não
ServerName nvarchar O nome da instância do SQL Server que está sendo rastreada. 26 Não
Gravidade int A gravidade do erro do SQL Server, se esse evento relatar um erro. 29 Não
SPID int A ID do processo do servidor atribuída pelo SQL Server ao processo associado ao cliente. 12 Sim
StartTime datetime Horário de início do evento, quando disponível. 14 Sim
TextData ntext O estado atual da conversa. Pode ter um dos seguintes valores: 1 Sim
SO. Saída iniciada. O SQL Server processou um BEGIN CONVERSATION para essa conversa, mas nenhuma mensagem foi enviada.
SI. Entrada iniciada. Outra instância do Mecanismo de Banco de Dados iniciou uma nova conversa com a instância atual, mas a instância atual não terminou de receber a primeira mensagem. O SQL Server pode criar a conversa nesse estado se a primeira mensagem estiver fragmentada ou se o SQL Server receber mensagens fora de ordem. No entanto, o SQL Server poderá criar a conversação no estado CO se a primeira transmissão recebida para a conversação contiver a primeira mensagem completa.
CO. Conversando. A conversa foi estabelecida, e ambos os lados da conversa podem enviar mensagens. A maioria das comunicações de um serviço típico acontece quando a conversa está nesse estado.
DI. Entrada desconectada. O lado remoto da conversa emitiu uma instrução END CONVERSATION. A conversa permanecerá nesse estado até o lado local emitir uma instrução END CONVERSATION. Um aplicativo ainda pode receber mensagens para a conversa. Como o lado remoto da conversa encerrou a conversa, um aplicativo não pode enviar mensagens nesta conversa. Quando um aplicativo emite uma instrução END CONVERSATION, a conversa passa para o estado fechado (CD).
DO. Saída desconectada. O lado local da conversa emitiu uma instrução END CONVERSATION. A conversa permanecerá neste estado até o lado remoto da conversa reconhecer a instrução END CONVERSATION. Um aplicativo não pode enviar ou receber mensagens para a conversa. Quando o lado remoto da conversa reconhece a instrução END CONVERSATION, a conversa passa para o estado fechado (CD).
ER. Erro. Ocorreu um erro neste ponto de extremidade. As colunas de erro, severidade e estado contêm informações sobre o erro específico que ocorreu.
CD. Fechado. O ponto de extremidade da conversa não está mais em uso.
ID da Transação bigint ID da transação atribuída pelo sistema. 4 Não

A tabela a seguir lista os valores de subclasse para essa classe de evento.

ID Subclasse Descrição
1 SEND Message O SQL Server gera um evento SEND Message quando o Mecanismo de Banco de Dados executa uma instrução SEND.
2 END CONVERSATION O SQL Server gera um evento END CONVERSATION quando o Mecanismo de Banco de Dados executa uma instrução END CONVERSATION que não inclui a cláusula WITH ERROR.
3 END CONVERSATION WITH ERROR O SQL Server gera um evento END CONVERSATION WITH ERROR quando o Mecanismo de Banco de Dados executa uma instrução END CONVERSATION que inclui a cláusula WITH ERROR.
4 Broker Initiated Error O SQL Server gera um evento de Erro Iniciado pelo Agente sempre que o Agente de Serviços cria uma mensagem de erro. Por exemplo, quando o Service Broker não pode rotear com êxito uma mensagem para um diálogo, o agente cria uma mensagem de erro para o diálogo e gera esse evento. O SQL Server não gera esse evento quando um programa aplicativo encerra uma conversa com um erro.
5 Terminate Dialog O Service Broker encerrou a caixa de diálogo. O Service Broker encerra os diálogos em resposta a condições que impedem que o diálogo continue, mas que não são erros ou o fim normal de uma conversa. Por exemplo, descartar um serviço faz com que o Service Broker encerre todas as caixas de diálogo desse serviço.
6 Received Sequenced Message O SQL Server gera uma classe de evento Mensagem Seqüenciada Recebida quando o SQL Server recebe uma mensagem que contém um número de seqüência de mensagem. Todos os tipos de mensagens definidos pelo usuário são mensagens sequenciadas. O Service Broker gera uma mensagem não seqüenciada em dois casos:

As mensagens de erro geradas pelo Service Broker não são sequenciadas.

Confirmações de mensagens podem não ter sequência. Para maior eficiência, o Service Broker inclui qualquer confirmação disponível como parte de uma mensagem seqüenciada. No entanto, se um aplicativo não enviar uma mensagem seqüenciada para o ponto de extremidade remoto dentro de um determinado período de tempo, o Service Broker criará uma mensagem não seqüenciada para a confirmação da mensagem.
7 Received END CONVERSATION O SQL Server gera um evento END CONVERSATION recebido quando o SQL Server recebe uma mensagem End Dialog do outro lado da conversa.
8 Received END CONVERSATION WITH ERROR O SQL Server gera um evento Received END CONVERSATION WITH ERROR quando o SQL Server recebe um erro definido pelo usuário do outro lado da conversa. O SQL Server não gera esse evento quando o SQL Server recebe um erro definido pelo agente.
9 Received Broker Error Message O SQL Server gera um evento de Mensagem de Erro do Agente Recebido quando o Agente de Serviços recebe uma mensagem de erro definida pelo agente do outro lado da conversa. O SQL Server não gera esse evento quando o Service Broker recebe uma mensagem de erro gerada por um aplicativo.

Por exemplo, se o banco de dados atual contiver uma rota padrão para um banco de dados de encaminhamento, o Service Broker roteará uma mensagem com um nome de serviço desconhecido para o banco de dados de encaminhamento. Se esse banco de dados não puder rotear a mensagem, o agente nesse banco de dados criará uma mensagem de erro e retornará essa mensagem de erro para o banco de dados atual. Quando o banco de dados atual recebe o erro gerado pelo agente do banco de dados de encaminhamento, o banco de dados atual gera um evento Received Broker Error Message .
10 Received END CONVERSATION Ack O SQL Server gera uma classe de evento Received END CONVERSATION Ack quando o outro lado de uma conversa reconhece uma mensagem End Dialog ou Error enviada por esse lado da conversa.
11 BEGIN DIALOG O SQL Server gera um evento BEGIN DIALOG quando o Mecanismo de Banco de Dados executa um comando BEGIN DIALOG.
12 Dialog Created O SQL Server gera um evento Dialog Created quando o Service Broker cria um ponto de extremidade para um diálogo. O Service Broker cria um ponto de extremidade sempre que uma nova caixa de diálogo é estabelecida, independentemente de o banco de dados atual ser o iniciador ou o destino da caixa de diálogo.
13 END CONVERSATION WITH CLEANUP O SQL Server gera um evento END CONVERSATION WITH CLEANUP quando o Mecanismo de Banco de Dados executa uma instrução END CONVERSATION que inclui a cláusula WITH CLEANUP.

Confira também

SQL Server Service Broker