This code package contains the source for RainMon. In brief, it is a system for decomposing, summarizing, and predicting timeseries systems timeseries monitoring data. For more detail on the technique, please see the KDD 2012 paper. The description below is a quick guide to some of the key parts of the code.
For a guide on how to install these requirements, please see the Setup Guide
Base requirements (all Python-based):
Required for interface:
easy_install celeryeasy_install django-celeryFirst, copy config.template.json to config.json file in this directory, and edit the following keys:
RainMon currently supports two timeseries databases: OpenTSDB, a scalable distributed database, and an RRD server.
For detail on how to set up OpenTSDB, please see the OpenTSDB "getting started" guide at http://opentsdb.net/getting-started.html. The Haodop dataset is available only from within the CMU campus network (or on VPN).
The rrd folder contains a server for RRDtool-format data.
First, cd to the code folder.
A simple example of how to only run the analysis pipeline without the UI is located in boot.py. Look inside generate(): it shows what needs to be specified (name to save, nodes, attributes, and time range).
To run the UI:
make celerystartmake serverstartThen, navigate with a web browser to http://localhost:8000/, where localhost is the IP of the machine you ran the make commands from.
This is "research" code - we fully expect that there are bugs.
For licensing information that applies to the project, see LICENSE.