Ad Widget

Collapse

Guide to Install Zabbix Web Service and Set Up PDF Reporting

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • mrboh
    Junior Member
    • Dec 2024
    • 12

    #1

    Guide to Install Zabbix Web Service and Set Up PDF Reporting

    The current documentation is sparse and really not helpful, here is a much easier way to get PDF reporting on Zabbix up and runnnig:

    Install Zabbix Web Service Using Package Manager
    Code:
    sudo apt update
    sudo apt install zabbix-web-service
    sudo systemctl start zabbix-web-service
    sudo systemctl enable zabbix-web-service
    
    sudo systemctl status zabbix-web-service

    Install Google Chrome:
    Code:
    wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
    sudo apt install ./google-chrome-stable_current_amd64.deb
    Configure Zabbix Server:
    Code:
    sudo nano /etc/zabbix/zabbix_server.conf
    #Change / uncomment below:
    StartReportWriters=10
    WebServiceURL=http://127.0.0.1:10053/report

    Configure Zabbix Web Service:
    Code:
    sudo nano /etc/zabbix/zabbix_web_service.conf
    # Uncomment ListenPort
    ListenPort=10053


    Restart Zabbix and Web Service:
    Code:
    sudo systemctl restart zabbix-web-service
    sudo systemctl restart zabbix-server
    Configure Permissions:
    Code:
    sudo mkdir -p /var/lib/zabbix/
    sudo chown zabbix:zabbix /var/lib/zabbix/
    sudo chmod 755 /var/lib/zabbix/

    Now you can generate PDF Scheduled reports.
  • kronicklez
    Junior Member
    • Mar 2025
    • 10

    #2
    Hi,

    Do i need to install another plugin? Or just enough to follow this step only?

    Thanks and appreciate your feedback

    Comment

    • joeartisan
      Junior Member
      • May 2025
      • 2

      #3
      Hi,
      I’m running Zabbix 7.2 with the official zabbix/zabbix-web-service:ubuntu-7.2-latest container and trying to generate scheduled dashboard reports, but I consistently get:

      Cannot fetch data.: websocket url timeout reached

      Has anyone seen the web-service grab the login page instead of the dashboard print view?
      Are there any additional flags, config tweaks, or known patches to ensure headless Chrome actually authenticates (or uses the Guest session) and waits for all WebSocket charts to load?

      Below is a detailed description of my setup, what I’ve tried, and the exact log outputs—any suggestions or pointers would be greatly appreciated.

      Frontend URL (Administration → General → Other):

      zabbix_web_service.conf:
      Code:
      Code:ZBX_ALLOWEDIP: 172.18.0.3
      ZBX_LISTENPORT: 10053
      ZBX_TIMEOUT: 30
      ZBX_TLSACCEPT: unencrypted
      ZBX_IGNOREURLCERTERRORS: 1
      ZBX_DEBUGLEVEL: 5
      zabbix_server.conf:
      Code:ZBX_STARTREPORTWRITERS: 10
      ZBX_WEBSERVICEURL: "http://172.18.0.11:10053/report"​
      Exact Log Output:
      Code:
      Code:2025/05/16 15:31:01.821061 received report request from 172.18.0.3:43366
      2025/05/16 15:31:02.070875 making chrome headless request with parameters url: [URL]http://172.18.0.4:8080/zabbix/zabbix.php?action=dashboard.print&dashboardid=366&[/URL] from=2025-05-15%2000%3A00%3A00&to=2025-05-16%2000%3A00%3A00, width: 1920, height: 1080 for report request from 172.18.0.3:43366
      2025/05/16 15:31:22.672530 Cannot fetch data.: websocket url timeout reached.​

      Comment

      Working...