Publishing ISA Reports on your Sharepoint site

Here’s the problem. You want to look at your firewall reports regularly. You have gone so far as to set up ISA to publish the daily and monthly reports to a directory on the server but getting to yesterday’s report is a real pain in the butt. It would be nice to send the report via email as a pdf like Trend does or to have it appear on the home page of your sharepoint site. Although I may do the email option in the nearby future I have already completed the second option. Here is how I did it.

  1. Publish the ISA reports you are interested in to a directory if you have not already done it.
  2. Add a virtual directory to your default web site and point it at your report directory. For this example I will use srv1 as the server name and isa as the virtual directory name. This virtual directory points to my ISA reports directory located at h:\reports. To get to the Daily report for 4/25/2007 I would use the following URL, http://srv1/isa/Daily_(4.25.2007-4.25.2007)/report.htm. As you can see entering this URL can get pretty tedious.
  3. To solve this problem I created a small web page with some javascript that calculates the URL to yesterday’s ISA report and then redirects you there. I called that page, daily.htm, and put it in the Reports directory. So if I wanted to see yesterday’s ISA report, I would enter the following URL into my browser, http://srv1/isa/daily.htm, and the latest ISA daily report would pop up.
  4. Now since we have a URL that will always point to the latest ISA daily report, the Page Viewer Web Part becomes a simple solution to the problem. The Page Viewer Web Part gives me a peak at the Daily report and it makes it easy for me to browse the rest of the report. I created a similar web page that produces Monthly report. I put links to both pages and the directory in my Sharepoint Links list and My Favorites.

Although I used this technique for looking at firewall reports it could be easily modified to show a web page with key business indicators that you create daily, weekly, or monthly.

Here is the code for the daily.htm web page.

< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en_US" lang="en_US">
<head>
<meta name="generator" content="HTML Tidy" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script type="text/javascript">
//< !&#91;CDATA&#91;
function getRptDate()
{
var now = new Date();
var ydate = new Date(now.getTime() - 86400000);
var yday = ydate.getDate();
var ymon = ydate.getMonth() + 1;
var yyear = ydate.getFullYear();
var datetext = ymon + '.' + yday + '.' + yyear + '-' + ymon + '.' + yday + '.' + yyear;
return datetext;
}
//&#93;&#93;>
</script>
</head>
<body>
<script type="text/javascript">
<!--
var d = getRptDate();
var path = 'http://srv1/isa/';
window.location = path +'Daily_(' + d + ')/report.htm';
//-->
</script>
</body>
</html>