; ScriptName : Uptime.kix - Version 1.2
; Date : 04 December 2001
; Developer : Brian Petersen - http://helpdesk.kixtart.org
; Uses : Servers.txt, Uptime.ini and Uptime.exe
; Description: Generates HTML-file with graphs, based on days since Servers were booted.
; Run this Script once a day on your WebServer.
Break ON
;Modify to match your location of these files...
$ServerFile = "D:\Inetpub\wwwroot\Uptime\Servers.txt"
$IniFile = "D:\Inetpub\wwwroot\Uptime\Uptime.ini"
$HTMLfile = "D:\Inetpub\wwwroot\Uptime\Uptime.html"
;----- Getting Uptime stats from Servers and Writing values to the ini-file -----
$nul = Open(1,"$ServerFile")
$server = ReadLine(1)
While $server <> "EndList"
If Open(2, "$ServerFile") = 0
$srvlist = 0
$read1 = ReadLine(2)
While @ERROR = 0
$read1 = ReadLine(2)
$srvlist = $srvlist + 1
Loop
EndIf
$nul = close(2)
$serverliste = $srvlist - 1
$counter = $counter + 1
Shell '%comspec% /c "uptime.exe \\$server" >C:\uptime.txt'
If Open(3,"C:\uptime.txt") = 0
$x = ReadLine(3)
$day = Val(SubStr("$x",InStr("$x","for") + 5,3))
EndIf
$nul = Close(3)
Del "C:\uptime.txt"
If Exist($IniFile)
$result = WriteProfileString($IniFile,"$server","Uptime",$day)
EndIf
$server = ReadLine(1)
loop
$nul = close(1)
;----- Generating HTML-file with graphs based on Uptime days -----
If RedirectOutput("$HTMLfile",1) = 0
? ""
? "
"
? ""
? ""
? ""
? "
"
? "Uptime for Servers
"
? ""
? "| Server | Uptime | "
;---LOOP---
$nul = Open(1,"$ServerFile")
$server = ReadLine(1)
While $server <> "EndList"
If Open(2, "$ServerFile") = 0
$srvlist = 0
$read1 = ReadLine(2)
While @ERROR = 0
$read1 = ReadLine(2)
$srvlist = $srvlist + 1
Loop
EndIf
$nul = close(2)
$serverliste = $srvlist - 1
$counter = $counter + 1
$ServerValue = ReadProfileString($IniFile,"$server","Uptime")
? ""
? ""
? "| $server: | "
? "$ServerValue days | "
? " | "
? "
"
? "
"
$server = ReadLine(1)
loop
$nul = close(1)
;---LOOP---
? "
"
? "
"
? "This page was last updated " + @DATE + " - at " + @TIME
? ""
? ""
EndIf