Screenshots

In-App Screenshots

The Global Dashboard

The Charts with Metrics

Popup with a Graph

UI for Bundle Deployments

The Dashboard for Resource

Report of Config History

All screenshots are taken from RHQ 4.13.

About

Basically

The RHQ is upstream project for JBoss ON. It is written mostly in Java. For storing the metrics we use our own version of Cassandra. RHQ is very easily extendable on the agent-side (agent plugins) as well as on the server side (server plugins). Interfacing with RHQ can be achieved using Rest API or CLI (Javascript or Python).

Features

Inventory

Inventory is responsible for finding and tracking the platforms, servers and services that will be managed using RHQ. This system provides auto-discovery for easier deployment and thorough models of deployed systems and applications. It provides the central administrator the ability to configure which features will be used on which targeted services.

Configuration

Configuration supports reading, updating, and tracking changes to the settings for managed resources. These configuration changes can be tracked historical and even detect changes made outside the system while providing an audited history and the ability to roll back to previous versions for supported resources.

Monitoring

Monitoring manages the collection of statistics and state for managed products and the setup of collection intervals and details. This system also provides running baselines to show metrics that go out of their normal ranges.

Alerts

The Alerts feature set integrates with other subsystems to provide notifications of user defined conditions. This can be utilized to notify administrators of performance problems or failed operations. Complex conditions allow for detailed alert situations to be modelled while dampening allows for the right semantics to occur before notification of administrators occur.

Operations

Operations offer the ability to execute actions against managed resources in the inventory. These operations depend on the resource, but can include actions such as stop, start and restart as well as clearing caches or gathering detailed operation information.
Provisioning
Also known as the “Bundle” subsystem, RHQ’s Provisioning feature allows you to deploy packages of software to remote machines, thus allowing you to install and upgrade software.

We also support drift detection, provisioning of content, creating and working with groups of resources, events (logs), etc. For richer list of features goto the wiki.

Contribute

General Info

If you wish to get involved as a contributor to RHQ, please visit #rhq channel on Freenode IRC and get to know people. This channel is logged and the history is here.

If you want to contribute to the source repository, please fork it into your own repository and send pull-requests afterwards. Each Pull-Request should be “backed” by an entry in Bugzilla. Please add the Bugzilla issue number to the Pull-Request.

Mailing Lists

Our user mailing list and our developer mailing list are the main channels of communication between all community members

Wiki

In order to boot into the domain and grasp the nomenclature we use, good start is the RHQ wikipage.

Forum

You can also help the community by answering the questions either on our own RHQ forum or on StackOverflow.

Our developers are always looking for the community to get involved. Whether it is ideas for improvement, documentation, contributed plugins or core development. Check the Contributions page on the RHQ wiki for more details

Code

Building the Codebase

Here is the happy path for building the RHQ, it assumes Maven, JDK7 and Postgres to be installed. There should be also precreated rhq database and rhqadmin user in Postgres DB.