在 Servicestack Redis outq 中保留原始请求的副本

Keep copy of original request in Servicestack Redis outq

我知道 outq 用于查看已处理消息的最后 100 个左右的响应。然而,outq 中存储的对象似乎只有响应主体,没有原始请求,因此调试问题非常困难。

是否有一种简单的方法来自动包含原始 inq 消息的副本?

我找到了一个有效的解决方案。不确定它是否最佳,但它似乎可以完成这项工作。在定义处理程序时,我只是创建一个新的响应对象并将原始请求插入其中。

mqService.RegisterHandler<MyRequest>(
    m => {
       var response = ObjectFactory.GetInstance<MyService>().Post((MyRequest) m.Body);
       return new {result = response, request = m.Body};
    }