This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Problem with UCMDB to ServiceNow push adapter

I have tried to set up an integration of Windows CI using the out-of-the-box Service-Now Push adapter.

 

ServiceNow is accessed via https over proxy and I have checked that I have access from the data flow probe server I am using for the integration.

 

The additional classpath is added according to instructions. My query returns 258 CI´s and my mapping file have the same name as the query according to the instructions and I have also tried with the sample query/mapping.

 

A test run gives the error message pasted below.

 

 

<2014-08-22 13:33:55,433> [ERROR] [AdHoc:AD_HOC_TASK_PATTERN_ID-81-1408707266802] (ExecutionEngineImpl.java:400) - Failed execute ad hoc script: Traceback (most recent call last):
  File "<string>", line 2, in <module>
  File "pushToServiceNow", line 736, in DiscoveryMain
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)

	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)

	at org.python.core.PyReflectedConstructor.constructProxy(PyReflectedConstructor.java:210)


java.lang.Exception: java.lang.Exception: [DiscoveryMain] [processCIs] [processCIs:add] Error connecting to Service-Now while processing CIT <cmdb_ci_win_server>

<2014-08-22 13:33:55,434> [ERROR] [AdHoc:AD_HOC_TASK_PATTERN_ID-81-1408707266802] (AbstractProbeProcessor.java:62) - Failed executing probe request [com.hp.ucmdb.discovery.probe.request.GenericPushProbeRequest] for integration [ServiceNow push test]

 

Does anybody have an idea what could be wrong?

 

Kind regards,

Malin

Parents
  • 0

    Hi Malin,

     

    I have successfully integrated uCMDB 9.05, CUP 14 with Service Now Calgary.

     

    Here are a few things I'm curious about which might lead us to the solution to your problem:

    1: May I know what version of uCMDB you are on ?

     

    2: I have seen this error pop up when we did not set our proxy correctly and because of wrong previleges to write to the S-Now CMDB. So, please check on Proxy Server port and Proxy Server Name/IP.

     

    3: Are you using Direct web services that came out of the box ?

     

    Thanks,

    Praveen

  • 0 in reply to 
    Hi Praveen,
    1: We are on 10.11.224, content pack 14.0.168
    2: I have double checked proxy settings.
    3: We are using the adapter out-of-the box.
    Kind regards,
    Malin

     


    wrote:

    Hi Malin,

     

    I have successfully integrated uCMDB 9.05, CUP 14 with Service Now Calgary.

     

    Here are a few things I'm curious about which might lead us to the solution to your problem:

    1: May I know what version of uCMDB you are on ?

     

    2: I have seen this error pop up when we did not set our proxy correctly and because of wrong previleges to write to the S-Now CMDB. So, please check on Proxy Server port and Proxy Server Name/IP.

     

    3: Are you using Direct web services that came out of the box ?

     

    Thanks,

    Praveen


     

  • 0 in reply to 

    HI Praveen

     

    Sorry for addng my question here and not as seperate thread.

     

    I am new for this integration in past never did third party integrations. I looked into document for adapater. My question is about Jar files, you have mentioned in some other threads (ServiceNow) that you created several jar files (HP doc also mention same but no details). I want to know more clarity on that. I couldn't find any doc explaining how to do that. I saw your post so thought to check with you as you have successfull did this integration.

     

    Can you please provide guidence on this.

     

    Thanks
    Sushil

  • 0 in reply to 

    Hi Susheil,

     

    Sorry, I missed this post completely.

     

    Let me see if I can answer your question about .jar files.

     

    1: The OOTB service now push adapter comes with the basic jar files required for the integration. But in our case, we used Scripted Web services to push CI and relationship data from uCMDB to Snow.

     

    2: when we implemented scrpited web services, we also had to build custom WSDL's for each CI type. Custom WSDL's would include extra attributes on top of OOB attributes.

     

    3: Once the WSDL's were built, we generated the jar files by using Apache Axis 2 software and by following a few steps that were provided by HP. The JAR files contain web service stubs.

     

    (The only case in which you will NOT need to regenerate the JAR files is if the structure of your ServiceNow target tables matches the structure in the JAR files that are used by ServiceNow integration in uCMDB.)

     

    4:  Once we have all the components, we build the Integration queries and the XML mapping files to match the attribute names on the WSDL's.

     

    Let me know if it makes sense.


    Thanks,

    Praveen

  • 0 in reply to 

     

    Hi Praveen

     

    Thanks for your detaild response.

     

    Yes I spoke with HP and doing the same.

     

    I downloaded the https://abc.service-now.com/cmdb_ci_ip_address.do?WSDL and then used the AXIS 2 to create the Jar files.

    I started with only node and created the Jar for cmdb_ci_win_server.do?WSDL and pushed the nodes. It created the rows in Service now database but with empty value.

     if i don't recreate the Jar files then i get error as

     

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

    java.lang.Exception: Traceback (most recent call last):
      File "<string>", line 2, in <module>
      File "pushToServiceNow", line 736, in DiscoveryMain
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
     at org.python.core.PyReflectedConstructor.constructProxy(PyReflectedConstructor.java:210)

    java.lang.Exception: java.lang.Exception: [DiscoveryMain] [processCIs] [processCIs:add] Error connecting to Service-Now while processing CIT <cmdb_ci_ip_address>

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

     

    then i did consult support again and they mentioned the way we are doing the jar recreation used to work fine with 9. version.

    Now i am waiting from HP to see if this recreation a jar need to be change or something else in this new version UCMDB 10.11 CUP 14

     

    Any suggestion would appreciate and once again thanks for reply.

     

    Merry Christmas!

     

    -Sushil

  • 0 in reply to 

    BTW,

    in this thread https://community.servicenow.com/thread/163057

    you have mentioned about some settings (with importSetUse = 0),

    Do i need to make any chnage in jython script or such settings you mentioned above just for OTB push test?

     

    THanks

    Sushil

  • 0 in reply to 

    No, you don't have to change anything on the OOTB Jython script for basic testing.

    Change the Debug level to 4 or 5 for more information during testing.

     

    Also, everytime you make changes to your WSDL, the .jar files have to be recreated. I haven't tried the jar file creation procedure on 10.xx, but that's a good point to keep in mind.

     

    Are you by any chance pushing IP Addresses along with the Windows CIs ? Because the error you posted in your previous reply mentions the IP Address table name.

     

    Thanks,

    Praveen

  • 0 in reply to 

    thanks for the confirmation.

     

    First i tried node with IP and that's where the error came.

     but last night i just tried a simple new query node and interface and showed success without any error but all shows EMPTY in service Now. any suggetsion. BTW i saw your another thread where you mentioned that in Service Now we need a temp table to hold the data for decision point of update/delete/add

    I am askign Service Now person to see how he can assist me on this. but seeing this log i think i sent the data out sucesfully.. Any thought please..

     

    here is success logs-

     

     <2014-12-25 20:15:59,484> 109691198 [INFO ] [AdHoc:AD_HOC_TASK_PATTERN_ID-20-1419570959903] (AdHocProbeRequestOperation.java:55) - Starting execution of Probe operation [GenericPushProbeRequest( updateData )]
    jvm 1    | Dec 25, 2014 8:16:04 PM org.apache.wink.client.internal.ResourceImpl createClientRequest
    jvm 1    | INFO: Issuing client GET method request to URI at WIPDEVAPP01:8443/.../folders with null entity class and CaseInsensitiveMultivaluedMap [map=[]] headers
    jvm 1    | Dec 25, 2014 8:16:04 PM org.apache.wink.client.internal.handlers.AcceptHeaderHandler handle
    jvm 1    | INFO: Accept header automatically set to: application/xml,application/octet-stream
    jvm 1    | Dec 25, 2014 8:16:04 PM org.apache.wink.client.internal.ResourceImpl createClientRequest
    jvm 1    | INFO: Issuing client POST method request to URI at WIPDEVAPP01:8443/.../folders with class [Lcom.hp.sw.bto.ast.security.cm.data.FolderReplicationRequest; entity class and CaseInsensitiveMultivaluedMap [map=[Content-Type=application/octet-stream]] headers
    jvm 1    | Dec 25, 2014 8:16:04 PM org.apache.wink.client.internal.handlers.AcceptHeaderHandler handle
    jvm 1    | INFO: Accept header automatically set to: application/xml,application/octet-stream
    jvm 1    | <2014-12-25 20:16:14,625> 109706339 [INFO ] [AdHoc:AD_HOC_TASK_PATTERN_ID-20-1419570959903] (?:?) - [DiscoveryMain] CIs added <21>, updated <0>, deleted <0>
    jvm 1    | <2014-12-25 20:16:14,625> 109706339 [INFO ] [AdHoc:AD_HOC_TASK_PATTERN_ID-20-1419570959903] (?:?) - [DiscoveryMain] Relationships added <11>, updated <0>, deleted <0>
    jvm 1    | <2014-12-25 20:16:14,656> 109706370 [INFO ] [AdHoc:AD_HOC_TASK_PATTERN_ID-20-1419570959903] (AdHocProbeRequestOperation.java:69) - Execution of GenericPushProbeRequest:                     ProbeExecution[ requestConstruction = 0.063    processorConstruction = 0.0      adapterRetrieval = 0.0      processorExecution = 15.172   ]
    jvm 1    | <2014-12-25 20:16:14,656> 109706370 [INFO ] [GW-AdHoc:AD_HOC_TASK_PATTERN_ID-20-1419570959903] (AdhocThread.java:63) - Sending ad hoc task results to server for request: com.hp.ucmdb.discovery.probe.agents.probemgr.adhoctasks.AdHocProbeRequestOperation calcTime= 15250ms
    jvm 1    | Dec 25, 2014 8:17:04 PM org.apache.wink.client.internal.ResourceImpl createClientRequest
    jvm 1    | INFO: Issuing client GET method request to URI at WIPDEVAPP01:8443/.../folders with null entity class and CaseInsensitiveMultivaluedMap [map=[]] headers
    jvm 1    | Dec 25, 2014 8:17:04 PM org.apache.wink.client.internal.handlers.AcceptHeaderHandler handle
    jvm 1    | INFO: Accept header automatically set to: application/xml,application/octet-stream
    jvm 1    | Dec 25, 2014 8:17:04 PM org.apache.wink.client.internal.ResourceImpl createClientRequest
    jvm 1    | INFO: Issuing client POST method request to URI at WIPDEVAPP01:8443/.../folders with class [Lcom.hp.sw.bto.ast.security.cm.data.FolderReplicationRequest; entity class and CaseInsensitiveMultivaluedMap [map=[Content-Type=application/octet-stream]] headers
    jvm 1    | Dec 25, 2014 8:17:04 PM org.apache.wink.client.internal.handlers.AcceptHeaderHandler handle
    jvm 1    | INFO: Accept header automatically set to: application/xml,application/octet-stream

     

  • 0 in reply to 

    http://wiki.servicenow.com/index.php?title=Direct_Web_Service_API_Functions

    in this URL you mentioned two points (seems to me very imprtant and perhaps i am missing that). guessing if this is my issue..

     

    2: The scripted web services provide the required response back to the uCMDB for SOAP insert operation(add, update, delete).
    3: Import set tables were created to temporarily store the CI and attribute information that were pushed from uCMDB.
    Web Service Transform Maps were used to determine if the CI in the Import Set Table is a CMDB add or update operation using Coalesce values.
    4: Relationship pushes bypass the import set tables and are directly added from the Service Now CMDB via direct web service calls.

     

    I have asked ServiceNow guy to check. do you know what specific SNOW dev did?

     

    Thanks

    Sushil

     

     

     

  • 0 in reply to 

    Hi Susheil,

     

    Glad to know that there is progress in your testing.

     

    I think you need to look into the credentials you have setup for ucmdb in Service Now and make sure it has the right privileges.

     

    Also, it is hard for me to understand what is going on with your env. without knowing the setup. Can you briefly explain what components do you have setup for service now so far ? Also, for error troubleshooting, please post the error.log and ProbeManager Adapter debug logs after testing.

     

    Thanks,

    Praveen

  • 0 in reply to 

    Hi Praveen,

     

    Thanks for the reply. I am stuck at this point and trying to clarify with vendors.

     

    here is my situation -

    Service Now - Says that based on jog attached that we should transfer data to "ImportSetTable"

    https://abc.service-now.com/imp_computer.do?WSDL

    rather sending it to their direct production table. If we not sending it to importset table from UCMDB then how would thye run the transform. Servcie now want to see incoming data in this temp table and fro there we can run transform and send to prod table there.

    My question are

    - Was it same thing for you inUCMDB 9.0 ?

    - I don't see any other temp table than /imp_computer. So i asked vendor how we will push the network CI and other do we have to create a temp table and then change the UCMDB adapter mapping to send data to this new table, and generate jar file too.

     

    HP- Now Hp provided a highlight that my data push is empty in ServiceNow because of model_ID issue. ServiceNow table ModelID is not understanding VMWARE stuff. I am not sure on this. If I leave the only model ID part in mapping as comment the my push adapter works fine and create CI.

    I have attache the non-working logs from Probe. Please provide me guidance specially from SNOW side that what step you did so I can get clear idea where i am mistaking.

     

    Another question is that - below maps in default adapter is comented. do we really need to have it enabled? can you check in version 9.0 instance how it look like.

    When i have it default i was not getting error and all fine. After enabling this i am getting error.(see the attached log from probe latest)

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

     <target_attribute name="model_id" datatype="cmdb_model" >
                        <map type="direct" source_attribute="discovered_model" />
                    </target_attribute>
                    <target_attribute name="manufacturer" datatype="core_company" >
                        <map type="direct" source_attribute="discovered_vendor" />

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

     

    Thanks a lot

    Sushil

     

  • 0 in reply to 

    BTW forgot to mention - i am using admin id so i have full access on SNOW side.

     

    Do i need to configure in service Now for ucmdb credentials as well ?

     

    I saw your this link and share with ServiceNow as well. please share some insight

    http://h30499.www3.hp.com/t5/CMS-and-Discovery-Support-and/Creating-XML-mapping-files-for-Integration-between-ServiceNow/td-p/6255663#.VJzxxxApI 

     

    Thanks

  • 0 in reply to 

    Thanks issue is resolved. I figured out that with OTB nothing but had to modify query

     

    Thanks

    Sushil

Reply Children
  • 0 in reply to 

    could you please let us know what has been changed for the Query side.

  • 0 in reply to 

    Hi,

     

    Please make sure that your Ci attributes are selected in properties option to be pushed to SNOW. 

    By default it's unchecked so it won't work until you manually select which attribute want to be push OR select All

     

    Let me know if any question further

     

    Thanks

    Sushil

  • 0 in reply to 

    Hi All,

     

    we tring to do ucmdb to servicenow push and cis are going to servicenow Sucessfully  but we have issue with pushuing relationship 

     

    could you please help in this 

     

    Thanks 

    Rashmi Hegde

    rashmi.hegde-s@hpe.com

  • 0 in reply to 

    hi, Rashmi

    were you able to push relationship successfully? Thanks

  • 0 in reply to 

     

    Hi All,

     

    we tring to do ucmdb to servicenow push and cis are going to servicenow Sucessfully  but we have issue with relationship push.

     We have checked the logs and we are getting error as:

    Ignoring RTN with parent-child (id)  because ServiceNow couldn't locate the corresponding sys_id values for UCMDB-serviceNow Push

    Priyanka

  • 0 in reply to 

    Hi Priyanka

    we need to see the relationship mapping in xml that you made, log file error in uCMDB and service now.

    was there any change in probe server that you are using for push data?

    Thanks

    Sushil

  • 0 in reply to 

    Hi Sushil,

    Please find relationship mapping

    <target_entities>
    <source_instance query-name="ServiceNow_ADMPush_Relations" root-element-name="Root_BusinessApplicationEnvironment">
    <target_entity name="service_now_rel_table>
    <target_mapping datatype="STRING" name="type" value="'contains :: contained by'"/>
    <target_mapping datatype="STRING" name="parent" value="Root_BusinessApplicationEnvironment.BusinessApplication[0]['global_id']"/>
    <target_mapping datatype="STRING" name="child" value="Root_BusinessApplicationEnvironment.BusinessApplicationEnvironment[0]['global_id']"/>
    </target_entity>
    </source_instance>

    </target_entities>

    We have successfully   pushed Linux->Interface->IPAddress relationship.But, We are getting error while pushing ADM(Application Dependency Mapping) relationship.

    In UCMDB side ,we are getting below errors in log:

    Ignoring RTN with parent-child = BA<GlobalID>-BAE<GlobalId> because ServiceNow couldn't locate the corresponding sys_id values.

    ServiceNow logs not getting any error.

    We have not made any changes to probe server.

     

    Thanks

    Priyanka

  • 0 in reply to 

    did you check with Service now engg or support?

  • 0 in reply to 

    Hi,

    We have checked with ServiceNow engineer. Thre is no entry in serviceNow logs.

     

    Thanks

    Priyanka