jle64 / bareport

BareOS/Bacula volume usage report web interface

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

BareOS/Bacula usage report utility

Static web page, JSON and SVG history and treemap graphs generator for volume usage report on a set of BareOS∕Bacula instances/hosts/jobs.

Screen Screen Screen

Setup

Make sure to have Python 3.7 with Jinja2, Pygal2 and Psycopg2 installed (see requirements.txt). For example on Debian run:

apt install python3-jinja2 python3-psycopg2 python3-pip python3-lxml
pip3 install pygal

Copy bareport.conf.example to bareport.conf and edit it to add:

  • your PostgreSQL instance(s) connection infos (user needs to have read rights on all client databases public.job table).
  • client databases to connect to (facultative, if not specified, will read all databases except the postgres one)
  • the Web data path (make sure that bareport can write into it)

Run bareport.py every day and cleanup json files based on how much history you want to keep, for example from a cron :

0 6 * * * bareport cd /opt/bareport && /opt/bareport/bareport.py
0 12 * * * bareport find /var/www/bareport/json/ -name '*.json-*' -mtime +30 -delete 

Web data are generated into the path chosen in bareport.conf. You'll need a web server to serve the generated static files.

About

BareOS/Bacula volume usage report web interface


Languages

Language:Python 51.9%Language:Jinja 42.9%Language:CSS 5.3%