We have done this with some custom asp code.  Not that hard really. 
Add a button to a device which sets some string (ie: "Maintenance
Enabled") to say the Info2 field.  Make sure that Info2 not being used
for anything else.

In all of the display pages including top level, map view, device view
- check to see if the string "Maintenance Enabled" is there and use
If..then..else blocks to change colors (we use orange) to illustrate
the alerting is disabled.  Use the %ALERTSET% to disable alerts.

For example, the code to change to Maintenance Enabled would be...

<HTML>

<HEAD>

        <%include% StandardPageHeader.asp>

        <TITLE>WhatsUp Gold - Maintenance</TITLE>


        <%CURRENT_MAP% (%URL_VALUE% map)>
        <%CURRENT_DEVICE% (%URL_VALUE% device)>

<meta http-equiv="Refresh"
content="1;     URL=Device.asp?map=<%URL_ENCODE% (%MAP%
FILENAME)>&device=<%URL_ENCODE% (%DEVICE% UNIQUE_ID)>">

</HEAD>
<BODY>
        <h3><FONT COLOR="#ff4433"><%DEVICE% DISPLAY_NAME></FONT> is being put
into Maintenance Mode.<P>All alerts disabled.</h3>

        <%ALERTSET% (ALERTS_ENABLED,0)>
        <%DEVICESET% (INFO_LINE_2, *** Maintenance Enabled ***>
        <%LOG_USER_EVENT% LOG_CHANGED_HOST> 

</BODY></HTML>

And the code to remove would be..

<HTML>

<HEAD>

        <%include% StandardPageHeader.asp>

        <TITLE>WhatsUp Gold - Maintenance</TITLE>


        <%CURRENT_MAP% (%URL_VALUE% map)>
        <%CURRENT_DEVICE% (%URL_VALUE% device)>

<meta http-equiv="Refresh"
content="1;     URL=Device.asp?map=<%URL_ENCODE% (%MAP%
FILENAME)>&device=<%URL_ENCODE% (%DEVICE% UNIQUE_ID)>">

</HEAD>
<BODY>
        <h3><FONT COLOR="#ff4433"><%DEVICE% DISPLAY_NAME></FONT> is being
removed from Maintenance Mode.<P>All alerts will be reinstated.</h3>

        <%ALERTSET% (ALERTS_ENABLED,1)>
        <%DEVICESET% (INFO_LINE_2, >
        <%LOG_USER_EVENT% LOG_CHANGED_HOST> 

</BODY></HTML>

Works like a charm for us where we have 3+ geographically-dispersed
Network Operations Centers.

-Jason

By the way - I am dissapointed that not more people share custom pages
- so here is my favorite - a combination of code put together over the
past several years... I call it my AllDown page which only shows
devices, services that are in exception, plus any maintenance items...


<%include% StandardPageHeader.asp>

<html>
<head>
<TITLE>Network Issues</TITLE>
<META http-equiv="REFRESH" content="60">
</HEAD>

<body onLoad="goforit()">

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"
SRC="wugjavascript.js"></SCRIPT>
<LINK REL="stylesheet" type="text/css" href="wugstyle.css">

<SCRIPT>
var dayarray=new
Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")
var montharray=new
Array("January","February","March","April","May","June","July","August","September","October","November","December")

function getthedate(){
var mydate=new Date()
var year=mydate.getYear()
if (year < 1000)
year+=1900
var day=mydate.getDay()
var month=mydate.getMonth()
var daym=mydate.getDate()
if (daym<10)
        daym="0"+daym
var hours=mydate.getHours()
var minutes=mydate.getMinutes()
var seconds=mydate.getSeconds()
var dn="AM"
        if (hours>=12)
                dn="PM"
        if (hours>12){
                hours=hours-12
}
if (hours==0)
        hours=12
if (minutes<=9)
        minutes="0"+minutes
if (seconds<=9)
        seconds="0"+seconds
//change font size here
var cdate=dayarray[day]+", "+montharray[month]+" "+daym+",
"+year+"<br><b>"+hours+":"+minutes+":"+seconds+" "+dn+"</b>"
        if (document.all)
                document.all.clock.innerHTML=cdate
        else if (document.getElementById)
        document.getElementById("clock").innerHTML=cdate
        else
                document.write(cdate)
}
if (!document.all&&!document.getElementById)
        getthedate()
function goforit(){
        if (document.all||document.getElementById)
        setInterval("getthedate()",1000)
}
</SCRIPT>




<BODY bgColor="#ffffff">


<TABLE width="100%" cellSpacing=0 cellPadding=3  bgColor="#c0c0c0" border=2>
<TR>
<TD bgColor="#0080c0"><B>NOC - Data Center A</B><br>Network Issues &
Down Devices</TD>
<TD align=right>
<FONT SIZE=2 COLOR=BLACK><span id="clock"></span>

</TD>
<tr><td bgColor="#c0c0c0">
</table>

<table width="100%" cellSpacing=2 cellPadding=1  bgColor="#c0c0c0" border=1>
<tr><td 
width="20">&nbsp;</td><td><b><center>Device</center></b><td><b><center>Status</center></b><td><b><center>Down
since</center></b><td><b><center>Missed
Polls</center></b><td><b><center>Map
Name</center></b><td><b><center>Total Down Time</center></b></tr>

<font bgColor="#FF7777">

<%START_LOADED_MAP_LIST%>
  <%START_DEVICE_LIST%>
    <%IFNOT% IS_DEVICE_UP>
      <tr>
                        <TD align="center">
                        <%IF% (%MATCH% (%DEVICE% ALERT_COUNT, 0))>
                                <%ELSE%>
                                        <%IFNOT% (%MATCH% (%DEVICE% INFO_LINE_2, "*** 
Maintenance Enabled ***"))>
                                                  <IMG ID="plus<%DEVICE% UNIQUE_ID>" 
STYLE="visibility: visible;
display: inline" SRC="plus.gif"         onClick="displayImageMe(1,'<%DEVICE%
UNIQUE_ID>');" WIDTH="11" HEIGHT="10"><IMG ID="minus<%DEVICE%
UNIQUE_ID>" STYLE="visibility: hidden; display: none" SRC="minus.gif"
onClick="displayImageMe(0,'<%DEVICE% UNIQUE_ID>');" WIDTH="11"
HEIGHT="10">
                                
                                        <%ENDIF%>
                        <%ENDIF%>
                        &nbsp;

                 </TD>


      <td bgcolor="<%DEVICE% STATE_COLOR>"><a
href="/device.asp?map=<%MAP% FILENAME>&device=<%DEVICE%UNIQUE_ID>">
      <B><%DEVICE% DISPLAY_NAME></B></a> [<%DEVICE% HOST_TYPE>]</TD>



          <%IF% (%MATCH% (%DEVICE% INFO_LINE_2, "*** Maintenance Enabled ***"))>       
 
                                <TD bgcolor="FFCC66" align=center>
                                        Maintenance Mode
                                </TD>
                                          <TD bgcolor="FFCC66" align=center><%DEVICE%
TIME_OF_LAST_STATE_CHANGE></TD>
                                          <TD bgcolor="FFCC66" align=center><%DEVICE% 
CURRENT_DOWN_COUNT> </TD>
                                          <TD bgcolor="FFCC66" align=center><a 
href=/map2.asp?map=<%MAP%
FILENAME>> <%MAP% NAME> </a>
                                      <TD bgcolor="FFCC66" align=right><%DEVICE% 
DOWN_TIME></TD>
          <%ELSE%>
                                      <TD><center><%DEVICE% STATUS></center></TD>
                                          <TD align=center><%DEVICE% 
TIME_OF_LAST_STATE_CHANGE></TD>
                                          <TD align=center><%DEVICE% 
CURRENT_DOWN_COUNT> </TD>
                                      <TD align=center><a href=/map2.asp?map=<%MAP% 
FILENAME>>
<%MAP% NAME> </a>
                                          <TD align=right><%DEVICE% DOWN_TIME></TD>
          <%ENDIF%>



      </tr>

                
        
                  <%IF% (%MATCH% (%DEVICE% ALERT_COUNT, 0))>
                  <%ELSE%>
                          <TBODY ID="dropView<%DEVICE% UNIQUE_ID>" STYLE="visibility:
hidden; display: none">
                                 <%START_ALERT_LIST%>
                                          <TR BGCOLOR="#ECECEC">
                                          <TD ALIGN="left" border="0" 
BGCOLOR="#c0c0c0" colspan=3><!--
Leave COLUMN1 Blank -->&nbsp;</TD>
                                          <TD ALIGN="left" BGCOLOR="#71e1fe" 
colspan=4>&nbsp;<FONT
SIZE=-1><%DEVICE_ALERT% ENCODED_STRING></FONT></TD>
                                         </TR>
                            <%END_ALERT_LIST%>
                          </TBODY>
                  <%ENDIF%>

        <%ENDIF%>
  <%END_DEVICE_LIST%>

  <%START_DEVICE_LIST%>
      <%START_DEVICE_SERVICE_DOWN_LIST%>


        <tr>
                <TD align="center">
                                &nbsp;
                        <%IF% (%MATCH% (%DEVICE% ALERT_COUNT, 0))>
                        <%ELSE%>
                                  <IMG ID="plus<%DEVICE% UNIQUE_ID>" 
STYLE="visibility: visible;
display: inline" SRC="plus.gif" onClick="displayImageMe(1,'<%DEVICE%
UNIQUE_ID>');" WIDTH="11" HEIGHT="10"><IMG ID="minus<%DEVICE%
UNIQUE_ID>" STYLE="visibility: hidden; display: none" SRC="minus.gif"
onClick="displayImageMe(0,'<%DEVICE% UNIQUE_ID>');" WIDTH="11"
HEIGHT="10">
                        <%ENDIF%>
                        &nbsp;
                </TD>
        <td><a href="/device.asp?map=<%MAP%
FILENAME>&device=<%DEVICE%UNIQUE_ID>">
        <B><%DEVICE% DISPLAY_NAME></B></a></br> </TD>
        <TD><center>Service Down</center></TD>
        <TD align=center bgcolor="#ff77ff" colspan=2><%SERVICE% FULLNAME></TD>
        <td><a href=/map2.asp?map=<%MAP% FILENAME>> <%MAP% NAME> </a>
        <TD align=right><%DEVICE% %SERVICE_STATISTICS% DOWN_TIME></TD>
                </TR>

                 <%IF% (%MATCH% (%DEVICE% ALERT_COUNT, 0))>
                  <%ELSE%>
                          <TBODY ID="dropView<%DEVICE% UNIQUE_ID>" STYLE="visibility:
hidden; display: none">
                                 <%START_ALERT_LIST%>
                                          <TR BGCOLOR="#ECECEC">
                                          <TD ALIGN="left" border="0" 
BGCOLOR="#c0c0c0" colspan=3><!--
Leave COLUMN1 Blank -->&nbsp;</TD>
                                          <TD ALIGN="left" BGCOLOR="#71e1fe" 
colspan=4>&nbsp;<FONT
SIZE=-1><%DEVICE_ALERT% ENCODED_STRING></FONT></TD>
                                         </TR>
                            <%END_ALERT_LIST%>
                          </TBODY>
                  <%ENDIF%>

      <%END_DEVICE_SERVICE_DOWN_LIST%>

  <%END_DEVICE_LIST%>


  <%START_DEVICE_LIST%>
     <%IF% (%MATCH% (%DEVICE% INFO_LINE_2, "*** Maintenance Enabled ***"))>     
         <%IF% IS_DEVICE_UP>
      <tr>
                <TD align="center">
                        <%IF% (%MATCH% (%DEVICE% ALERT_COUNT, 0))>
                                <%ELSE%>
                                        <%IFNOT% (%MATCH% (%DEVICE% INFO_LINE_2, "*** 
Maintenance Enabled ***"))>
                                        <TD align="center">
                                                  <IMG ID="plus<%DEVICE% UNIQUE_ID>" 
STYLE="visibility: visible;
display: inline" SRC="plus.gif"         onClick="displayImageMe(1,'<%DEVICE%
UNIQUE_ID>');" WIDTH="11" HEIGHT="10"><IMG ID="minus<%DEVICE%
UNIQUE_ID>" STYLE="visibility: hidden; display: none" SRC="minus.gif"
onClick="displayImageMe(0,'<%DEVICE% UNIQUE_ID>');" WIDTH="11"
HEIGHT="10">
                                
                                        <%ENDIF%>
                        <%ENDIF%>
                        &nbsp;

    </TD>
 
      <td bgcolor="<%DEVICE% STATE_COLOR>"><a
href="/device.asp?map=<%MAP% FILENAME>&device=<%DEVICE%UNIQUE_ID>">
      <B><%DEVICE% DISPLAY_NAME></B></a> [<%DEVICE% HOST_TYPE>]</TD>



          <%IF% (%MATCH% (%DEVICE% INFO_LINE_2, "*** Maintenance Enabled ***"))>       
 
                                <TD bgcolor="FFCC66" align=center>
                                        Maintenance Mode
                                </TD>
          <%ELSE%>
      <TD><center><%DEVICE% STATUS></center></TD>
          <%ENDIF%>


      <TD bgcolor="FFCC66" align=center></TD>
      <TD bgcolor="FFCC66" align=center></TD>
      <TD bgcolor="FFCC66" align=center><a href=/map2.asp?map=<%MAP%
FILENAME>> <%MAP% NAME> </a>
      <TD bgcolor="FFCC66" align=right></TD>
      </tr>

        <%ENDIF%>
        <%ENDIF%>
  <%END_DEVICE_LIST%>


<%END_LOADED_MAP_LIST%>


</font> </p>
</table>


</td></tr>
</table> <br>

<center>
<B>Helpful Links</b><br>
<a href="/">Whatsup Top Page</a><br>

<script language="javascript">
         var wugGMTOffset = 4;
         var wugTime = "<%time% current_time>"
         var wugHours = wugTime.substring(0,2);
         var wugMinutes = wugTime.substring(3,5);

         var wugDate = "<%time% current_date>"
         var wugYear = wugDate.substring(0,4);
         var wugMonth = wugDate.substring(5,7);
         var wugDay = wugDate.substring(8,10);

         var wugMonthx = wugMonth -1;

         var wuglocalTime = new
Date(wugYear,wugMonthx,wugDay,wugHours,wugMinutes);
         var localTime = new Date();
         var localGMTOffset = localTime.getTimezoneOffset() /60;

// If you use wuglocalTime.toLocaleString, you get the clock from
WUG's clock displayed with the local time offset
// but the seconds portion will always display 00.

         // document.write(localTime.toLocaleString());
         // document.write("<BR>" + " GMT Time Zone Offset is " +
localGMTOffset + " " + "Hours");

         document.write("<BR>" + " The Timezone difference between WUG
and this station is " + (localGMTOffset - wugGMTOffset) + " " +
"Hours");
</script>
<P>
</center>


</body>
</html>



On Wed, 03 Nov 2004 10:56:05 -0500, James Amann <[EMAIL PROTECTED]> wrote:
> Is there anything in WUG or WUG pro to allow an operator to place an
> object in a "Hold State" of some kind?
> 
> Specifically;
> 
> t1. Device is replying to ping
> 
> t2. Device no longer replies to ping, considered "down"
> 
> t3. Device is placed in hold state - Device will be polled but no
> longer propogate alerts (visual / audio).
> 
> **SEE WISH LIST BELOW
> 
> t4. Operator contacts administrator to resolve issue
> 
> t5. Administrator resolves issue, contacts operator with updated
> status
> 
> t6. Operator removes object from hold state, normal polling and
> alerting continues.
> 
> ***WISH LIST
> 
> At this point a log entry is created noting the objects status,
> multiple possible status' would be helpful (unscheduled outage,
> maintenance, etc)
> 
> Web-based status page might display objects in a hold state for
> operator reference
> 
> reminders from object would be helpful too, i.e. when object is placed
> in "hold" operator must enter estimated time of recovery.  At that time
> some form of ntification may be sent to the admin and or operator
> requesting updated status.
> 
> Anyone?
> 
> Please visit http://www.ipswitch.com/support/mailing-lists.html
> to be removed from this list.
> 
> An Archive of this list is available at:
> http://www.mail-archive.com/whatsup_forum%40list.ipswitch.com/
>

Please visit http://www.ipswitch.com/support/mailing-lists.html 
to be removed from this list.

An Archive of this list is available at:
http://www.mail-archive.com/whatsup_forum%40list.ipswitch.com/

Reply via email to