Here, hybrid instrumentation combines OpenTelemetry instrumentation packages explicitly included and configured by the application team with manually created spans around application-owned business logic.

Combine span sources

  • Use selected packages for standard library boundaries such as HTTP clients, database calls, or messaging operations when they match the application’s SDK and framework versions.
  • Add manual spans for domain operations that are not represented by those packages.
  • Keep one owner for each operation boundary. If both a package and custom code create equivalent spans, remove or narrow the duplicate.
  • Preserve one service identity and the same configured exporter across both sources.

Validate the result

Exercise a representative request and inspect the trace tree. Confirm that custom spans nest beneath the expected operation, remote calls have coherent client/server relationships, and no repeated spans represent the same work. Review package versions and semantic-convention changes during dependency upgrades.
Hybrid setups can increase span volume and attribute cardinality. Apply the application’s sampling and ingestion controls before enabling additional instrumentation broadly.