Patent attributes
A reporting system comprises a plurality of reporting modules and a reporting server. Each reporting module comprises an executable data gatherer and an executable registration portion that dynamically registers the reporting module with the reporting server. The reporting server generates reports by invoking the data gatherers associated with registered reporting modules. The data gatherers generate self-describing report documents that contain data description information in addition to the report data. The reporting server encapsulates the report documents within events and stores the events in an event log along with other types of events related to the computing system. A user interface displays the report data using data description information contained in the report documents.