Company
Date Published
Author
Ismail Simsek and Brendan O'Handley
Word count
1852
Language
English
Hacker News points
None

Summary

Grafana recently undertook a significant project to decouple its Prometheus data source from the core Grafana application, aiming to create vendor-neutral libraries that allow for the development of custom Prometheus data sources. This initiative involved deprecating AWS authentication from the original Prometheus data source and creating a dedicated Amazon Managed Service for Prometheus plugin to cater specifically to AWS users, all while maintaining stability in the core data source. By focusing on modularity and reusability, Grafana Labs enabled external applications to utilize the Prometheus data source code and develop new data sources tailored to specific needs without being tied to the Grafana release cycle. This project required a comprehensive rewrite of the codebase, including the separation of frontend and backend code into GoLang workspaces, which facilitated better maintainability and scalability. The team enhanced their CI/CD processes and increased testing coverage to ensure seamless functionality, despite pausing new feature development during the transition. The outcome is a robust framework that adheres to good engineering practices, setting the stage for future growth and improvements in observability for third-party data sources, with plans to expand this approach to other vendors like Microsoft Azure.