@echo off
rem Batch file to generate and send HTML historical reports from TSM Reporting and Monitorning
rem
rem D. Daun Mar 2011
if "%1" == "" (SET SERVERNAME=SERVER1) ELSE SET SERVERNAME=%1
SET REPPATH=\TSMReports\html_reports
SET TCRPATH=\IBM\AC\products\tcr\bin
SET MAILPATH=\TSMReports
SET ADDRFILE=%MAILPATH%\web_addr_list.dat
SET WEBPATH=\\san360-1\TSMreports
SET WEBPATHID=tsm\Administrator
SET WEBPATHPW=secret
SET DATESTAMP=%date:~10,4%%date:~4,2%%date:~7,2%
SET LOGFILE=%REPPATH%\logs\%SERVERNAME%.%DATESTAMP%.html_reporting.log
SET ERRLOGFILE=%REPPATH%\logs\%SERVERNAME%.%DATESTAMP%.html_reporting.err
SET TCRID=reporter
SET TCRPW=secret
SET EMAILID=report_id
SET EMAILPW=secret
echo ************************************************************************ >> %LOGFILE%
echo -- HTML Reporting run for %SERVERNAME% on %DATE% ---------- >> %LOGFILE%
echo ************************************************************************ >> %LOGFILE%
echo. >> %LOGFILE%
rem Cleanup old reports
echo ---------- Cleanup ---------- >> %LOGFILE%
if not exist %REPPATH%\%SERVERNAME% mkdir %REPPATH%\%SERVERNAME%
del %REPPATH%\%SERVERNAME%\* /q /s >> %LOGFILE%
rem Generate reports
echo ---------- Generate Reports ---------- >> %LOGFILE%
rem Client Top Activity Report
echo Report: Client Top Activity >> %LOGFILE%
SET INDREPPATH=client_top_activity
if not exist %REPPATH%\%SERVERNAME%\%INDREPPATH% mkdir %REPPATH%\%SERVERNAME%\%INDREPPATH%
call %TCRPATH%\trcmd -user %TCRID% -password %TCRPW% -distribute -report "/TSMReports/TSM_client_top_activity" -HTML -location %REPPATH%\%SERVERNAME%\%INDREPPATH%\client_top_activity.html -parameters "Report Period=L7" "Backup Server=%SERVERNAME%" "Number of clients=10" "Activity Type=backup" >> %LOGFILE%
if ERRORLEVEL 1 (echo Report Generation Failed. >> %LoGFILE%) ELSE echo Successfully created. >> %LOGFILE%
echo. >> %LOGFILE%
echo on
rem Client Backup Currency Report
echo Report: Client Backup Currency >> %LOGFILE%
SET INDREPPATH=client_backup_currency
if not exist %REPPATH%\%SERVERNAME%\%INDREPPATH% mkdir %REPPATH%\%SERVERNAME%\%INDREPPATH%
call %TCRPATH%\trcmd -user %TCRID% -password %TCRPW% -distribute -report "/TSMReports/TSM_client_backup_currency" -HTML -location %REPPATH%\%SERVERNAME%\%INDREPPATH%\client_backup_currency.html -parameters "Backup Server=%SERVERNAME%" >> %LOGFILE%
if ERRORLEVEL 1 (echo Report Generation Failed. >> %LoGFILE%) ELSE echo Successfully created. >> %LOGFILE%
echo. >> %LOGFILE%
echo on
rem Server Database Details Report
echo Report: Server Database Details >> %LOGFILE%
SET INDREPPATH=server_database_details
if not exist %REPPATH%\%SERVERNAME%\%INDREPPATH% mkdir %REPPATH%\%SERVERNAME%\%INDREPPATH%
call %TCRPATH%\trcmd -user %TCRID% -password %TCRPW% -distribute -report "/TSMReports/TSM_server_database_details" -HTML -location %REPPATH%\%SERVERNAME%\%INDREPPATH%\server_database_details.html -parameters "Report Period=L7" "Server Name=%SERVERNAME%" >> %LOGFILE%
if ERRORLEVEL 1 (echo Report Generation Failed. >> %LoGFILE%) ELSE echo Successfully created. >> %LOGFILE%
echo. >> %LOGFILE%
echo on
rem Server Resource Usage Report
echo Report: Server Resource Usage >> %LOGFILE%
SET INDREPPATH=server_resource_useage
if not exist %REPPATH%\%SERVERNAME%\%INDREPPATH% mkdir %REPPATH%\%SERVERNAME%\%INDREPPATH%
call %TCRPATH%\trcmd -user %TCRID% -password %TCRPW% -distribute -report "/TSMReports/TSM_server_resource_usage" -HTML -location %REPPATH%\%SERVERNAME%\%INDREPPATH%\server_resource_usage.html -parameters "Report Period=L7" "Server Name=%SERVERNAME%" >> %LOGFILE%
if ERRORLEVEL 1 (echo Report Generation Failed. >> %LoGFILE%) ELSE echo Successfully created. >> %LOGFILE%
echo. >> %LOGFILE%
echo ---------- Open Network Connection ---------- >> %LOGFILE%
net use %WEBPATH% /DELETE >> %LOGFILE%
net use %WEBPATH% %WEBPATHPW% /USER:%WEBPATHID% /persistent:no >> %LOGFILE% 2>> %ERRLOGFILE%
echo ---------- Cleanup Reports on Web Server ---------- >> %LOGFILE%
if not exist %WEBPATH%\%SERVERNAME%\current-2 goto SKIP1
del /s /q /f %WEBPATH%\%SERVERNAME%\current-2\* >> %LOGFILE%
:SKIP1
if not exist %WEBPATH%\%SERVERNAME%\current-1 goto SKIP2
xcopy %WEBPATH%\%SERVERNAME%\current-1\* %WEBPATH%\%SERVERNAME%\current-2 /e /c /i /f /Y >> %LOGFILE%
:SKIP2
if not exist %WEBPATH%\%SERVERNAME%\current-1 goto SKIP3
del /s /q /f %WEBPATH%\%SERVERNAME%\current-1\* >> %LOGFILE%
:SKIP3
if not exist %WEBPATH%\%SERVERNAME%\current goto SKIP4
xcopy %WEBPATH%\%SERVERNAME%\current\* %WEBPATH%\%SERVERNAME%\current-1 /e /c /i /f /Y >> %LOGFILE%
:SKIP4
if not exist %WEBPATH%\%SERVERNAME%\current goto SKIP5
del /s /q /f %WEBPATH%\%SERVERNAME%\current\* >> %LOGFILE%
:SKIP5
echo ---------- Copy Reports to Web Server ---------- >> %LOGFILE%
xcopy %REPPATH%\%SERVERNAME%\* %WEBPATH%\%SERVERNAME%\current /e /c /i /f /Y >> %LOGFILE%
echo ---------- Close network connection ---------- >> %LOGFILE%
net use %WEBPATH% /DELETE >> %LOGFILE%
rem Send Email notification
echo ---------- Send Email Notification ---------- >> %LOGFILE%
echo Sending email notification >> %LOGFILE%
%MAILPATH%\mailsend -d gmail.com -smtp smtp.gmail.com -port 587 -t djdaun@us.ibm.com -l %ADDRFILE% +cc +bc -f reportsdjd@gmail.com -sub "TSM Server %SERVERNAME% Reports Web Update Completed" -starttls -auth-plain -user %EMAILID% -pass %EMAILPW% -M "Reports created on %DATESTAMP% are now available for TSM Server %SERVERNAME% at http://san360-1.wsclab.washington.ibm.com/DailyReports/default.htm" >> %LOGFILE% 2>>&1
if ERRORLEVEL 1 (echo Mail Send Failed. >> %LoGFILE%) ELSE echo Send attempt completed. >> %LOGFILE%
echo. >> %LOGFILE%
echo ---------- Complete run for %SERVERNAME% on %DATE% ---------- >> %LOGFILE%
echo. >> %LOGFILE%
echo. >> %LOGFILE%
echo. >> %LOGFILE%