23 Replies Latest reply on Sep 2, 2015 11:32 PM by phanikumar_a

    Node Creation Error

    darksu

      After upgrading Solarwinds to the latest stable version (SUM 6.2, and NPM 11.5) we are unable to create a new node using the the SDK with version 1.10.16.

       

      Please find below the error stack trace:

       

      AxisFault

      faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client

      faultSubcode:

      faultString: Create failed, check fault information.

      faultActor:

      faultNode:

      faultDetail:

      {http://schemas.solarwinds.com/2007/08/informationservice}InformationServiceFaultContract:<Message>Operation not implemented for entities mapped to multiple storages.</Message>

       

      Create failed, check fault information.

       

      Best Regards,

        • Re: Node Creation Error
          RichardLetts

          You are probably trying to set custom properties at the time of node creation -- this is nolonger supported.

           

          what does the create node call look like?

            • Re: Node Creation Error
              darksu

              Hello Richard, and thanks for the help.

               

              Please find below the java code i am using in order to create a new node:

               

              SwisClient swisClient = new SwisClient("xx.xxx.xx.xxx", "admin", "xxxxxxxx");

               

              PropertyBag nodeProps = new PropertyBag();

                nodeProps.put("EntityType", "Orion.Nodes");

                nodeProps.put("IPAddress", ipAddress);

                nodeProps.put("IPAddressGUID", "0100007F-0000-0000-0000-000000000000");

                nodeProps.put("Caption", caption);

                nodeProps.put("DynamicIP", false);

                nodeProps.put("EngineID", 1);

                nodeProps.put("Status", 1);

                nodeProps.put("UnManaged", false);

                nodeProps.put("Allow64BitCounters", true);

                nodeProps.put("SysObjectID", "");

                nodeProps.put("MachineType", "Windows");

                nodeProps.put("VendorIcon", "");

                nodeProps.put("ObjectSubType", "WMI");

                nodeProps.put("SNMPVersion", 2);

                nodeProps.put("Community", "public");

                nodeProps.put("Vendor", "Windows");

                nodeProps.put("SysName", sysName);

                nodeProps.put("SNMPV2Only", false);

               

                final String uri = swis.create("Orion.Nodes", nodeProps.getAsSoapPropertyBag());

            • Re: Node Creation Error
              phanikumar_a

              I am facing the same issue. I would be glad if someone can help me in this case.

              Thanks 

                • Re: Node Creation Error
                  madhavan

                  Hi,

                   

                  Can you check whether you are using swis v3 endpoint?

                    • Re: Node Creation Error
                      phanikumar_a

                      Pardon,I am new to this. Could you please tell me where to check that?

                        • Re: Node Creation Error
                          tdanner

                          What URL are you requesting? If it starts with /SolarWinds/InformationService/v3, then you are using a SWISv3 endpoint. If not, you are using the SWISv2 endpoint.

                            • Re: Node Creation Error
                              phanikumar_a

                              Thank you. I updated my URL to: https://" + host + ":17778/SolarWinds/InformationService/v3?wsdl"

                              Now I am receiving following 404 error

                               

                              Aug 24, 2015 12:34:42 PM org.apache.axis.utils.JavaUtils isAttachmentSupported

                              WARNING: Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled.

                              AxisFault

                              faultCode: {http://xml.apache.org/axis/}HTTP

                              faultSubcode:

                              faultString: (404)Not Found

                              faultActor:

                              faultNode:

                              faultDetail:

                                {}:return code:  404

                               

                               

                                {http://xml.apache.org/axis/}HttpErrorCode:404

                               

                               

                              (404)Not Found

                                at org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java:744)

                                at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:144)

                                at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)

                                at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)

                                at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)

                                at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)

                                at org.apache.axis.client.Call.invokeEngine(Call.java:2784)

                                at org.apache.axis.client.Call.invoke(Call.java:2767)

                                at org.apache.axis.client.Call.invoke(Call.java:2443)

                                at org.apache.axis.client.Call.invoke(Call.java:2366)

                                at org.apache.axis.client.Call.invoke(Call.java:1812)

                                at org.tempuri.BasicHttpBinding_InformationServiceStub.queryXml(BasicHttpBinding_InformationServiceStub.java:538)

                                at SwisClient.getOneAlert(SwisClient.java:74)

                                at SwisClient.main(SwisClient.java:36)

                               

                              ------

                               

                              the error is with this line-

                              final String uri = swis.create("Orion.Nodes", nodeProps.getAsSoapPropertyBag());
                                • Re: Node Creation Error
                                  tdanner

                                  It looks like you are working with a modified version of the Java sample from the SDK. I think the URL you should be using is this:

                                   

                                  String address = "https://" + host + ":17778/SolarWinds/InformationService/v3/OrionBasic";

                                    • Re: Node Creation Error
                                      phanikumar_a

                                      Thank tdanner. That link worked but again I got another exception at

                                      final String uri = swis.create("Orion.Nodes", nodeProps.getAsSoapPropertyBag());

                                       

                                      Aug 25, 2015 11:47:39 AM org.apache.axis.utils.JavaUtils isAttachmentSupported

                                      WARNING: Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled.

                                      AxisFault

                                      faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException

                                      faultSubcode:

                                      faultString: org.xml.sax.SAXException: Invalid element in com.solarwinds.schemas._2007._08.informationservice.InformationServiceFaultContract - ExceptionType

                                      faultActor:

                                      faultNode:

                                      faultDetail:

                                        {http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXException: Invalid element in com.solarwinds.schemas._2007._08.informationservice.InformationServiceFaultContract - ExceptionType

                                        at org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:258)

                                        at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)

                                        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(Unknown Source)

                                        at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)

                                        at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)

                                        at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)

                                        at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)

                                        at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)

                                        at org.apache.axis.client.Call.invokeEngine(Call.java:2784)

                                        at org.apache.axis.client.Call.invoke(Call.java:2767)

                                        at org.apache.axis.client.Call.invoke(Call.java:2443)

                                        at org.apache.axis.client.Call.invoke(Call.java:2366)

                                        at org.apache.axis.client.Call.invoke(Call.java:1812)

                                        at org.tempuri.BasicHttpBinding_InformationServiceStub.create(BasicHttpBinding_InformationServiceStub.java:580)

                                        at SwisClient.addNode(SwisClient.java:143)

                                        at SwisClient.main(SwisClient.java:40)

                                       

                                       

                                        {http://xml.apache.org/axis/}hostname:u1---------

                                       

                                       

                                      org.xml.sax.SAXException: Invalid element in com.solarwinds.schemas._2007._08.informationservice.InformationServiceFaultContract - ExceptionType

                                        at org.apache.axis.AxisFault.makeFault(AxisFault.java:101)

                                        at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:701)

                                        at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)

                                        at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)

                                        at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)

                                        at org.apache.axis.client.Call.invokeEngine(Call.java:2784)

                                        at org.apache.axis.client.Call.invoke(Call.java:2767)

                                        at org.apache.axis.client.Call.invoke(Call.java:2443)

                                        at org.apache.axis.client.Call.invoke(Call.java:2366)

                                        at org.apache.axis.client.Call.invoke(Call.java:1812)

                                        at org.tempuri.BasicHttpBinding_InformationServiceStub.create(BasicHttpBinding_InformationServiceStub.java:580)

                                        at SwisClient.addNode(SwisClient.java:143)

                                        at SwisClient.main(SwisClient.java:40)

                                      Caused by: org.xml.sax.SAXException: Invalid element in com.solarwinds.schemas._2007._08.informationservice.InformationServiceFaultContract - ExceptionType

                                        at org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:258)

                                        at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)

                                        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)

                                        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(Unknown Source)

                                        at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)

                                        at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)

                                        ... 11 more

                                       

                                      -----------

                                       

                                      I would be glad if you can help me in resolving this issue.

                                        • Re: Node Creation Error
                                          tdanner

                                          I think what has happened here is that the request was sent to SWIS. In processing that request, SWIS has some kind of error. This error was returned to your program as a SOAP fault message. The Axis web service client failed to parse this fault message, so it threw an exception. The other way to see what error occurred on the SWIS side would be to look at the log file. You can find that at C:\ProgramData\SolarWinds\InformationService\v3.0\Orion.InformationService.log on the Orion server.

                                            • Re: Node Creation Error
                                              phanikumar_a

                                              Thank you. I am able to create the node but can't poll the node details. Could you please help me figure this out?

                                                • Re: Node Creation Error
                                                  juniordev

                                                  Hi phanikumar_a,

                                                  Did you add some required pollers after node create?

                                                  Example:

                                                  "N.Details.SNMP.Generic"

                                                  "N.Uptime.SNMP.Generic",

                                                  "N.Status.ICMP.Native"

                                                  "N.ResponseTime.ICMP.Native"

                                                    • Re: Node Creation Error
                                                      phanikumar_a

                                                      Thank you Juniordev. Yes, I have added the following:

                                                       

                                                      PropertyBag pollerProps = new PropertyBag();

                                                        pollerProps.put("NetObject", "N:" + nodeId);

                                                        pollerProps.put("NetObjectType", "N");

                                                        pollerProps.put("NetObjectID", nodeId);

                                                        pollerProps.put("PollerType", "N.Details.SNMP.Generic");

                                                        swis.create("Orion.Pollers", pollerProps.getAsSoapPropertyBag());

                                                        pollerProps.put("PollerType", "N.Uptime.SNMP.Generic");

                                                        swis.create("Orion.Pollers", pollerProps.getAsSoapPropertyBag());

                                                        pollerProps.put("PollerType", "N.Cpu.SNMP.CiscoGen3");

                                                        swis.create("Orion.Pollers", pollerProps.getAsSoapPropertyBag());

                                                        pollerProps.put("PollerType", "N.Memory.SNMP.CiscoGen3");

                                                        swis.create("Orion.Pollers", pollerProps.getAsSoapPropertyBag());

                                                       

                                                        return uri;

                                                       

                                                      ========

                                                       

                                                      Following are the observations:

                                                       

                                                      1) There is no CPU load data but the Node details page displays an "High CPU utilization" alert which we configured if the CPU load is about 90. I am able to get packet loss information though.

                                                      2) I manually selected the CPU load and Memory from "List Resources" and the node is now Polling the CPU load data. Is there a way to automatically select the resources through SWIS API using Java? Also, if CPU load and Memory is unchecked in the list resources, why was the node displaying "High CPU Utilization" alert? 

                                                      3) Lastly, could you please let me know how to change the "Polling method" from SWIS API using java code. by default the polling method is 'SNMP and ICMP'. Like, If i want to poll it using 'WMI and ICMP' or 'ICMP only'.

                                                       

                                                      Thank you.

                                                        • Re: Node Creation Error
                                                          phanikumar_a

                                                          Hi madhavantdanner juniordev

                                                           

                                                          Thank you for your continued support. I modified my code going through thwack and able to Poll CPU load, memory utilization using SWIS API via Java. Here is my updated code of AddNode method:

                                                           

                                                          ------------

                                                          PropertyBag nodeProps = new PropertyBag();
                                                          nodeProps.put("EntityType", "Orion.Nodes");
                                                          nodeProps.put("IPAddress", "xx.yy.zz.ww");
                                                          nodeProps.put("IPAddressGUID", "FD03A8C0-0000-0000-0000-000000000000");
                                                          nodeProps.put("Caption", "Switch02.telkomtelstra.lab.swis2");
                                                          nodeProps.put("DynamicIP", false);
                                                          nodeProps.put("EngineID", 1);
                                                          nodeProps.put("Status", 1);
                                                          nodeProps.put("UnManaged", false);
                                                          nodeProps.put("Allow64BitCounters", true);
                                                          nodeProps.put("External", false);
                                                          nodeProps.put("SysName", "");
                                                          nodeProps.put("NodeDescription", "");
                                                          nodeProps.put("Location", "");
                                                          nodeProps.put("Contact", "");
                                                          nodeProps.put("IOSImage", "");
                                                          nodeProps.put("IOSVersion", "");
                                                          nodeProps.put("BufferNoMemThisHour", "-2");
                                                          nodeProps.put("BufferNoMemToday", "-2");
                                                          nodeProps.put("BufferSmMissThisHour", "-2");
                                                          nodeProps.put("BufferSmMissToday", "-2");
                                                          nodeProps.put("BufferMdMissThisHour", "-2");
                                                          nodeProps.put("BufferMdMissToday", "-2");
                                                          nodeProps.put("BufferBgMissThisHour", "-2");
                                                          nodeProps.put("BufferBgMissToday", "-2");
                                                          nodeProps.put("BufferLgMissThisHour", "-2");
                                                          nodeProps.put("BufferLgMissToday", "-2");
                                                          nodeProps.put("BufferHgMissThisHour", "-2");
                                                          nodeProps.put("BufferHgMissToday", "-2");
                                                          nodeProps.put("PercentMemoryUsed", "-2");
                                                          nodeProps.put("SysObjectID", "");
                                                          nodeProps.put("MachineType", "");
                                                          nodeProps.put("Vendor", "");
                                                          nodeProps.put("VendorIcon", "");
                                                          nodeProps.put("ObjectSubType", "SNMP");
                                                          nodeProps.put("SNMPVersion", 2);
                                                          nodeProps.put("Community", "");
                                                          final String uri = swis.create("Orion.Nodes", nodeProps.getAsSoapPropertyBag());
                                                          String strNodeId = queryScalar(swis, "SELECT NodeID FROM Orion.Nodes WHERE Uri=@uri", new PropertyBag() {{ put("uri", uri); }});
                                                          int nodeId = Integer.parseInt(strNodeId);
                                                          PropertyBag pollerProps = new PropertyBag();
                                                          pollerProps.put("NetObject", "N:" + nodeId);
                                                          pollerProps.put("NetObjectType", "N");
                                                          pollerProps.put("NetObjectID", nodeId);
                                                          pollerProps.put("PollerType", "N.Details.SNMP.Generic");
                                                          swis.create("Orion.Pollers", pollerProps.getAsSoapPropertyBag());
                                                          pollerProps.put("PollerType", "N.Uptime.SNMP.Generic");
                                                          swis.create("Orion.Pollers", pollerProps.getAsSoapPropertyBag());
                                                          pollerProps.put("PollerType", "N.Cpu.SNMP.CiscoGen3");
                                                          swis.create("Orion.Pollers", pollerProps.getAsSoapPropertyBag());
                                                          pollerProps.put("PollerType", "N.Memory.SNMP.CiscoGen3");
                                                          swis.create("Orion.Pollers", pollerProps.getAsSoapPropertyBag());
                                                          return uri;

                                                           

                                                          ----------

                                                           

                                                          CPU load, memory utilization are getting polled but Avg Response time and packet loss are not. Please help me to get through.

                                                           

                                                          Thanks

                                    • Re: Node Creation Error
                                      javan

                                      Hi Team,

                                       

                                      I experienced the same problem while using NPM version 11.5 but after opening a ticket with support team I was advised to upgrade to version 11.5.2 and the issue got resolved. I guess it was a bug