See www.zabbix.com for the official Zabbix site.

Docs/specs/ZBXNEXT-1253

From Zabbix.org
Jump to: navigation, search

ZBXNEXT-1253

ZBXNEXT-1253

Status: Draft

Summary

Support of flicker-free displaying of screens along with flicker-free screen configuration, so that individual cells will be refreshed independently. Information on the screens will be instantly refreshed so that it will not be detectable by users.

Specification

  • Flicker-free means no full refresh of pages for screen displaying and configuration. Only individual cells should be refreshed.
  • Flicker-free screen should deliver exactly the same look&feel as screens in Zabbix 2.0.
  • All cells must be refreshed individually and *absolutely* instantly, no flickers are allowed. Even if we have 100x100 screen, there will be no flickering during refresh of individual cells.
  • New code base could be reused in the future to make screen elements embeddable into Dashboard.
  • Logic and presentation must be separated for displaying cells of different types. Each cell-type must use separate file(s) for design.
  • Time control will not refresh the whole screen.
  • Time control must be synchronised with zoom box in graphs.
  • Screen refresh ajax queries are managed in sequential queue to prevent browser overload.
  • Create new screens: Plaintext, History, Chart.
  • Clock element does not need to refresh.
  • Timeline control time is formatted and synchronised with charts labels, with graph zoom box. For example: 1h, 1d, 7d, 14d, 1m, 1y. (Now weeks formatted as 7d, 14d).
  • To use flicker-free screens the following pages shall be redesigned: Monitoring->Screens, Monitoring->Slide shows, Monitoring->Graphs, Monitoring->Latest data->History, Monitoring->Latest data->Host screens.
  • Start time and duration is remembered for each screen individually. If it was set to "Now", next time it will open on the remembered place and latest data will be shown.
  • Flicker-free screens do not reload their configuration (table layout, cell content configuration), only data is updated.
  • Monitoring->Screens and Monitoring->Graphs use one namespace "web.screens" for saving user profiles data (such as: period, stime, timelinefixed). Before Monitoring->Graphs used "web.charts" namespace.
  • Screens: Graph, SimpleGraph, Char, History, PlainText will be updated only if time is set to "Now!".

API changes

  • Create new class CTemplateScreenItem with method get(). Require to get host screen items data in event then host is linked to template.