Broker:消息无法传递事件类

当 Service Broker 无法保留已接收的消息时,SQL Server 将生成 Broker:Message Undeliverable 事件,该消息应已传递到此实例中的服务。 有关应转发的消息,请参阅 Broker:Forwarded Message Dropped 事件类

Broker:消息无法投递事件类数据列

数据列 类型 DESCRIPTION 列号 可筛选
应用程序名称 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 是的
错误 int 事件中文本的 sys.messages 中的消息 ID 号。 31
EventClass int 捕获的事件类的类型。 始终 为 160 表示 Broker:MessageUndeliverable 二十七
EventSequence int 此事件的序列号。 51
EventSubClass nvarchar 指示不可传递的消息是否为已排序的消息。 两个值之一:

排序消息。 无法传递的消息是顺序消息。

未排序的消息。 无法传递的消息不是已排序的消息。
21 是的
GUID uniqueidentifier 属于无法传递消息的对话的会话ID。 此标识符作为消息的一部分传输,并在对话双方之间共享。 54
HostName nvarchar 运行客户端的计算机的名称。 如果客户端提供了主机名,则填充此数据列。 若要确定主机名,请使用 HOST_NAME 函数。 8 是的
IntegerData int 无法传递的消息的片段编号。 二十五
IntegerData2 int 无法投递的消息所确认的消息片段编号。 55
IsSystem int 指示事件是发生在系统进程中还是发生在用户进程中。 1 = 系统,0 = 用户。 六十
LoginName nvarchar 用户的登录名(SQL Server 安全登录名或域\用户名形式的 Windows 登录凭据)。 11
LoginSid image 已登录用户的安全标识号 (SID)。 服务器中的每个登录名都具有唯一的 SID。 41 是的
NTDomainName nvarchar 用户所属的 Windows 域。 7 是的
NTUserName nvarchar 拥有生成此事件的连接的用户的名称。 6 是的
ObjectName nvarchar 对话框的会话句柄。 34
RoleName nvarchar 会话句柄的角色。 这是 发起者 或者 目标 三十八
ServerName nvarchar 要跟踪的 SQL Server 实例的名称。 26
严重性 int 事件中文本的严重性编号。 二十九
SPID int SQL Server 分配给与客户端关联的进程的服务器进程 ID。 12 是的
StartTime datetime 事件发生的时间(可用时)。 14 是的
int 指示生成事件的 SQL Server 源代码中的位置。 可能生成此事件的每个位置都有不同的状态代码。 Microsoft支持工程师可以使用此状态代码查找生成事件的位置。 30
TextData ntext SQL Server 无法传递消息的原因。 1 是的
TransactionID bigint 由系统分配的事务 ID 4

另请参阅

SQL Server Service Broker