2014-01-07 36 views
2

我正在使用WSRequest類在我的Play網絡應用程序中向外部Web服務發出請求。如何在New Relic的外部服務頁面中監控外部請求?

下面的代碼的小片段我使用進行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; 
    } 

我想這個端點作出現身"External Services"頁New Relic的對SOAP調用。我如何測試我的代碼才能完成此任務?除了Ruby示例以外,我一直無法在文檔中找到關於此的更多信息。

回答

3

在這個時候,New Relic的Java代理只注意到下面的方法做外線電話:

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

Play WS API不是amo在這些時候,用戶無法做任何修改行爲的方法。

我建議您聯繫New Relic技術支持部門,並請求爲Play的WS API添加外部呼叫支持。

+0

謝謝您的回答盧克。如果您能留下關於我可以在哪裏提交功能請求票據的信息,那將非常棒。 –

+0

用戶無法提出功能請求,但可以代表您提供技術支持。只需訪問support.newrelic.com並提出支持請求即可。 – llawson

+2

哪個版本的CommonsHttp支持? 我們使用org.apache.httpcomponents的HttpClient 4.3.2,而不是看到外部服務從這裏呼籲 注:https://hc.apache.org 「HttpClient的是基於HTTP/1.1兼容HTTP代理實現它還爲客戶端身份驗證,HTTP狀態管理和HTTP連接管理提供可重用組件.HttpComponents Client是Commons HttpClient 3.x的繼承者和替代者,強烈建議使用Commons HttpClient的用戶進行升級。 – marstonstudio