SoC 2008

Drupal Profiler Module - SoC 2008 Application

Overview

Drupal currently has a number of extremely effective developer-assist modules, most notably Devel and SimpleTest, each of which facilitate the creation and development of modules. In Drupal 7, one of the key objectives is the inclusion of a unit-testing API further enhancing the developer toolset. A profiling module would serve to allow Drupal developers a way to monitor the over all performance of code and test refinements against a benchmark while expanding the available developer toolset. In addition, a profiling module could serve to provide a set of trigger conditions to refine the throttle module in disabling elements as the system approaches capacity.

Initial development of a profiler module as a Summer of Code project would center around the creation of an extensible API similar to that of the SimpleTest module and a set of inital monitoring hooks to watch the performance of core functions and modules at a high abstraction level. The intent would be for developers to include profiler hooks within their modules at specific points of interest to add clarification to the module provided overall metric. Data collected via the API and initial hooks would be maintained and graphed so that developers can establish a performance standard across time frames and system loads. Data would be displayed in a charting series via the administration screen and as a button element on displayed pages, displaying a javascript window indicating the performance of particular page elements similar to Devel in presentation style.

There are existing profiler modules, such as loadtest. However they don't serve to cover the entire scope of functionality as described in this proposal and don't include facilities for triggerable load levels in disabling modules and blocks based upon the developed metrics.

Syndicate content