This article is a stub, feel free to write something more extensive
The monitoring system of RHQ supports centralized scheduling control and collection of monitoring information attached to resources. Default and customizable collection templates allow the admin the ability to get the data at the right rate. The monitoring system supports standard numeric collection metrics, trends up metrics that automatically support a rate change form of display. Numeric data is compressed over time to allow storage of detailed data for a period, but also summarized information for a year or more. Also supported is resource trait data that can be strings that don't change that often and are stored in a run length encoded format. Finally call time data can track any dynamic element of resource that has timings. These are used, for example, to provide timings on web request URLs and business object methods.
Numeric Measurements
Numeric measurements are defined against a resource type and can be collected on schedules. Measurements can have units and our display system understands scale such that you can record measurements as 1,000,000 bytes and it can be displayed as "1 MB" on graphs and tables. Measurements can also be dynamic or trending where trending metrics are also able to be tracked by their rate of change. Measurements are stored to a round robin set of raw tables and then compressed over time to other tables for longer duration storage.

Traits
Traits are string information tracked about a resource and can be scheduled like numeric measurements. They are stored in a run-length-encoding where only changes are tracked no matter how often they are checked.
Call Time Measurements
Call time measurements can track the performance of arbitrary requests on a resource. Common examples of this are to track the performance of methods on a bean or web requests. These metrics track timings against the key for that measurement type, such as the method name or the transformed request URI.