webmachine访问*perf_logger中的post-body



正在尝试拦截网络机器API上的所有请求。我复制了webmachine_perf_logger.erl并更改为发布{verb,resource,module}。

对于这些帖子,我也对BODY感兴趣。因为webmachine_decision_core.erl中的日志记录部分在不同的进程中被触发

 respond(Code) ->
      ....
      spawn(fun() -> do_log(LogData) end),

我不知道如何访问它。

有没有任何方法可以访问它或其他替代方案值得赞赏。

您有没有尝试过finish_request资源函数(https://github.com/basho/webmachine/wiki/Resource-Functions#resource-功能)?与任何其他资源函数一样,它接收请求数据和上下文。你可以做一些类似的事情:

finish_request(ReqData, Context) ->
    do_log(extract_log_data(ReqData, Context)),
    {true, ReqData, Context}.

这将记录您从每个请求的请求数据和上下文中提取的内容。请注意,崩溃的请求可能不会调用finish_request

相关内容

  • 没有找到相关文章

最新更新