在 Service Broker 中记录 received/transmitted 条消息
Logging of received/transmitted messages in Service Broker
有没有办法记录(在文件或数据库 table 中)从 Service Broker 服务接收到的发送到 and/or 的消息,而不改变激活过程或消息发送代码?
我知道我可以更改激活程序,以便在处理接收到的消息之前(或之后)将其写入 table。我可以更改发送存储过程来做同样的事情,但我正在寻找的东西:
- 我将不必自己构建基础架构并从头开始编码和调试。
- 已经过广泛测试,已知不会干扰正常处理(透明)。
- 我可以随意启用或禁用。
注意:我需要记录实际的消息内容和关联的元数据。
TIA
简答:否
您可以通过服务器跟踪或作为事件通知来监控 Broker:Conversation Event Class,但只会为您提供元数据,而不是消息内容。
您可以启用 queue retention,但保留的消息无论如何都会在对话结束时被删除,并且无法打开 on/off。
到目前为止,最好的选择是从激活的存储过程本身进行。
有没有办法记录(在文件或数据库 table 中)从 Service Broker 服务接收到的发送到 and/or 的消息,而不改变激活过程或消息发送代码?
我知道我可以更改激活程序,以便在处理接收到的消息之前(或之后)将其写入 table。我可以更改发送存储过程来做同样的事情,但我正在寻找的东西:
- 我将不必自己构建基础架构并从头开始编码和调试。
- 已经过广泛测试,已知不会干扰正常处理(透明)。
- 我可以随意启用或禁用。
注意:我需要记录实际的消息内容和关联的元数据。
TIA
简答:否
您可以通过服务器跟踪或作为事件通知来监控 Broker:Conversation Event Class,但只会为您提供元数据,而不是消息内容。
您可以启用 queue retention,但保留的消息无论如何都会在对话结束时被删除,并且无法打开 on/off。
到目前为止,最好的选择是从激活的存储过程本身进行。