Skip to main content

Simple Django applicattion that provides an alternative to the Zabbix screens.

Project description

Downloads Latest Version Travis CI

zbx_dashboard

zbx_dashboard is a simple Django applicattion that provides an alternative to the Zabbix screens. It allows users who are not registered in Zabbix being able to view the graphs and (in the future) more data from Zabbix.

Prerequisites

  • Django 1.5.*, 1.6.*, 1.7.*

  • Python 2.6.8+, 2.7.*

Main features

  • Group graphs in separate dashboards

  • Rearrange graphs on the dashboard

  • Each dashboard and the graph can be provided a brief description

  • Dashboards may belong to different groups of users

Installation

  1. Install latest stable version from PyPI:

$ pip install zbx-dashboard

Or latest stable version from GitHub:

$ pip install -e git+https://github.com/banzayats/zbx-dashboard@stable#egg=zbx-dashboard
  1. Edit your projects’ Django settings:

INSTALLED_APPS = (
    'admin_tools',
    'admin_tools.theming',
    'admin_tools.menu',
    'admin_tools.dashboard',
    'tinymce',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'zbx_dashboard',
)

STATIC_ROOT = os.path.join(BASE_DIR, 'static')

LOGIN_REDIRECT_URL = '/boards'

# Set up your Zabbix server credentials
ZABBIX_URL = 'https://zabbix.org/zabbix/'
ZABBIX_USER = 'guest'
ZABBIX_PASS = ''

# TinyMCE
TINYMCE_DEFAULT_CONFIG = {
    'mode': 'exact',
    'theme': "advanced",
    'relative_urls': False,
    'width': 400,
    'height': 200,
    'plugins': 'inlinepopups,preview,media,contextmenu,paste,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras',
    'theme_advanced_buttons1': 'fullscreen,|,bold,italic,underline,strikethrough,|,sub,sup,|,bullist,numlist,|,outdent,indent,|,formatselect,removeformat,|,preview,code',
    'theme_simple_toolbar_location': 'top',
    'theme_advanced_toolbar_align': 'left',
}

LOCALE_PATHS = (
    os.path.join(BASE_DIR, 'locale'),
)
  1. Add to urls.py:

from django.contrib.auth.views import login, logout

urlpatterns = patterns('',
    # ...
    url(r'^admin_tools/', include('admin_tools.urls')),
    url(r'^boards/', include('zbx_dashboard.urls', namespace="boards")),
    url(r'^accounts/login/$',  login, name='login'),
    url(r'^accounts/logout/$', logout, name='logout'),
    url(r'^tinymce/', include('tinymce.urls')),
)
  1. Run:

$ python manage.py syncdb

This creates a few tables in your database that are necessary for operation.

  1. Make static directory in your projects’ root directory and run:

$ python manage.py collectstatic
  1. Test the application. Run the development server:

$ python manage.py runserver 0.0.0.0:5000

Demo

Demo site: http://boyard.pp.ua

login: admin, password: admin

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zbx-dashboard-0.1.1.tar.gz (412.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page