My Veeam Reporting Journey

05/04/2017

This all started when I got a new job about 8 months ago …

When I began, one of my tasks was to make the backup reporting process easier.

At that time it was a number of emails sent from the servers in HTML format. These then had to be copied and pasted into a spreadsheet where a vLookup would update a report on their status. Needless to say this was time consuming, not least trying to find the reports amongst the 200+ individual job status updates.

In the beginning …

A lonely powershell script ran on 4 servers. It created a CSV & FTP’d it to a central location, with a second script consolidating all 4 files into one. This was then collected using a desktop script to populate the spread sheet.

Season Two:

The requirement now is that the Service Desk run the reports & inform 2nd line if there is a problem. A menu is introduced & all the script functions are moved to a separate ‘functions’ script. The main script is adapted to detect Mondays & adjust the days accordingly.

Attempting to adapt the script to detect holidays. Pop-up added to adjust days off, but would like to automate. This has now been abandoned for a running database so the need to capture holidays is no longer there.

Season Three:

Create a new script to pull the backup data straight from the individual Veeam databases, as the current script is hard to edit without breaking. Once collected, the data is again consolidated, then injected into a MySQL database. This still happens hourly with a command set to strip all entries for that day before injection, therefore eliminating duplicate entries.

Season Four:

Create a PHP query page so that the database can be easily searched. This way the spread sheet can be retired as historical, and the database will become the master storage.

In Summary …

I am breaking this up as not all of you will have an Ubuntu server you can put MySQL on to test. Some of you might just need a quick fix.

If you have read this far, I hope it helps. There are many hours involved in these scripts, thankfully I was paid for most of them. I am sharing this in the hope it will save someone some time.

If credits were inserted in code I have tried to retain them, as I hope people do with me. If I have left your name off a piece of code, I apologise. But when these were written time was of the essence, if it worked, it got copied. Thank you to all who blogged, posted in forums, & contributed to the code in these scripts.