当 Service Broker 发送或接收消息确认时,SQL Server 将生成 Broker:Remote Message Ack 事件。
Broker:远程信息确认事件类数据列
| 数据列 | 类型 | DESCRIPTION | 列号 | 可筛选 |
|---|---|---|---|---|
| ApplicationName | nvarchar | 创建到 SQL Server 实例连接的客户端应用程序的名称。 此列使用应用程序传递的值填充,而不是程序的显示名称。 | 10 | 是的 |
| BigintData1 | bigint | 包含确认的消息的序列号。 | 52 | 否 |
| BigintData2 | bigint | 正在确认的消息的序列编号。 | 53 | 否 |
| ClientProcessID | int | 主机分配给运行客户端应用程序的进程的 ID。 如果客户端提供了客户端进程 ID,则填充此数据列。 | 9 | 是的 |
| DatabaseID | int | USE 数据库语句指定的数据库 ID。 如果未为给定实例发出 USE 数据库 语句,则显示默认数据库的 ID。 如果在跟踪中捕获 ServerName 数据列且服务器可用,SQL Server Profiler 将显示数据库名称。 可使用 DB_ID 函数来确定数据库的值。 | 3 | 是的 |
| EventClass | int | 捕获的事件类的类型。 始终 149 用于 代理:消息确认。 | 二十七 | 否 |
| EventSequence | int | 此事件的序列号。 | 51 | 否 |
| EventSubClass | nvarchar | 事件子类的类型,提供有关每个事件类的详细信息。 此列可以包含以下值: 已发送消息并收到确认 Service Broker 发送确认作为常规顺序消息的一部分。 已发送确认 Service Broker 在通常的消息顺序之外发送了一条确认信息。 收到确认的消息 Service Broker 收到确认消息作为正常顺序消息的一部分。 已接收确认 Service Broker 在有序消息之外接收到确认。 |
21 | 是的 |
| GUID | uniqueidentifier | 对话ID。 此标识符作为消息的一部分传输,并在对话双方之间共享。 | 54 | 否 |
| HonorBrokerPriority | Int | 数据库HONOR_BROKER_PRIORITY选项的当前值:0 = OFF,1 = ON。 | 32 | 是的 |
| HostName | nvarchar | 运行客户端的计算机的名称。 如果客户端提供了主机名,则填充此数据列。 若要确定主机名,请使用 HOST_NAME 函数。 | 8 | 是的 |
| IntegerData | int | 包含确认的消息的片段编号。 | 二十五 | 否 |
| IntegerData2 | int | 正在被确认的消息的片段编号。 | 55 | 否 |
| IsSystem | int | 指示事件是发生在系统进程中还是发生在用户进程中。 0 = 用户 1 = 系统 |
六十 | 否 |
| LoginSid | 图像 | 已登录用户的安全标识号 (SID)。 服务器中的每个登录名都具有唯一的 SID。 | 41 | 是的 |
| NTDomainName | nvarchar | 用户所属的 Windows 域。 | 7 | 是的 |
| NTUserName | nvarchar | 拥有生成此事件的连接的用户的名称。 | 6 | 是的 |
| 优先级 | int | 会话的优先级。 | 5 | 是的 |
| RoleName | nvarchar | 正在确认消息的实例的角色。 这是 发起者 或者 目标。 | 三十八 | 否 |
| ServerName | nvarchar | 要跟踪的 SQL Server 实例的名称。 | 26 | 否 |
| SPID | int | SQL Server 分配给与客户端关联的进程的服务器进程 ID。 | 12 | 是的 |
| StartTime | 日期/时间 | 事件发生的时间(可用时)。 | 14 | 是的 |
| 饥饿高地 | int | 消息的优先级高于为会话配置的优先级:0 = false,1 = true。 | 33 | 是的 |
| TransactionID | bigint | 由系统分配的事务 ID | 4 | 否 |