BusinessObjects Board

Monitoring BusinessObjects reports and triggers

I developed Dash, a web dashboard, to monitor BusinessObjects XI reports because I needed a simple and reliable way to verify that daily, weekly, and monthly reports are published on schedule. I also wanted to know when reports are unusually late or slow.

Dash is a Python application built with the Django web framework and SQLAlchemy database toolkit. Dash scans the BusinessObjects XI audit database every few minutes and displays report status on a web page and optionally emails progress updates every hour. I found that BusinessObjects doesn’t always email administrators when a report fails to start, or fails while refreshing, so I built a report calendar into Dash that allows it to independently verify that reports are published on schedule. I also wanted to know when my data sources were late, so Dash monitors trigger files created when those data sources are ready for reporting.

I developed Dash using free and portable open source tools where possible. I tested Dash on Apache web server running on Windows XP. Dash stores report schedules and history in a PostgreSQL database and connects to a BusinessObjects repository on Oracle. It shouldn’t be difficult to host Dash on Mac OS X, Linux, or AIX, and your favorite database.

I am willing to make Dash open source if there is interest. You need to be comfortable with (or willing to learn) Python, Apache, and SQL to install and configure Dash.

Here are a few screenshots:

Dash - Report Status

The Reports web page shows a list of reports due today. Reports published later than usual or that take longer than usual to refresh are highlighted in orange. You can review the status of reports on any other day, or in another BusinessObjects repository using the controls at the top of the page.

Dash - Source Status

The Sources web pages shows a list of trigger files due today. Trigger files published later than usual are highlighted in orange.

Dash - Alert email

Dash optionally emails a progress message hourly until all reports due today are published. The message shows report status:

and source status:

I would like to hear how you monitor BusinessObjects reports, and I welcome your comments about Dash.

David


David Peckham (BOB member since 2009-09-28)

Looks excellent!

Would be really useful to me, would save a lot of effort!

Any chance of making it available please?


Ottoman :uk: (BOB member since 2002-10-04)

Very interesting tool/project. better be moved to BOB’s uploads.

Looking forward to this. :smiley:

Regards,

John Vincent.


jvmauricio :philippines: (BOB member since 2009-08-03)

I use a similar custom-built app built by a fellow BOB member. Quite an excellent tool and far better than BO’s “Instance Manager”.

Your tool looks great too… look forward to seeing it in action :smiley:


Diane1969 :uk: (BOB member since 2007-01-18)

Hi David,

The tool looks great!

I have few questions:

  1. Does it monitor all scheduled reports or you can set which reports will be monitored by the tool?

  2. Can you set more emails where the hourly report about progress is sent to?

  3. Where do you set what does it mean “late” for reports and triggers to be highlighted in orange? Is it hardcoded in the source code or are there any configurable parameters of the tool?

  4. Is there anything needs to be installed besides BOE to have this tool working?

and the last one

  1. Where can we see the tool released as an open source? :slight_smile: If/when you decide to do so then please use BOB’s Uploads section here:
    http://www.forumtopics.com/busobj/viewforum.php?f=113

Thanks for sharing.


Marek Chladny :slovakia: (BOB member since 2003-11-27)

Thank you all for sharing your feedback and tips.

I should mention that Dash has an admin UI. I didn’t include screenshots, but imagine a UI for entering your report schedules, designating which reports are “production” reports, and searching and editing report and trigger file history.

jvmauricio, Ottoman, and Marek:
At the moment, Dash doesn’t have a downloadable installer – you must download the source and install and configure it yourself. If I release Dash as open source, I will create a project on Google Code and you will be able to get the source and installation instructions there.

Diane1969:
Thank you for the link to Rachidb’s VBA macros. I’m interested in leveraging that technique to read report schedules into Dash’s calendar. That could save Dash users the trouble of configuring this by hand.

Marek:
[list=1:17c2be053f]
[:17c2be053f]Dash monitors all reports, but you choose which reports are “production” reports – these are the reports that appear on the Reports page and in the progress email. Other reports are considered non-production, or user documents, and appear on the User Documents page. See the “user documents” menu in the first and second screenshots.
[
:17c2be053f]You can send the progress email to as many recipients as you like, including distribution lists. Dash uses SMTP to connect to your email server (I use Exchange, but any SMTP provider should work). Recipients are hard-coded for now, but I’m planning to make this configurable through the Dash admin web pages.
[:17c2be053f]The thresholds are hard-coded today, but I’m planning to make these configurable through the admin pages.
[
:17c2be053f]Dash requires Python 2.6.2, a web server, a WSGI interface, and a database to store schedules and history. Dash should work with web servers that support WSGI. I use Apache and the mod_wsgi adapter module, and you should be able to use my Apache and WSGI configuration files with minor modifications. You also need to install a Python DBAPI driver for the database that hosts your BusinessObjects repository. At the moment, Dash only requires access to your BusinessObjects audit database. It does not use the BusinessObjects SDK, so you don’t need to install the BusinessObjects client on the same computer. It may make sense to use the SDK in the future, so this may change.
[/list]


David Peckham (BOB member since 2009-09-28)