This project is not maintained anymore
Please consider using:
- Zabbix dashboards - https://www.zabbix.com/documentation/3.4/manual/web_interface/frontend_sections/monitoring/dashboard
- Zabbix plugin for Grafana dashboard - https://github.com/alexanderzobnin/grafana-zabbix
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.
- Django 1.5.*, 1.6.*, 1.7.*
- Python 2.6.8+, 2.7.*
- 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
- 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
- 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'),
)
- Add to urls.py:
from django.contrib.auth.views import login, logout
urlpatterns = patterns('',
# ...
url(r'^$', include('zbx_dashboard.urls')),
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')),
)
- Run:
$ python manage.py syncdb
This creates a few tables in your database that are necessary for operation.
- Make
static
directory in your projects' root directory and run:
$ python manage.py collectstatic
- Test the application. Run the development server:
$ python manage.py runserver 0.0.0.0:5000
Demo site: http://boyard.pp.ua
login: admin, password: admin