Skip to content

About

Zabbix Reports is a modern and intuitive module for the Zabbix Web Interface focused on generating and visualizing management reports (daily, weekly, and monthly). It provides a rich, SaaS-inspired interface with dynamic statistics cards, charts, and detailed tables.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

3 Commits

Folders and files

Repository files navigation

Zabbix Reports

Read this in other languages: pt-br

Zabbix Reports is a modern and intuitive module for the Zabbix Web Interface focused on generating and visualizing management reports (daily, weekly, and monthly). It provides a rich, SaaS-inspired interface with dynamic statistics cards, charts, and detailed tables.

Developed by George Filho.


🎯 Main Features

  • Multiple Periods: Generate Daily, Weekly, Monthly reports or use custom date ranges.
  • Dynamic Statistics Cards: KPIs like "Total Problems", "Resolved Problems", "Host Groups", and "Total Hosts" presented with smooth micro-interactions and native SVG icons.
  • Integrated Charts: Quick insights using a Severity Radar Chart and a Problem Distribution Pie Chart.
  • Metrics and TOPs: Automatic rankings (TOP 5/10) of hosts with the most problems, and hosts with the highest CPU and Memory consumption (inline progress bars).
  • PDF Export: Built-in module for generating comprehensive reports in PDF format, ready for management distribution.
  • Native Zabbix Integration: Securely implemented using native Zabbix UI classes (CHtmlPage, CController, CDiv), ready for strict security standards.

📋 Prerequisites

Before installing and using this module, ensure that:

  1. You are running a compatible Zabbix Frontend. (This module features dynamic compatibility to adjust to APIs of different versions).
  2. The web server user (e.g., www-data or apache) has read permissions for the module directory.

🚀 Installation

Installing modules in the Zabbix frontend is simple and fast.

  1. Download or clone this repository: Download the module files to your server.

  2. Copy to the Zabbix modules directory: Move the module folder to the modules directory of your Zabbix web interface. CRITICAL: The folder name must be exactly Module Reports (or as standard in your infrastructure).

    The default path is usually:

    /usr/share/zabbix/ui/modules/Module Reports
    # or
    /usr/share/zabbix/modules/Module Reports
  3. Register the Module in the Frontend:

    • Log into the Zabbix web interface as a Super Admin.
    • Navigate to Administration → Modules.
    • Click the "Scan directory" button in the top right corner.
    • The "Module Reports" module should appear in the list.
    • Click Enable to activate it.

💻 How to Use

After activation, a new menu will be available to facilitate your daily operations.

  1. Navigate to SuporTI → Zabbix Reports in the main menu and select the desired period (e.g., Daily Report).
  2. The screen will automatically load a luxurious, interactive header with global data.
  3. Use the filter box at the top to select a specific host group and update the screen in real time.
  4. Browse the problem cards and alert tables (sortable by columns).
  5. To generate the document, click the top "Export PDF" button which will generate and download the current view formatted for external reading.

🛠️ Technical Details & Development References

This module is built strictly following the official Zabbix Module Development Guidelines:

  • Refactored MVC Architecture:
    • Controllers: Consolidated into actions/ReportView.php and actions/ReportExport.php for maximum performance and code reuse.
    • Views: Located in views/, rendering HTML/PDF reports by consuming static methods from ReportViewHelper.php.
  • UI and SVG Components: Layout styled purely with Vanilla CSS (report_view.css) free from external frameworks (no Tailwind or Bootstrap), with 100% vector icons natively injected via PHP (CRawHtml), bypassing htmlspecialchars sanitization without losing security.
  • Routing: Unified mapping through the manifest.json file.

📂 Directory Structure

This is the standard file structure of the module:

Module Reports/
├── manifest.json                  # Module configuration and routing
├── Module.php                     # Core module class for menu initialization
├── README.md                      # English documentation
├── README_pt_br.md                # Portuguese documentation
├── actions/
│   ├── ReportExport.php           # Unified PDF controller
│   └── ReportView.php             # Unified report view controller
├── assets/
│   ├── css/
│   │   ├── daily-report.css       # General/legacy styles
│   │   ├── pdf_generator.css      # Print document stylesheet
│   │   └── report_view.css        # Responsive SaaS layout stylesheet
│   └── images/
│       ├── image-01.png           # Dashboard screenshots
│       ├── image-02.png
│       ├── image-03.png
│       └── image-04.png
├── lib/
│   ├── ItemFinder.php             # Item search utility
│   ├── LanguageManager.php        # Simple translation system (i18n)
│   ├── PdfGenerator.php           # PDF generation library
│   ├── ProblemFinder.php          # Problem search utility
│   ├── ReportViewHelper.php       # HTML, CSS, SVG, and Chart injection utility
│   ├── ViewRenderer.php           # View rendering helper
│   └── ZabbixVersion.php          # Dynamic Frontend version detection
└── views/
    ├── reports.custom.php         # Custom Period View
    ├── reports.daily.php          # Daily Report View
    ├── reports.monthly.php        # Monthly Report View
    └── reports.weekly.php         # Weekly Report View

🖼️ Screenshots

This section demonstrates the visual capabilities and organization of the module.

1. Main Dashboard View

Main Dashboard

The primary interface demonstrating refined typography, SaaS dashboard pattern card arrangement, and complete replacement with dynamic SVG icons.

2. Chart and Distribution View

Hierarchical Tree

Example of Radar and Pie charts perfectly embedded in smooth frames (soft shadows), ideal for management reports.

3. Alerts Table and Sorting

Tag Filtering

Tables feature an intelligent hover system (smooth scaling) and native column sorting functionality (Severity, Time, etc).

4. Resource Rankings (CPU and Memory)

Advanced Visualizations

Rankings (Top 5 / Top 10) with gradient consumption bars that visually react to infrastructure usage levels, making complex data pleasant to view.


📄 License & Credits

Copyright © 2006-2026 by George Filho.

All rights reserved.

About

Zabbix Reports is a modern and intuitive module for the Zabbix Web Interface focused on generating and visualizing management reports (daily, weekly, and monthly). It provides a rich, SaaS-inspired interface with dynamic statistics cards, charts, and detailed tables.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages