Класс событий Broker:Conversation
SQL Server формирует событие Broker:Conversation, чтобы сообщать о ходе диалога компонента Service Broker.
Столбцы данных класса событий Broker:Conversation
Столбец данных | Тип | Описание | Номер столбца | Фильтруемость |
---|---|---|---|---|
ApplicationName |
nvarchar |
Имя клиентского приложения, установившего соединение с экземпляром SQL Server. Этот столбец заполняется значениями, передаваемыми приложением, а не отображаемым именем программы. |
10 |
Да |
ClientProcessID |
int |
Идентификатор, присвоенный сервером процессу, в котором работает клиентское приложение. Этот столбец данных заполняется в том случае, если клиент предоставляет идентификатор клиентского процесса. |
9 |
Да |
DatabaseID |
int |
Идентификатор базы данных, заданный инструкцией USE database, или идентификатор базы данных по умолчанию, если для данного экземпляра инструкция USE database не выполнялась. Приложение SQL Server Profiler отображает имя базы данных, если в трассировке зафиксирован столбец данных Server Name и этот сервер доступен. Значение для базы данных определяется с помощью функции DB_ID. |
3 |
Да |
EventClass |
int |
Тип захваченного класса событий. Всегда 124 для класса событий Broker:Conversation. |
27 |
Нет |
EventSequence |
int |
Порядковый номер этого события. |
51 |
Нет |
EventSubClass |
nvarchar |
Тип подкласса событий, предоставляющий дополнительные сведения о каждом классе событий. |
21 |
Да |
GUID |
uniqueidentifier |
Идентификатор диалога. Этот идентификатор передается как часть сообщения и является общим для обоих участников диалога. |
54 |
Нет |
HostName |
nvarchar |
Имя компьютера, на котором выполняется клиентская программа. Заполнение этого столбца данных производится в случае, если клиент предоставляет имя узла. Чтобы определить имя узла, используйте функцию HOST_NAME. |
8 |
Да |
IsSystem |
int |
Указывает, произошло ли событие в системном или в пользовательском процессе. 0 = пользовательский процесс 1 = системный процесс |
60 |
Нет |
LoginSid |
image |
Идентификационный номер в системе безопасности вошедшего в систему пользователя. Значение идентификатора безопасности уникально для каждого имени входа на сервере. |
41 |
Да |
MethodName |
nvarchar |
Группа сообщений, которой принадлежит диалог. |
47 |
Нет |
NTDomainName |
nvarchar |
Домен Windows, к которому принадлежит пользователь. |
7 |
Да |
NTUserName |
nvarchar |
Имя пользователя, которому принадлежит соединение, сформировавшее это событие. |
6 |
Да |
ObjectName |
nvarchar |
Дескриптор диалога. |
34 |
Нет |
RoleName |
nvarchar |
Роль дескриптора диалога. Значением может быть либо создатель, либо получатель. |
38 |
Нет |
ServerName |
nvarchar |
Имя экземпляра SQL Server, подвергаемого трассировке. |
26 |
Нет |
Severity |
int |
Уровень серьезности ошибки SQL Server, если это событие сообщает об ошибке. |
29 |
Нет |
SPID |
int |
Идентификатор серверного процесса сервера, который SQL Server присвоил процессу, связанному с клиентом. |
12 |
Да |
StartTime |
datetime |
Время начала события, если оно известно. |
14 |
Да |
TextData |
ntext |
Текущее состояние диалога. Одно из следующих значений:
|
1 |
Да |
Идентификатор транзакции |
bigint |
Назначенный системой идентификатор транзакции. |
4 |
Нет |
В представленной ниже таблице перечислены значения подклассов для этого класса событий.
Идентификатор | Подкласс | Описание |
---|---|---|
1 |
SEND Message |
SQL Server формирует событие SEND Message, когда Database Engine выполняет инструкцию SEND. |
2 |
END CONVERSATION |
SQL Server формирует событие END CONVERSATION, когда Database Engine выполняет инструкцию END CONVERSATION, в которую не входит предложение WITH ERROR. |
3 |
END CONVERSATION WITH ERROR |
SQL Server формирует событие END CONVERSATION WITH ERROR, когда Database Engine выполняет инструкцию END CONVERSATION, в которую входит предложение WITH ERROR. |
4 |
Broker Initiated Error |
SQL Server формирует событие Broker Initiated Error всякий раз, когда компонент Service Broker создает сообщение об ошибке. Например, если компонент Service Broker не может успешно направить сообщение для диалога, он создает сообщение об ошибке для диалога и формирует это событие. SQL Server не создает это событие, если прикладная программа завершает диалог с ошибкой. |
5 |
Terminate Dialog |
Компонент Service Broker прервал диалог. Компонент Service Broker прерывает диалоги в ответ на появление условий, не позволяющих продолжить диалог, но не являющихся ошибками или нормальным завершением диалога. Например, в случае удаления службы компонент Service Broker прерывает все диалоги для этой службы. |
6 |
Received Sequenced Message |
SQL Server создает класс событий Received Sequenced Message, когда SQL Server получает сообщение, содержащее порядковый номер сообщения. Все пользовательские типы сообщений являются последовательными. Компонент Service Broker создает непоследовательные сообщения в двух случаях.
|
7 |
Received END CONVERSATION |
SQL Server создает событие «Received END CONVERSATION», когда SQL Server получает сообщение «End Dialog» от другой стороны диалога. |
8 |
Received END CONVERSATION WITH ERROR |
SQL Server создает событие Received END CONVERSATION, когда SQL Server получает пользовательское сообщение об ошибке от другой стороны диалога. Обратите внимание на то, что SQL Server не создает это событие, когда SQL Server получает сообщение об ошибке от посредника. |
9 |
Received Broker Error Message |
SQL Server создает событие Received Broker Error Message, когда компонент Service Broker получает посредническое сообщение об ошибке от другой стороны диалога. SQL Server не создает этого события, если компонент Service Broker получает сообщение об ошибке, формируемое приложением. Например, если текущая база данных содержит маршрут по умолчанию к базе данных пересылки, компонент Service Broker направляет сообщение с неизвестным именем службы в базу данных пересылки. Если база данных пересылки не может определить маршрут для сообщения, посредник в этой базе данных создает сообщение об ошибке и возвращает его в текущую базу данных. Если текущая база данных получает формируемое посредником сообщение об ошибке из базы данных пересылки, текущая база данных формирует событие Received Broker Error Message. |
10 |
Received END CONVERSATION Ack |
SQL Server формирует класс событий Received END CONVERSATION Ack, когда другая сторона диалога подтверждает сообщение «End Dialog» или «Error», переданное этой стороной диалога. |
11 |
BEGIN DIALOG |
SQL Server формирует событие BEGIN DIALOG, когда ядро СУБД выполняет команду BEGIN DIALOG. |
12 |
Dialog Created |
SQL Server создает событие Dialog Created, когда компонент Service Broker создает конечную точку для диалога. Обратите внимание на то, что компонент Service Broker создает конечную точку всякий раз при установлении нового диалога независимо от того, является ли текущая база данных инициатором или целью диалога. |
13 |
END CONVERSATION WITH CLEANUP |
SQL Server формирует событие END CONVERSATION WITH CLEANUP, когда Database Engine выполняет инструкцию END CONVERSATION, в которую входит предложение WITH CLEANUP. |
См. также
Другие ресурсы
Знакомство с компонентом Service Broker
Архитектура диалога