I used Uptime.kix from helpdesk.kixtart.org and I am trying to modify it. I would like to use the uptime command with the /d switch. There is only one extra field I want out of the up time and that is the % number. I am trying to get the server, days up, and percentage then roll it into the webpage. I have ran this script against kixstrip420 and its not out putting any errors. Am I overlooking something simple. I have tried various things and can not get any data into the html page.
Any help would be great, thanks
Code:
; 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 = "C:\Inetpub\Uptime\Servers.txt"
$IniFile = "C:\Inetpub\Uptime\Uptime.ini"
$HTMLfile = "C:\Inetpub\Uptime\Uptime.html"
;----- Getting Uptime stats from Servers and Writing values to the ini-file -----
; This section reads the list of servers
$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)
; This section reuns the uptime command against the list of servers
$serverliste = $srvlist - 1
$counter = $counter + 1
Shell '%comspec% /c "uptime.exe /d:04/01/2004 \\$server" >C:\uptime.txt'
If Open(3,"C:\uptime.txt") = 0
$x = ReadLine(3)
$day = Val(SubStr("$x",InStr("$x","Day") + 5,3))
EndIf
If Open(3,"C:\uptime.txt") = 0
$x = ReadLine(3)
$Percent = Val(SubStr("$p",InStr("$p","Total"))
EndIf
$nul = Close(3)
;Del "C:\uptime.txt"
If Exist($IniFile)
$result = WriteProfileString($IniFile,"$server","Uptime",$day)
EndIf
If Exist($IniFile)
$result2 = WriteProfileString($IniFile2,"$server","Perctenage",$percent)
EndIf
$server = ReadLine(1)
loop
$nul = close(1)
;----- Generating HTML-file with graphs based on Uptime days -----
If RedirectOutput("$HTMLfile",1) = 0
? "<html>"
? "<head>"
? "<STYLE>"
? "BODY {"
? " font-size:10 pt;"
? " font-family: Verdana;"
? "}"
? "H3 {"
? " font-size:12 pt;"
? " font-family: Verdana;"
? "}"
? "TH {"
? " font-family : Verdana;"
? " font-size : 12;"
? "}"
? "TD {"
? " font-family : Verdana;"
? " font-size : 12;"
? "}"
? "</STYLE>"
? "</head>"
? "<body>"
? "<br>"
? "<H3>Uptime for Servers</H3>"
?"<Table border=0>"
?"<TH align=Left width=150>Server</TH><TH align=Left colspan=2>Uptime</TH><TH align=Right colspan=10 width="400">Percentage</TH>"
?"<Table border=0>"
;---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")
$ServerValue = ReadProfileString($IniFile2,"$server","Percentage")
? "<Table border=0>"
? "<TR>"
? "<TD width=150>$server:</TD>"
? "<TD width=100>$ServerValue days</TD>"
? "<TD width=$ServerValue bgcolor=red> </TD>"
? "</TR>"
? "</Table>"
$server = ReadLine(1)
loop
$nul = close(1)
;---LOOP---
? "<br>"
? "<br>"
? "This page was last updated " + @DATE + " - at " + @TIME
? "</body>"
? "</html>"
EndIf