TSM Backup Audit - Windows
Log In or Register to download the BES file, and more.

0 Votes

Versioning - This is the latest version.

1TSM Backup Audit - Windows11/29/2012 10:16:02 AM
2TSM Backup Audit - Windows12/10/2012 7:35:02 AM
3TSM Backup Audit - Windows10/30/2013 12:44:57 PM

Description

This analysis will help detect problems with TSM. This will not accurately determine the health of backups and may not accurately detect the true status of backups, particularly in the case of computers that have not reproted in recently.

This analysis will need to be activated for those that wish to use it.

The latest version of this analysis can be found here:  http://bigfix.me/analysis/details/62

Updates made to this analysis as suggested by JasonWalker


Property Details

ID2994591
StatusQA - Ready for Production Level Testing
TitleTSM Backup Audit - Windows
DomainBESC
KeywordsTSM, Backup Audit, Tivoli Storage Manager
Added by on 10/30/2013 12:44:57 PM
Last Modified by on 10/30/2013 12:44:57 PM
Counters 5642 Views / 29 Downloads
User Rating 1 star 2 star 3 star 4 star 5 star * Average over 0 ratings. ** Log In or Register to add your rating.

Properties

Exists TSM sched log?
Period 12 hours
 
  * Results in a "string"/number
Show indented relevance
exists file "C:\Program Files\Tivoli\TSM\baclient\dsmsched.log"
Last Activity in TSM
Period 12 hours
 
  * Results in a true/false
Show indented relevance
if(not exists file "C:\Program Files\Tivoli\TSM\baclient\dsmsched.log") then "<dsmsched log missing>" else (modification time of file "C:\Program Files\Tivoli\TSM\baclient\dsmsched.log" as string)
Last Sched Success
Period 12 hours
 
  * Results in a true/false
Show indented relevance
if(not exists file "C:\Program Files\Tivoli\TSM\baclient\dsmsched.log") then "<dsmsched log missing>" else if(not exists file "C:\Program Files\Tivoli\TSM\baclient\dsmsched.log" whose(exists lines of it)) then "<file locked by TSM>" else ((lines whose(it contains "' completed successfully." AND it contains " Scheduled event '" AND line number of it = (maximum of line numbers of lines whose(it contains "' completed successfully." AND it contains " Scheduled event '") of file "C:\Program Files\Tivoli\TSM\baclient\dsmsched.log")) of file "C:\Program Files\Tivoli\TSM\baclient\dsmsched.log") as string)
TSM version installed
Period 1 day
 
  * Results in a true/false
Show indented relevance
if(not exists key whose("IBM Tivoli Storage Manager Client" = value "DisplayName" of it) of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of native registry) then "<TSM not installed>" else if(not exists key whose("IBM Tivoli Storage Manager Client" = value "DisplayName" of it AND exists value "DisplayVersion" of it) of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of native registry) then "<TSM dv reg entry missing>" else (value "DisplayVersion" of key whose("IBM Tivoli Storage Manager Client" = value "DisplayName" of it AND exists value "DisplayVersion" of it) of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of native registry as string)
Last Successful Backup
Period 6 hours
 
  * Results in a true/false
Show indented relevance
if(not exists file "C:\Program Files\Tivoli\TSM\baclient\tsmstats.ini") then "<tsmstats file missing>" else (modification time of file "C:\Program Files\Tivoli\TSM\baclient\tsmstats.ini" as string)
TSM Server
Period 1 day
 
  * Results in a true/false
Show indented relevance
if(not exists file "C:\Program Files\Tivoli\TSM\baclient\dsm.opt") then "<no dsm opt>" else if(not exists line whose(it as uppercase contains "TCPSERVERADDRESS") of file "C:\Program Files\Tivoli\TSM\baclient\dsm.opt") then "<no tcpserveraddress>" else ( following text of first "TCPSERVERADDRESS" of (it as uppercase) of line whose( ( if it does not contain "*" then it else preceding text of first "*" of it) as uppercase contains "TCPSERVERADDRESS" ) of file "C:\Program Files\Tivoli\TSM\baclient\dsm.opt" as trimmed string)
TSM Node Name
Period 2 days
 
  * Results in a true/false
Show indented relevance
if(not exists file "C:\Program Files\Tivoli\TSM\baclient\dsm.opt") then "<no dsm opt>" else if(not exists line whose(it as uppercase contains "NODENAME ") of file "C:\Program Files\Tivoli\TSM\baclient\dsm.opt") then "<no nodename>" else (concatenation " " of substrings separated by " " whose (it != "") of following text of first "NODENAME " of (it as uppercase) of line whose(( if it does not contain "*" then it else preceding text of first "*" of it) as uppercase contains "NODENAME ") of file "C:\Program Files\Tivoli\TSM\baclient\dsm.opt" as trimmed string)
Num of crashes
Period 1 day
 
  * Results in a true/false
Show indented relevance
if(not exists file "C:\Program Files\Tivoli\TSM\baclient\dsmcrash.log") then "<no dsmcrash log>" else (number of lines whose (it contains "IBM Tivoli Storage Manager") of file "C:\Program Files\Tivoli\TSM\baclient\dsmcrash.log" as string)
Client exe Version
Period 1 day
 
  * Results in a true/false
Show indented relevance
if(not exists file "C:\Program Files\Tivoli\TSM\baclient\dsm.exe") then "<dsm.exe missing>" else if(not exists version of file "C:\Program Files\Tivoli\TSM\baclient\dsm.exe") then "<dsm.exe version missing>" else (version of file "C:\Program Files\Tivoli\TSM\baclient\dsm.exe" as string)
Last crash?
Period 1 day
 
  * Results in a true/false
Show indented relevance
if(not exists file "C:\Program Files\Tivoli\TSM\baclient\dsmcrash.log") then "<dsmcrash log missing>" else (modification time of file "C:\Program Files\Tivoli\TSM\baclient\dsmcrash.log" as string)
VC++2010x86?
Period 1 day
 
Used in 2 fixlets   * Results in a true/false
Show indented relevance
exists key whose (value "DisplayName" of it as string contains "Microsoft Visual C++ 2010" AND (it >= "10.0.40219" as version) of (value "DisplayVersion" of it as string as version)) of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of x32 registry
VC++2010x64?
Period 1 day
 
  * Results in a true/false
Show indented relevance
if (x64 of operating system AND exists x64 registry) then (exists key whose (value "DisplayName" of it as string contains "Microsoft Visual C++ 2010" AND (it >= "10.0.40219" as version) of (value "DisplayVersion" of it as string as version)) of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of x64 registry) as string else "<n/a - 32bit Machine>"
TSM Sched Service Running?
Period 6 hours
 
  * Results in a true/false
Show indented relevance
exists running service "TSM Scheduler Service"
TSM Client Acceptor Service Running?
Period 6 hours
 
  * Results in a true/false
Show indented relevance
exists running service "TSM Client Acceptor"

Relevance

isWindows (Relevance 1172)
Used in 1116 fixlets and 524 analyses   * Results in a true/false
Show indented relevance
windows of operating system
Used in 2 analyses   * Results in a true/false
Show indented relevance
(exists key whose("IBM Tivoli Storage Manager Client" = value "DisplayName" of it) of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of native registry) OR (exists file "C:\Program Files\Tivoli\TSM\baclient\dsmsched.log") OR (exists file "C:\Program Files\Tivoli\TSM\baclient\tsmstats.ini") OR (exists file "C:\Program Files\Tivoli\TSM\baclient\dsm.opt") OR (exists file "C:\Program Files\Tivoli\TSM\baclient\dsmcrash.log") OR (exists file "C:\Program Files\Tivoli\TSM\baclient\dsm.exe") OR (exists service "TSM Scheduler Service")

Sharing

Social Media:
Share this page on Yammer

Comments

Log In or Register to leave comments!
JasonWalker -
I uploaded my updates at http://bigfix.me/cdb/analysis/94 I check for comments via "*" character on TCPServerAddress and NodeName, and add a check for TSM Client Acceptor service along with the TSM Scheduler service; in my environment a stopped Scheduler and running Client Acceptor is expected.
jgstew -
Thanks Jason. I see why those changes were needed. I'll have to take a look and update my code sometime. You could upload a copy of your modified version to bigfix.me and put a reference to it here.
JasonWalker -
if(not exists file "C:\Program Files\Tivoli\TSM\baclient\dsm.opt") then ".no dsm opt." else if(not exists line whose(it as uppercase contains "TCPSERVERADDRESS") of file "C:\Program Files\Tivoli\TSM\baclient\dsm.opt") then ".no tcpserveraddress." else ( following text of first "TCPSERVERADDRESS" of (it as uppercase) of line whose( ( if it does not contain "*" then it else preceding text of first "*" of it) as uppercase contains "TCPSERVERADDRESS" ) of file "C:\Program Files\Tivoli\TSM\baclient\dsm.opt" as trimmed string) I changed the "TCPSERVERADDRESS" comparisons to not contain a trailing space (because mine contain a trailing tab instead), and to look sort out the lines containing a comment (delimited by "*" character), and to trim the result (my results contained tabs and spaces)
JasonWalker -
I'm having trouble in a couple of cases with the dsm.opt parsing - 1) DSM.OPT contains comments, like * TCPSERVERAddress - set to our standard TCPSERVERAddress 192.168.1.1 2) Cases where we have parameter[tab]value I worked around this in my copy of the fixlet but cant seem to post code in the comments block.
jgstew -
Some other info found here as well: HKEY_LOCAL_MACHINE\SOFTWARE\IBM\ADSM
jgstew -
Info about the TSM Scheduler is typically located here: HKLM\SYSTEM\CurrentControlSet\services\TSM Client Scheduler
jgstew -
at the moment the error messages are showing up as 'then ""' above, but the error messages are actually there, just being mistaken for HTML tags since they are currently enclosed in <>