Metastatic.Analysis.BusinessLogic.MissingTelemetryForExternalHttp (Metastatic v0.10.4)

View Source

Detects external HTTP requests without telemetry instrumentation.

This analyzer identifies HTTP client calls that lack telemetry/monitoring, making it difficult to track API latency, failure rates, and external service health.

Cross-Language Applicability

Universal pattern across all HTTP clients:

  • Python: requests.get(), httpx.get(), urllib.request()
  • JavaScript: fetch(), axios.get(), http.request()
  • Elixir: HTTPoison.get(), Req.get(), Finch.request()
  • Go: http.Get(), client.Do()
  • C#: HttpClient.GetAsync(), WebRequest.Create()
  • Java: HttpClient.send(), RestTemplate.get()
  • Ruby: Net::HTTP.get(), RestClient.get()
  • Rust: reqwest::get(), hyper::Client

Examples

Bad (Python)

response = requests.get(api_url)  # No monitoring

Good (Python)

start = time.time()
response = requests.get(api_url)
metrics.timing('api.request', time.time() - start)

Bad (JavaScript)

const data = await fetch(apiUrl);  # No telemetry

Good (JavaScript)

const start = Date.now();
const data = await fetch(apiUrl);
metrics.timing('api.request', Date.now() - start);