1 Reply Latest reply on Jan 18, 2013 4:44 AM by petrf

    Customizing Node Details resource in NPM 10.4

    Anthony Ussery

      Hello,

       

      Before I updated to NPM 10.4, I had my Node Details resource customized a little bit for ease of drilling into resources.

      I did this by adding links to custom properties, letting the users click a mailto link to contact the node's infrastructure or application owner, plus a couple hyperlinks exclusive to the node (console, QuickBase, et cetera).

       

      I did this by editing NodeDetails.ascx, as outlined in the following thread:

      SSH from Node details screen

       

      It seems with the update to 10.4, the format's changed a little.  It actually looks a little simpler.  Referencing a Custom Property used to look a little like this:

       

      <tr>

         <td class="Property" width="10"> </td>

         <td class="PropertyHeader">Infrastructure Contact</td>

         <td class="Property"> </td>

         <td class="Property"><a href="mailto:<%#Eval("ObjectProperties[\"InfrastructureOwner\"]")%>"><%#Eval("ObjectProperties[\"InfrastructureOwner\"]")%> </a></td>

        </tr>

       

      Can someone update me with the right way to reference those custom properties as of 10.4?

       

      Thanks!

        • Re: Customizing Node Details resource in NPM 10.4
          petrf

          Hello,

          We changed that resource to load its data asynchronously.

          What needs to be done is:

          1. backup files mentioned bellow

          2. open file AsyncResources.asmx, default location is in "c:\inetpub\SolarWinds\Orion\Services\"

          3. locate string "node.HrefIPAddress" (without quotes)

          4. add ", ObjectProperties = node.ObjectProperties.ToDictionary(de => de.Key.ToLower(), de => de.Value != null ? de.Value.ToString() : string.Empty)" just behind "node.HrefIPAddress" (without quotes)

          5. open NodeDetails.ascx, default location is in "C:\inetpub\SolarWinds\Orion\NetPerfMon\Resources\NodeDetails"

          6. in html template refer to custom property like this: "{{ ObjectProperties.city }}", example:

          <tr>

            <td class="Property" width="10"> </td>

            <td class="PropertyHeader">Infrastructure Contact</td>

            <td class="Property"> </td>

            <td class="Property"><a href="mailto:{{ ObjectProperties.infrastructureowner }}">{{ ObjectProperties.infrastructureowner }} </a></td>

          </tr>

           

          Note that this solution is not supported. Files are replaced when website is configured by Configuration Wizard.