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',
    'widget_tweaks',
    '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')

TEMPLATE_CONTEXT_PROCESSORS = (
    'django.contrib.auth.context_processors.auth',
    'django.core.context_processors.debug',
    'django.core.context_processors.i18n',
    'django.core.context_processors.request',
    'django.core.context_processors.static',
    'django.contrib.messages.context_processors.messages',
)

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.

Files for zbx-dashboard, version 0.1.2
Filename, size File type Python version Upload date Hashes
Filename, size zbx-dashboard-0.1.2.tar.gz (417.8 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page