OpenTelemetry
Go instrumentation and observability requires significant manual effort
7Setting up instrumentation in Go is painful and time-consuming, requiring 6-8 months of effort. Unlike Java or Python where OpenTelemetry works out-of-the-box, Go requires significant manual boilerplate and careful context propagation.
Vendor Lock-in via Proprietary Agent and Ecosystem
7Datadog's proprietary agent tightly couples applications to its ecosystem. While it accepts OpenTelemetry, advanced APM features still require the proprietary agent. Migration away requires complete re-instrumentation, and rebuilding dashboards, alerts, and data pipelines from scratch.
Telemetry data overload and cost issues
6When implementing observability in Go, developers generate massive volumes of data (trillions of requests) that must be filtered and managed. Telemetry costs and data quality issues remain persistent problems despite tuning efforts.
Limited observability tooling for GraphQL request tracing
5Developers lack adequate GUI tools for visualizing how requests move through GraphQL resolvers. Understanding request routing and resolver execution flow is more difficult than with simpler protocols, creating a gap in observability.
GenAI attributes billing configuration trap requires manual suppression
5Datadog automatically ingests and charges for recognized GenAI attributes in OpenTelemetry spans by default. To avoid these charges, engineers must manually configure the OpenTelemetry Collector or Datadog Agent to drop/mask GenAI-specific attributes using transform processors—there is no simple UI toggle. This configuration trap is non-obvious and adds complexity.