Netflix open sources the FlameScope CPU tool
To solve latency problems in a microservice, Netflix has open sourced the FlameScope tool. This tool is being released publicly and new features are being added to make it more widely applicable to other use cases. The new visualisation tool instantly generates flame graphs from sections of system profiles.
Netflix has a long history of releasing utilities developed internally for debugging and performance analysis as open source software. The tool is expected to be a hit amongst programmers and operators aiming to identify the origin of performance issues. Netflix’s FlameScope is a performance visualisation utility helpful to programmers and systems administrators. It will allow them to analyse CPU activity by generating a sub-second-offset heat map, in which users can select arbitrary spans of time for further analysis by selecting a portion of the heat map, for which a flame graph is generated for the corresponding block of time.
As per the blog post by Netflix, this tool, in particular, automates the task of selecting ranges in a CPU profile for visualisation in flame graphs, which was the very purpose of creating it.
As this is the initial release, additional features are in the process of being developed, and will be added in the future. The authors are actively soliciting outside contributors to implement features and new ideas, to make the utility more general-purpose. The project is written in Python and JavaScript/Node.js. Presently, FlameScope only handles data from perf on Linux, though support for other profile sources is planned, the post noted. Additional interactive features, such as palette selection and data transformation, as well as the ability to export the resulting flame graph as an SVG, are also priorities.