Managing OpenTelemetry Semantic Convention Migrations With the Collector
Blog post from Honeycomb
In the context of OpenTelemetry and observability, the challenges of semantic convention migrations are exemplified through real-world cases of data inconsistencies due to overlapping old and new attribute names, such as http.url and url.full. These inconsistencies arise because not all services upgrade simultaneously, leading to incomplete results in operational tooling. The OpenTelemetry Collector's schema processor aims to automate attribute name migrations by using schema files that describe changes across versions, ensuring consistent data regardless of instrumentation version. The processor supports both upgrade and downgrade paths, automatically applying the necessary changes to align signal versions with a specified target. However, gaps exist in the current system, such as issues with renames not covered by schema files or signals missing schema URLs, which require additional handling through transform rules. The schema processor is still under development, with ongoing efforts to improve its stability and functionality, such as addressing a bug affecting upgrades and introducing a copy_mode to ease transition periods. While the processor promises to streamline convention migrations, current limitations mean that users need to audit their datasets for attribute divergence and plan for future schema version targets.