django-skwissh

A Django application for remotely monitoring servers using SSH

  • Owner: rsaikali/django-skwissh
  • Platform:
  • License:: GNU General Public License v3.0
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

.. image:: http://rsaikali.github.com/django-skwissh/images/skwissh/skwissh-logo.png

More info : Github Pages for Skwissh <http://rsaikali.github.com/django-skwissh/>_

Python Package Index : django-skwissh <http://pypi.python.org/pypi?:action=display&name=django-skwissh>_

Travis : Last build status <http://travis-ci.org/#!/rsaikali/django-skwissh>_

.. image:: https://secure.travis-ci.org/rsaikali/django-skwissh.png?branch=master

New Android application : Find Android Skwissh on Google Play <http://play.google.com/store/apps/details?id=com.saikali.android_skwissh>_

.. image:: http://www.android.com/images/brand/android_app_on_play_logo_large.png

============
Introduction

A Django application for remotely monitoring servers using SSH.

In background (crontabed jobs) Skwissh uses Python Fabric <http://fabfile.org>_ to execute SSH commands, aka. "sensors", get the output and store timestamped values.
Measures are taken every minute.

On the other side, Skwissh is able to display nice charts (linechart, piechart or simple text) with aggregated measures.

Default sensors available (tested on Ubuntu 12.04) :

  • Memory
  • CPU
  • WaitIO
  • Load Averages
  • Disk usage
  • Top

But you can easily add your own ones !!

Follow @skwissh on Twitter <https://twitter.com/skwissh>_ to see latest updates.

============
Installation

Skwissh can be installed from Pypi:

::

pip install django-skwissh

Configure your Django project in a normal way (database, etc...).

Add skwissh and kronos to your Django INSTALLED_APPS:

::

INSTALLED_APPS = (
    ...
    'kronos',
    'skwissh',
)

Add Skwissh to your urls.py:

::

Skwissh

url(r'^skwissh/', include('skwissh.urls')),

Synchronize your database (this command will load defaut sensors through fixtures):

::

./manage.py syncdb

Install Skwissh tasks (will write to your user crontab, thanks to 'django-kronos'):

::

./manage.py installtasks

You can check that 4 crontab job have been configured:

::

crontab -l

If you want to activate i18n (French & English currently supported), follow the next steps:

In your project settings.py, add the Django LocaleMiddleware and set the LANGUAGES variable:

::

MIDDLEWARE_CLASSES = (
...
'django.middleware.locale.LocaleMiddleware',
...
)

LANGUAGES = (
('fr', 'Français'),
('en', 'English'),
)

You're ready to go !
Connect to the application and start configure your servers and sensors !

===========
Screenshots

Load averages

.. image:: http://rsaikali.github.com/django-skwissh/images/skwissh/loads-screenshot.png

Disk usage
~~~~~~~~~~
.. image:: http://rsaikali.github.com/django-skwissh/images/skwissh/diskusage-screenshot.png

Top output
~~~~~~~~~~
.. image:: http://rsaikali.github.com/django-skwissh/images/skwissh/top-screenshot.png

Server edition

.. image:: http://rsaikali.github.com/django-skwissh/images/skwissh/editserver-screenshot.png

Sensor edition

.. image:: http://rsaikali.github.com/django-skwissh/images/skwissh/editsensor-screenshot.png

=======
Credits
=======

* Uses Django 1.4.1 (https://www.djangoproject.com).
* Uses Django applications and addons :

  - django-kronos (https://github.com/jgorset/django-kronos) from Johannes Gorset (https://github.com/jgorset).
  - django-extra-views (https://github.com/AndrewIngram/django-extra-views) from Andrew Ingram (https://github.com/AndrewIngram). 

* Uses Fabric (http://fabfile.org) SSH Python library.
* Uses jqPlot (http://www.jqplot.com) jQuery plotting and charting library.
* Uses Zurb Foundation (http://foundation.zurb.com) responsive CSS/JS/HTML bootstrap.
* Includes icons from TheNounProject (http://thenounproject.com).

Main metrics

Overview
Name With Ownerrsaikali/django-skwissh
Primary LanguageJavaScript
Program languagePython (Language Count: 3)
Platform
License:GNU General Public License v3.0
所有者活动
Created At2012-08-19 14:35:09
Pushed At2018-03-11 09:01:15
Last Commit At2014-02-10 13:45:24
Release Count5
Last Release Namev0.0.8 (Posted on 2012-09-23 17:22:45)
First Release Namev0.0.4 (Posted on 2012-08-26 12:57:19)
用户参与
Stargazers Count107
Watchers Count15
Fork Count32
Commits Count174
Has Issues Enabled
Issues Count16
Issue Open Count6
Pull Requests Count5
Pull Requests Open Count3
Pull Requests Close Count4
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private