Twelve-Factor Apps and Modern Observability
Blog post from Honeycomb
The Twelve-Factor App methodology, developed by Heroku in 2011, provides a framework for building scalable, independent, and composable applications, emphasizing principles that are independent of specific implementation details. While the methodology has remained relevant over the years, certain aspects, particularly Factor 11 concerning logs, have evolved with technological advancements. Originally, Factor 11 focused on treating logs as event streams and using stdout for log output to ensure consistency across services, but this approach is becoming outdated due to inefficiencies in text conversion and serialization. OpenTelemetry now offers a more modern solution by unifying telemetry signals such as logs, traces, and metrics across different languages and frameworks, providing a consistent format for backend observability platforms via protocols like gRPC and HttpProtoBuf. This evolution suggests that OpenTelemetry could supersede the original logging practices outlined in the Twelve-Factor methodology, encouraging a shift from stdout to more efficient data transmission methods.