如何在New Relic的外部服务页面中监控外部请求?

时间:2014-01-07 09:49:23

标签: java playframework newrelic

我使用WSRequest类在Play网络应用程序中向外部网络服务发出请求。

这是我用来拨打SOAP电话的一小段代码:

    WSRequest req = WS.url("http://mydomain.com/soap");
    req.setHeader("Content-Type", "text/xml;charset=UTF-8");
    Map<String, Object> args = new HashedMap();
    args.put("countryCode", countryCode);
    req.body(requestTemplate.render(args));
    HttpResponse res = req.post();
    Document document=null;
    try{
        document = res.getXml();
    }catch(RuntimeException e){
        System.out.println(res.getString());
        throw e;
    }

我希望对此端点发出的SOAP调用显示在New Relic的"External Services"页面上。我如何检测我的代码才能完成此任务?除了Ruby示例之外,我还没有能够在文档中找到关于此的更多信息。

2 个答案:

答案 0 :(得分:4)

此时,New Relic Java代理仅注意使用以下方法进行的外部调用:

  • HttpURLConnection类
  • CommonsHttp
  • 的JetS3t
  • S3
  • AsyncHttpClient

Play WS API不在其中,目前用户无法做任何修改行为的事情。

我建议联系New Relic技术支持,并提供功能请求,为Play的WS API添加外部呼叫支持。

答案 1 :(得分:0)

您现在可以实施自定义网络跟踪: https://docs.newrelic.com/docs/mobile-sdk-api/android-api#track-custom