Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Live Monitoring with Subsecond temporal resolution
Python Java C Shell JavaScript HTML
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
c
collectd
doc
java
plugins
plugins_out
profiling
servers
to_be_ported
.gitignore
COPYING
README
coven.py
dirmanager.py
dump.py
extremon.py
killer
x3plugin.py

README

/*
  * ExtreMon Project
  * Copyright (C) 2009-2015 Frank Marien
  * frank@apsu.be
  *
  * This file is part of ExtreMon.
  *
  * ExtreMon is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation, either version 3 of the License, or
  * (at your option) any later version.
  *
  * ExtreMon is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  * GNU General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License
  * along with ExtreMon. If not, see <http://www.gnu.org/licenses/>.
  */

From the Extreme Monitoring Manifesto:

>>  Live, with Subsecond temporal resolution where possible, as fast as doesn’t disrupt service, elsewhere
    Display on a meaningful representation, and in real-time.
>>  Simple Text-based Internet-Friendly Subscription Push API
    Implicit Provisioning (Test-driven infrastructure)
    Agent push the data as it is gathered
>>  Hot-pluggable components
>>  Re-use as many ubiquitous technologies as possible

Extremon-Display is an implementation of the first and third, 6th and 7th targets:  
Live, with Subsecond temporal resolution where possible,
Simple Text-based Internet-Friendly Subscription Push API
Hot-pluggable components
and Re-use as many ubiquitous technologies as possible

see https://extremon.org/

For the second target, see the ExtreMon-Display project

INSTALLATION WITH VIRTUALENV
----------------------------
Make sure python3 is installed. Inotify should be compiled in your kernel.

Clone the git repository to a directory on your computer

    git clone https://github.com/m4rienf/ExtreMon.git extremon

Install a virtualenv

    cd extremon
    virtualenv -p /usr/bin/python3 ENV

Start the newly created environment ENV. You should do this every time you want
to run extremon.

    source ./ENV/bin/activate

Create a directory for enabled plugins. Copy plugins you want to enable.

    mkdir ./plugins-enabled
    cp ./plugins/from_collectd ./plugins-enabled

Edit coven.py. At the bottom of the file, enter you plugins directory and the name of your host

      coven=Coven(path.abspath('./plugins-enabled'),'extre.mon',('224.0.0.1',1249))

Start the coven and see what's missing

    ./coven.py
    # open another terminal to view your syslog output 
    tail -f /var/log/syslog # or whatever your syslog writes to

Install missing python modules eg:

     pip install pyinotify

To see what's passing by:

     ./dump.py

GET YOUR LOCAL collectd INSTALL FORWARDING DATA TO EXTREMON
---------------------------------------------------------------
Update the configuration of the from_collectd plugin. Edit ./plugins-enabled/from_collectd

    ## point to the types.db of your collectd install
    #x3.types.db=/usr/share/collectd/types.db
    ## point to a custom types.db. enter /dev/null if you don't have one
    #x3.types.db.custom=/dev/null
    #x3.out.filter=^.

Once saved, the plugin will be reloaded by the coven.

Add  these lines to your collect configuration:

    LoadPlugin network
    <Plugin "network">
        <Server "224.0.0.1" "1250">
          Interface "lo"
        </Server>
    </Plugin>

Restart collectd

Something went wrong with that request. Please try again.