11 Replies Latest reply on Feb 21, 2014 6:13 AM by madhavan

    Add Node to NCM via .NET

    donfmorrison

      Trying to add a node to NCM using the SDK with C# .NET. Have the following code:

       

      System.Xml.XmlDocument xdoc = new System.Xml.XmlDocument();
      System.Xml.XmlElement[] elem = new System.Xml.XmlElement[1];
      System.Xml.XmlElement xel = xdoc.CreateElement("coreNodeId");
      xel.InnerText = nodeID.ToString();
      elem[0] = xel;
      
      client.Invoke("Cirrus.Nodes", "AddNodeToNCM", elem);
      
      

       

      Following exception results: "Invoke failed, check fault information."

       

      Where can I check this fault info? Seems like this should work from looking around the message board.

       

      Also - Can I set the NCM Global Connection Profile using the SDK in a similar way?

        • Re: C
          Jan Pelousek

          Hello, in general the fault information you should be able to find in the Orion.InformationService.log.

           

          The default location is (dependent on used endpoint):

          • SWISv2: c:\Users\All Users\Solarwinds\InformationService\v2.0\
          • SWISv3: c:\Users\All Users\Solarwinds\InformationService\v3.0\

          However in my mind there come some two reasons why the invoke may fail:

          1. You might be using the v3 endpoint, although this verb is as far as I know available for already released NCM versions only under v2
          2. I remember the only argument for this verb is the coreNodeId, which is Integer, not String - maybe sorry if this is blind path, I'm not very familiar with C# and it's invokation syntax

          I hope it helped.

          Honza

          1 of 1 people found this helpful
          • Re: Add Node to NCM via .NET
            madhavan

            Hello,

             

            Adding to Jan

             

              To set the credentials for NCM,

             

            1. For adding credentials for already added node, use “UpdateSelectedNodeColumnsverb and provide values for Username, Password, EnableLevel, EnablePassword,…
            2. You can also create global connection profile using “AddConnectionProfile” and update ConnectionProfile property in Nodes using “UpdateSelectedNodeColumns”.
              The credentials can be either encrypted or plain.

             

             

            It would be better to encrypt the credentials. To encrypt, use the below mentioned steps  

            1. Use the verb ”EncryptData” against “Cirrus.Settings” entity to encrypt data. To use this connect to V2 certificate swis service.
            2. You can also decrypt the data using the verb “DecryptData”.  
            • Re: Add Node to NCM via .NET
              donfmorrison

              Thanks for path to logs! Here is the error I am getting.

               

              SolarWinds.InformationService.Verb.VerbExecutorException: Verb Cirrus.Nodes.AddNodeToNCM: Not found

               

              Should I be pointing to a different endpoint for NCM? Current end point is: https://server:17778/SolarWinds/InformationService/OrionBasic