This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

Problem in Setting Up ipMonitor Multi-Status View Application

Hi all,

Today I've trying to setting up ipMonitor Multi-Status View Application. I've trying to follow what were explained in Knowledge Center Tutorials (Get the Most from the ipMonitor Multi-Status View Application) (support.ipmonitor.com/.../0ffce8a8ee2c404a8c023b1e638a9ae5.aspx). Everything is ok until the step "Add an ipMonitor Multi-Status View File". The problem was appear when I trying to access "newly created Status View web page".

 

 



Could anyone please explain to me how it can be happened ? What I have to do to solve the problem ?

Best Regards,
Fauzan

  • Hi Fauzan,


     Is the IIS server where you are tyring to create the Multi-status view page located on the same system as ipMonitor 8.5?  If so, and according to your description, it seems that there might be a conflict of ports, ipMonitor 8.5 is listening on port 443 and the Multi-status page is trying to connect to the web server (IIS) on the same port.  You may want to try the following:  Run the ipMonitor Multi-status configuration tool again and set the connection to the ipMonitor server to use the HTTP port by default 8080.  When creating the web page make sure that it is set to connect to port HTTP only (port 80 for IIS). 


    Let me know if this works.


     Stephane

  • Hi Stephane,

    Is the IIS server where you are trying to create the Multi-status view page located on the same system as ipMonitor 8.5?
    Yes, that's right. They're both on the same server

    If so, and according to your description, it seems that there might be a conflict of ports, ipMonitor 8.5 is listening on port 443 and the Multi-status page is trying to connect to the web server (IIS) on the same port.
    Before, maybe I will explain about my ipMonitor configuration. In the communication settings of ipMonitor Configuration Program, the setting before is below

     

    According to your email, first, I have to remove port 8080 from the list above (please correct me if I'm wrong), then Run the ipMonitor Multi-status configuration tool again and set the connection to the ipMonitor server to use the HTTP port by default 8080. But after I had removed the port 8080 from the picture above, in th ipMonitor multi-mtatus Configuration tool, I can not setting up port 8080 as the port which will be used to connect to the ipMonitor. There's an error message state that "ipMonitor SOAP Error: The underlying connection was closed: Unable to connect to remote server." (I had verified that IIS Service is running.)

    Is there any suggestions ?

    Regards,

    Fauzan 

  • Hi Fauzan,


     According to your email, first, I have to remove port 8080 from the list above (please correct me if I'm wrong), then Run the ipMonitor Multi-status configuration tool again and set the connection to the ipMonitor server to use the HTTP port by default 8080. But after I had removed the port 8080 from the picture above, in th ipMonitor multi-mtatus Configuration tool, I can not setting up port 8080 as the port which will be used to connect to the ipMonitor. There's an error message state that "ipMonitor SOAP Error: The underlying connection was closed: Unable to connect to remote server." (I had verified that IIS Service is running.)


     I did not mention to run the ipMonitor Configuration program and to remove port 8080 from the configuration of the application.  You will need to use the ipMonitor Configuration tool and re-enter this port.  I suggested to run the ipMonitor Multistatus configuration tool (Multi Status View Config Utility) again and set the connection to the ipMonitor server to use the HTTP port 8080 instead of port 443.  When creating the web page make sure that it is set to connect to port HTTP only.   When you request the page it should not be showing an HTTPS connection (as per your first screen capture), it should show an HTTP connection to port 80 only.


     If this does not work, please post the content of the following pages:


    -  \Inetpub\UserConfigs\servers.xml      *you may want to remove the username and password used.


    - \Inetpub\wwwroot\UserPages\xxxx.aspx          *xxxx.aspx to be replace by the name of the page you created using the Multistatus viewer Config utility.


     Cheers,


     Stephane

  • Hi Stephane,

    Thank's before for your suggestions. I have reconfigured ipMonitor web server ports in the ipMonitor Configuration tool same as the screenshot that I was sent before. Then I run again ipMonitor multistatus view configuration tool. Below is step by step screenshot (exclude step 1 of 4 of "Add new view") :

    1. Edit ipMonitor SOAP Server 

      

     2. Add New View (step 2 of 4)

      

    3. Add New View (step 3 of 4)

      

    4. Add New View (step 4 of 4)

      

    5. Below is what was appear in the browser when I trying to acces what was state as "newly created status view web page" in the step 4 of 4 of Add new view.

      

    So I think what was I do still doesn't work. Below is screenshot of the \Inetpub\UserConfigs\servers.xml content :

      

    And below is the content of \Inetpub\wwwroot\UserPages\xxxx.aspx file :

    =====================================================

    <%@ Page language="c#" AutoEventWireup="false" Inherits="MultiStatusView.MultiStatusViewForm" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <html>
    <head>
    <title>ipMonitor MultiStatusView</title>
    <meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
    <meta content="C#" name="CODE_LANGUAGE">
    <meta content="">schemas.microsoft.com/.../ie5" name="vs_targetSchema">
    <meta http-equiv="refresh" content="300">

    <script language="JavaScript">
     function ToggleGroupDisplay(s, id)
     {
      var l = "" + document.location;
      var m = l.match( /(^[^?]+)($|[?#])/ );
      if( m )
      {
       if(window.location == RegExp.$1 + "?id=" + s + id + "&")
       {
           window.location = RegExp.$1;
       }
       else
       {
        window.location = RegExp.$1 + "?id=" + s + id + "&";
       }
      }
      return false;
     }
    </script>
    <style>
     body.main
     {
        font-family: Arial, Helvetica, sans serif;
        font-size: 12px;
      background-color: #FFFFFF;
      scrollbar-3dlight-color: #7C98A4;
      scrollbar-arrow-color: #ffffff;
      scrollbar-base-color: #7C98A4;
      scrollbar-darkshadow-color: #444444;
      scrollbar-face-color: #7C98A4;
      scrollbar-highlight-color: #8EB0BF;
      scrollbar-track-color: #dddddd;
      scrollbar-shadow-color: #607D8A;
      overflow: -moz-scrollbars-vertical;
      margin: 0px 0px 0px 0px;
      text-align: center;
     }           
     div.container
     {
        text-align: left;
        position: relative;
        width: 800px;
        margin: 0 auto;
        overflow: auto;
        -moz-box-sizing: border-box;
     }
     div.server
     {
      width: 100%;
        background-color: #404040;
        color: white;
        font-weight: bold;
        letter-spacing: 1px;
        border-top: 2px solid white;
        border-bottom: 2px solid white;
        border-right: 1px solid white;
      margin: 0 auto;
        padding: 3px 0px 3px 5px;
        text-align: left;
        -moz-box-sizing: border-box;
        overflow: auto;
     }
     
     a.terms:link { text-decoration: none; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; font-style: normal; line-height: 10px; font-weight: normal; font-variant: normal; color: #B3090B; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-align: left; border-style: none; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px;}
     a.terms:visited { text-decoration: none; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; font-style: normal; line-height: 10px; font-weight: normal; font-variant: normal; color: #B3090B; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-align: left; border-style: none; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px;}
     a.terms:hover { text-decoration: underline; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; font-style: normal; line-height: 10px; font-weight: normal; font-variant: normal; color: #000000; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-align: left; border-style: none; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px;}
     
     div.copyright {padding-top: 22px !important; padding-top: 0px;}
     div.refresh{width: 100%; border-bottom: 1px solid white;}
     div.grouptitle{width: 100%; border-bottom: 1px solid white;}
     div.group{width: 100%; border-bottom: 1px solid white;}
     div.monitorlist{width: 760px; font-size: 10px; margin-left: 20px;}
     td.middle {width: 162px !important; width: 166px;}
     table{width: 100%; table-layout: fixed; text-align: center; font-size: 12px;}
     table td{padding-top: 1px; padding-bottom: 1px;}
     tr.grouptitle td{background-color: #808080; color: white; border-right: 1px solid white; font-weight: bold; letter-spacing: 1px;}
     td.groupindent{padding-left: 10px; text-align: left;}
     tr.groupup td{background-color: #66B55A; cursor: pointer; border-right: 1px solid white;}
     tr.groupwarn td{background-color: #F8D539; cursor: pointer; border-right: 1px solid white;}
     tr.groupdown td{background-color: #E4180D; color: white; cursor: pointer; border-right: 1px solid white;}
     tr.grouplost td{background-color: #8F0808; color: white; cursor: pointer; border-right: 1px solid white;}
     tr.groupunknown td{background-color: #E6EBEF; cursor: pointer; border-right: 1px solid white;}
     tr.monitortitle td{background-color: #808080; color: white; font-size: 12px; font-weight: bold; border-right: 1px solid white; border-top: 2px solid white; border-bottom: 1px solid white; padding-top: 1px; padding-bottom: 1px; }
     td.monitorindent {text-indent: 10px; text-align: left; width: 453px !important; width: 59%;}
     tr.up td{background-color: #66B55A; border-right: 1px solid white;  border-bottom: 1px solid white; font-size: 12px;}
     tr.warn td{background-color: #F8D539; border-right: 1px solid white;  border-bottom: 1px solid white; font-size: 12px;}
     tr.lost td{background-color: #8F0709; color: white; border-right: 1px solid white;  border-bottom: 1px solid white;}
     tr.down td{background-color: #E4180D; color: white; border-right: 1px solid white;  border-bottom: 1px solid white;}
     tr.disabled td{background-color: #E6EBEF; border-right: 1px solid white;  border-bottom: 1px solid white;}
     tr.uninitialized td{background-color: #E6EBEF; border-right: 1px solid white;  border-bottom: 1px solid white;}
     tr.maintenance td{background-color: #E6EBEF; border-right: 1px solid white;  border-bottom: 1px solid white;}
     tr.suspended td{background-color: #E6EBEF; border-right: 1px solid white;  border-bottom: 1px solid white;}
    </style>

    </head>

    <body MS_POSITIONING="GridLayout" class="main">
     <form id="Form1" method="post" runat="server">
      <div class="container">
            <div><a href="">www.ipmonitor.com/"><img  border="0" src="logo.png" id="logo"></a></div>
      <asp:repeater id="repeaterGetServers" runat="server" EnableViewState="False">
      <ItemTemplate>
       <div id=<%# ((System.Data.DataRowView)Container.DataItem)["servername"] %> class="server">
          ipMonitor Server :: <%# ((System.Data.DataRowView)Container.DataItem)["servername"] %>
       </div>
       <asp:Repeater id="repeaterGetGroups" runat="server" EnableViewState="False">
       <HeaderTemplate>
       <div id='divgrouptitle' class="grouptitle" >
        <table cellpadding=0 cellspacing=0>
         <tr class='grouptitle'>
          <td width=300 class="groupindent">Group Name</td>
          <td>Total</td>
          <td>Up</td>
          <td>Warn</td>
          <td>Down</td>
          <td>Lost</td>
          <td>Offline</td>
         </tr>
        </table>
       </div>
       </HeaderTemplate>
       <ItemTemplate>
        <div id='group<%# ((System.Data.DataRowView)((RepeaterItem)Container.Parent.Parent).DataItem)["servername"]  %><%# ((System.Data.DataRowView)Container.DataItem)["groupid"] %>' class="group" onclick='return ToggleGroupDisplay( "<%# ((System.Data.DataRowView)((RepeaterItem)Container.Parent.Parent).DataItem)["servername"]  %>","<%# ((System.Data.DataRowView)Container.DataItem)["groupid"] %>" );'>
         <a href="?id=<%# ((System.Data.DataRowView)((RepeaterItem)Container.Parent.Parent).DataItem)["servername"]  %><%# ((System.Data.DataRowView)Container.DataItem)["groupid"] %>#group<%# ((System.Data.DataRowView)((RepeaterItem)Container.Parent.Parent).DataItem)["servername"]  %><%# ((System.Data.DataRowView)Container.DataItem)["groupid"] %>"></a>
         <table cellpadding=0 cellspacing=0>
          <tr class="group<%# ((System.Data.DataRowView)Container.DataItem)["groupstatus"] %>">
           <td width=300 class="groupindent"><%# ((System.Data.DataRowView)Container.DataItem)["groupname"] %></td>
           <td><%# ((System.Data.DataRowView)Container.DataItem)["groupmtotal"] %></td>
           <td><%# ((System.Data.DataRowView)Container.DataItem)["groupmok"] %></td>
           <td><%# ((System.Data.DataRowView)Container.DataItem)["groupmwarn"] %></td>
           <td><%# ((System.Data.DataRowView)Container.DataItem)["groupmdown"] %></td>      
           <td><%# ((System.Data.DataRowView)Container.DataItem)["groupmlost"] %></td>
           <td><%# ((System.Data.DataRowView)Container.DataItem)["groupmoffline"] %></td>
          </tr>
         </table>
         <asp:Repeater Visible=True id="repeaterGetMonitors" runat="server" EnableViewState="False" >
         <HeaderTemplate>
          <div class="monitorlist">
           <table cellspacing=0 cellpadding=0><tr class='monitortitle'><td class="monitorindent">Monitor Name</td><td class="middle">Monitor Type</td><td>Monitor Status</td></tr></table>
           <table cellspacing=0 cellpadding=0>
         </HeaderTemplate>
         <ItemTemplate>
          <tr class="<%# ((System.Data.DataRowView)Container.DataItem)["monitorstatus"] %>">
           <td class="monitorindent"><%# ((System.Data.DataRowView)Container.DataItem)["monitorname"] %></td>
           <td class="middle"><%# ((System.Data.DataRowView)Container.DataItem)["monitortype"] %></td>
           <td><%# ((System.Data.DataRowView)Container.DataItem)["monitorstatus"] %></td>
          </tr>
         </ItemTemplate>
         <FooterTemplate>
          </table>
            </div>
         </FooterTemplate>
         </asp:Repeater>
        </div>
       </ItemTemplate>
       </asp:Repeater>
      </ItemTemplate>
      </asp:repeater>
     </form>
     </div>
     <div class="copyright">
        ipMonitorRegistered is a trademark or registered trademark of ipMonitor Corporation in Canada, the United States of America and other countries.
     </div>
     <div class="copyright">
        <a class="terms" target=_blank href="">www.ipmonitor.com/.../terms_of_use.aspx">&copy; 1996 - 2006 ipMonitor Corporation. All rights reserved. </a>
     </div>
    </body>
    </html>

    ================================================

    I'm sorry if this reply looks like too long. I hope there's a way to solve the problem. Thank you in advance.

    Regards,

    Fauzan 

  • Is there any suggestions to my last posting ?

    Regards,

    Fauzan 

  • Hi Fauzan,


     Thank you for the update.  We are getting there; the screen capture in the first post was showing a failed login attempt to ipMonitor while the last screen capture of the last post shows that we are trying to go to the proper page:  http://localhost/UserPages/test.aspx


    - If you create a web page of your own:  For example index.htm in the UserPages folder, are you able to view the web page?  If not, there is an issue with the Web server not serving the pages in that folder?


     Stephane


     


     


  • Hi Fauzan,


    The errror "Page not found" can be due to a few things:


    1. Your World Wide Web Publishing (W3SVC) service is not started, therefore, IIS is not listening on http://0.0.0.0:80 and serving pages.  In order to test this, create a file called test.htm with the following content and save to c:\inetpub\wwwroot\ (or the root directory of the Default Web Site within IIS):


     <HTML><Body>Hello World!</Body></HTML>


    Now got to http://localhost/test.htm from the ipMonitor system.


    Do you see this page?


    2. The directory where test.aspx is being saved by the Multi-Status View Utility is not saving the file in the correct location.  Compare the path where this file is to the wwwroot directory of the Default Web Site within IIS.  You can also test this by using the test in step 1.

    Let me know what you get.


    Thank you


    Chris Foley

  • Hi Chris,

    • Your World Wide Web Publishing (W3SVC) service is not started, therefore, IIS is not listening on http://0.0.0.0:80 and serving pages.  In order to test this, create a file called test.htm with the following content and save to c:\inetpub\wwwroot\ (or the root directory of the Default Web Site within IIS):

                     <HTML><Body>Hello World!</Body></HTML>

               Now got to http://localhost/test.htm from the ipMonitor system. Do you see this page?

    Yes Chris, I can see the page (http://localhost/test.htm). The file test.htm was being save in directory C:\Inetpub\wwwroot\. And I also have verified that WWW Publishing Service is running.

     

    • The directory where test.aspx is being saved by the Multi-Status View Utility is not saving the file in the correct location.  Compare the path where this file is to the wwwroot directory of the Default Web Site within IIS.  You can also test this by using the test in step 1.

    Chris, the screenshot I had sent before was appear when the file test.aspx was saved in the directory C:\Inetpub\wwwroot\UserPages. And as the screenshot, "the page can not be found".

    I've trying to copy test.aspx into C:\Inetpub\wwwroot\, (to compare with test.htm). And I found the same page, "the page can not be found". It was appeared by http://localhost/test.aspx

    Then I was trying to copy test.htm to C:\Inetpub\wwwroot\UserPages, (the original location of test.aspx which was created by ipMonitor Multi-Status View). When I accessed localhost/.../test.htm, I can found the proper page (Hello World) which was created before.

    So I think there's no problem with the location where the file was saved. I think the problem is about accessing .aspx page.  I'm looking to your opinion and sugeestions. Thank you in advance.

    Best Regards
    Fauzan 

  • Hi Stephane,

    If you create a web page of your own:  For example index.htm in the UserPages folder, are you able to view the web page?  If not, there is an issue with the Web server not serving the pages in that folder?

    Yes, I was able to view the page. You can also see my other posting about this problem.

    Best Regards,

    Fauzan
     

  • Hi Fauzan,


    Keep in mind that some of the Web service extensions (such as the one for .NET) are disabled by default in IIS 6.  Having that said, you likely need to go into the IIS Management Console, click on Web service extensions and make sure the .NET frame web extension is allowed.  More on this is found here:


    http://support.microsoft.com/kb/315122/en-us


    Once this is done, try the aspx file again via a web browser.


    Let me know if this helps.


    Thank you


    Chris Foley - SolarWinds Support Specialist