1

我已经使用(在我的 AppHost.cs 中)实现了所有请求/响应的日志记录:

this.RequestFilters.Add(serviceLogFilter.LogRequest);
this.ResponseFilters.Add(serviceLogFilter.LogResponse);

在记录请求期间,我从记录表中获取新 ID 并将其放入IHttpRequest.Items.

我的问题是:当发生错误时,比如传入数据的验证失败,或者我的业务逻辑抛出异常,有没有办法可以自定义返回的错误以包含我的日志引用?最好在错误响应中添加 JSON 正文。或者,设置自定义 HTTP 标头?

这个想法是,如果发生意外情况,我的客户可以给我一个日志参考,我会找到他的请求并且可以轻松地重现问题。

4

1 回答 1

0

请参阅this question on different ways to Handle exceptions from old and New API

使用IHttpRequest.Items字典在同一请求中的请求过滤器、服务和响应过滤器之间传递数据。

此外,Request Logger插件的InMemoryRollingRequestLogger实现显示了另一种能够记录所有请求的方法。

于 2012-10-25T17:03:10.293 回答