Giter Site home page Giter Site logo

jmbreuer / pymunin Goto Github PK

View Code? Open in Web Editor NEW

This project forked from aouyar/pymunin

0.0 1.0 0.0 739 KB

Python Module for developing Munin Multigraph Monitoring Plugins.Multigraph Plugins for Apache Web Server, Apache Tomcat, APC PHP Cache, PHP FPM (Fast Process Manager), Asterisk, FreeSWITCH, Lighttpd, Memcached, MySQL Database, Nginx, NTP, PostgreSQL Database, CPU Utilization, Memory Utilization, Disk Usage, Disk I/O, Network Interfaces, Network Connections, Processes and Threads, etc.

Home Page: http://aouyar.github.com/PyMunin

License: GNU General Public License v3.0

PHP 0.14% Python 99.86%

pymunin's Introduction

PyMunin - Python Multigraph Munin Plugins

About

Python Module for developing Munin Multigraph Monitoring Plugins.

More detailed documentation for the project and sample graphs for plugins are published in the PyMunin Project Web Page

Regular Munin Plugins employ one-plugin one-graph logic and require the execution of a script for data retrieval for each graph. Multigraph plugins permit retrieval of data for multiple graphs in one execution run (one-plugin many-graphs), reducing the processing time and delay for the fetch cycle significantly. More information on Multigraph Plugins can be found in the Munin Wiki:

The plugins consist of the following components:

  • The pymunin module (./pymunin) implements the base classes for developing Munin plugins.
  • The plugin logic is implemented in the plugin scripts in ./pymunin/plugins.
  • The actual data retrieval logic is separated from the plugins to facilitate code reuse. Individual modules in the directory ./pysysinfo implement classes for getting the monitoring data and returning them in dictionary objects. The separation of the data retrieval logic should facilitate the use of the same code in other monitoring solutions.

Although the solution is focused on implementing Multigraph Plugins the module also supports simple single graph plugins.

For information on other projects you can check my GitHub Personal Page and GitHub Profile.

Munin Plugins

Multigraph Monitoring Plugins for the following applications are already included:

  • Apache Tomcat
  • Apache Web Server
  • Asterisk Telephony Server
  • Disk Usage
  • Disk I/O
  • FreeSWITCH Soft Switch
  • Lighttpd Web Server
  • Memcached
  • MySQL Database
  • Network Interface Traffic and Errors
  • Network Connection Stats (netstat)
  • Nginx Web Server
  • NTP - Time Server
  • PHP APC - PHP Cache
  • PHP FPM (FastCGI Process Manager)
  • PostgreSQL Database
  • Processes and Threads
  • Rackspace Cloud
  • Redis Server
  • System Resources (Load, CPU, Memory, Processes, Interrupts, Paging, Swapping, etc.)
  • Sangoma Wanpipe Telephony Interfaces
  • Varnish Cache Web Application Accelerator

Classes for retrieving stats are available, but no plugins have been developed yet for the following:

  • Squid Web Proxy

Documentation

The documentation for the project and sample graphs for plugins will be published in the PyMunin Project Web Page.

Licensing

PyMunin is copyrighted free software made available under the terms of the GPL License Version 3 or later.

See the COPYING file that acompanies the code for full licensing information.

Credits

PyMunin has been developed by aouyar (Ali Onur Uyar).

Some of the people that have knowingly or unknowingly contributed with the development are:

  • Initial packaging of the code was done by mlavin (Mark Lavin). PyMunin is installable pip / easy_install thanks to Mark. :-)
  • The initial design of the solution was inspired by python-munin by samuel (Samuel Stauffer).
  • Many plugins were inspired by existing _Munin Plugins_developed by other people. (Before developing any plugins, I always try to check existing solutions.)

I hope that more people will be using PyMunin for developing plugins in the future.

Installation

The easiest way to install the code is to use pip:

The other option is to download and uncompress the code and execute the included setup.py script for installation: ./setup.py install

For detailed instructions on the installation process please check the project documentation at PyMunin Project Web Page.

Troubleshooting

On error plugins return short error messages by default. Plugin debugging must be enabled to return full trace for exceptions.

To enable plugin debugging in munin-run use the --pidebug option.

Collaboration

I would be happy to receive suggestions on improving the code for developing Munin Plugins. Alternatively you can use the Issues functionality of GitHub to document problems and to propose improvements. You can use the internal messaging system of GitHub or my e-mail address in case you prefer to contact me directly.

I hope that by sharing the code, the existing plugins will get more testing and receive improvements, and many more Multigraph plugins will be developed collaboratively.

I would be glad to receive some sample graphs from anyone using the plugins.

pymunin's People

Contributors

aouyar avatar jmbreuer avatar kolyagora avatar mlavin avatar palewire avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.