检测传出 HTTP 调用 - Amazon X-Ray
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

检测传出 HTTP 调用

注意

End-of-support 注意 — 2027 年 2 月 25 日, Amazon X-Ray 将停止对 Amazon X-Ray SDKs 和守护程序的支持。2027 年 2 月 25 日之后,您将不再收到更新或发布。有关支持时间表的更多信息,请参阅X-Ray SDK 和守护程序终止支持时间表。我们建议迁移到 OpenTelemetry。有关迁移到的更多信息 OpenTelemetry,请参阅从 X-Ray 仪器迁移到 OpenTelemetry 仪器

用户工厂类显示应用程序如何使用 X-Ray SDK for Java 的 HTTPClientBuilder 版本来检测传出 HTTP 调用。

src/main/java/scorekeep/UserFactory.java— HTTPClient 仪器
import com.amazonaws.xray.proxies.apache.http.HttpClientBuilder; public String randomName() throws IOException { CloseableHttpClient httpclient = HttpClientBuilder.create().build(); HttpGet httpGet = new HttpGet("http://uinames.com/api/"); CloseableHttpResponse response = httpclient.execute(httpGet); try { HttpEntity entity = response.getEntity(); InputStream inputStream = entity.getContent(); ObjectMapper mapper = new ObjectMapper(); Map<String, String> jsonMap = mapper.readValue(inputStream, Map.class); String name = jsonMap.get("name"); EntityUtils.consume(entity); return name; } finally { response.close(); } }

如果您当前使用 org.apache.http.impl.client.HttpClientBuilder,则只需使用 com.amazonaws.xray.proxies.apache.http.HttpClientBuilder 的语句换出该类的导出语句。