archi-contribs / snow-import-plugin Goto Github PK
View Code? Open in Web Editor NEWService Now import plugin
License: Other
Service Now import plugin
License: Other
Based on our discussion on the Archi forum it would be of great benefit to have the 'import ServiceNow' available as a command line option of the ACLI. The CSV and XML Open Exchange Import is already supported, and would be great if SN plugin added an option keeping in line with the current CLI standard. It would look like:
Archi -application com.archimatetool.commandline.app -consoleLog -nosplash --servicenow.import <*.ini file>
Existing import options support of the format:
Archi -application com.archimatetool.commandline.app -consoleLog -nosplash --csv.import <*.csv file>
Archi -application com.archimatetool.commandline.app -consoleLog -nosplash --xmlexchange.import <*.xml file>
Thanks,
Manjit
Hi Herve,
In relation to the issues already raised and having tried the latest v1.7 I wanted to put forward a suggestion to improve the working of the import of large data sets. It is expected that relationships data set will be the largest, even bigger than any of the CI tables and have to retrieve them in a single REST request may well be inefficient and hide problem areas.
I noticed that in v1.7 the URL generated has a query filter inbuilt to fetch relationships that are IN the given lists of type sys_ids. My suggesstion is to instead of a single URL request for all relationship types, can you instead iterate the given types in the ini file and generate and send a URL REST request per type, so the JSON response is only in context to that type parsing and adding to the Archi model. I see this as being much more efficient as the JSON response will be smaller and if there is a particular failure due to a specific relationship type or size of response then it is clearly seen in the log file as progress will have been shown up to that types' request/import.
Hopefully, you can follow what I mean here, but here is some pseudo description:
for N iterate through relationship types specified in ini file
{
Generate URL request for N type
MyConnection send the request and receive JSON response
Parse the resopnse as usual and create Archi elements
Move on to next type in list
}
Thanks,
Manjit
Hi Hervé,
Some colleagues would like to use this plugin, but I can't find any real license in this repo (there is a license file which is almost empty). Would it be possible for you to add an explicit license, such as the MIT one that we use for all Archi related work. If needed, here an example of our license file.
Regards,
JB
Hi
I am not technical expert - but noted that there is reference to LOG4J in the code.
Just wanted to ask if there is any risk regarding the log4j vulnerability that have been exposed ?
Can it be confirmed that this do not apply to the snow-import-plugin ?
Thanks in advance.
Good morning again Herve91,
I have already managed to pass the objects from Service Now to Archi. Thank you very much!
Now, I am trying to pass the service now relations to Archi and I have some doubts.
1- How should the relationships included in Service Now be so that Archi can read them?
2- Where do you get the id of each relationship? For example: 0454da4c6f7e9940f0721cef8d3ee4b9
3- Do you have to do a mapping for each relationship?
It would be very helpful if you could explain to me the relationship part of the serviceNow.ini file with an example of a Service Now table. You can do it?
Many thanks again and I await your comments.
Greetings,
Javier.
With the default setting to dereference links (&sysparm_exclude_reference_link=false
) the value returned and then being dereferenced contains whitespaces and causes the exception from what I can tell.
Value here is Technical Services South
2019-10-01 12:12:15 TRACE 1240:MyImporter - Following reference link to URL https://nextdev.service-now.com/api/now/table/sys_user_group/Technical Services South 2019-10-01 12:12:15 ERROR 1256:MyImporter - Failed to get URL from ServiceNow. org.archicontribs.servicenow.MyException: Error reported by ServiceNow website : code 400 at org.archicontribs.servicenow.MyConnection.get(MyConnection.java:66) at org.archicontribs.servicenow.MyImporter.getJsonField(MyImporter.java:1244) at org.archicontribs.servicenow.MyImporter.getJsonField(MyImporter.java:1191) at org.archicontribs.servicenow.MyImporter.expand(MyImporter.java:1438) at org.archicontribs.servicenow.MyImporter.doImport(MyImporter.java:588) at com.archimatetool.editor.actions.ImportIntoModelAction.run(ImportIntoModelAction.java:37) at org.eclipse.jface.action.Action.runWithEvent(Action.java:474) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:568) at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:400) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4131) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1055) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3944) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3547) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1173) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1062) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:566) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150) at com.archimatetool.editor.Application.start(Application.java:84) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:661) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:597) at org.eclipse.equinox.launcher.Main.run(Main.java:1476)
I have Archi 4.8.1 installed with the Database export plugin. I tired to add the SNOW plugin (downloaded the org.archicontribs.servicenow_1.7.2.archiplugin file and installed through help>manage plugins). I get a response that "org.archicontribs.servicenow_1.7.2.archiplugin - is not an Archi Plug-in". I have downloaded the file twice to make sure It wasn't corrupt or a bad download.
To improve on error handling and better diagnostics it would be good where an exception is thrown due to the format of the JSON an error is logged with the part of the response that caused the exception. Crucially, the sys_id of the parent/relationship/child would be handy to trace that back in SN.
When parsing our CMDB I'm see the following, but due to the size of the data set and lack of verbose message log I cannot pinpoint:
2019-09-18 12:58:32 DEBUG 719:MyImporter - Generated URL is https://nextdev.service-now.com/api/now/table/cmdb_rel_ci?sysparm_limit=850000&sysparm_fields=operational_status,sys_id,parent,type,sys_class_name,child&sysparm_query=&sysparm_exclude_reference_link=false
2019-09-18 12:58:35 TRACE 71:MyConnection - Getting relations from ServiceNow webservice ...
2019-09-18 12:59:33 TRACE 87:MyConnection - Read 65055088 bytes from ServiceNow webservice.
2019-09-18 12:59:34 FATAL 16:MyPopup - Cannot get relations from ServiceNow web service: org.codehaus.jackson.JsonParseException: Unexpected character (']' (code 93)): expected a value at [Source: java.io.StringReader@624fedfd; line: 1, column: 65054829]
2019-09-18 13:03:01 INFO 916:MyImporter - 0 relations have been modified: 0 created, 0 updated, 0 removed.
Hi Herve91,
Is there a step by step document on this which can Guide us how to pass the objects from Service Now to Archi.
I saw "Read Me" document but that does-not instruct how to map.
Any help here is much appreciated
There is already a filter option for Archi elements and not currently available for Relationships. This request is raised for the ability to specify a "filter" property which is added to the "sysparm_query" part of the request.
E.g. URL comprises of: sysparm_query=x_snsab_snow_sam_i_snow_checksumISNOTEMPTY
Also, there is no instructions on how to specify filters even of Archi elements and would be useful to have this documented in the ini file, as the filter can be many variations. Also can I specify multiple filters and if so how, some examples would be helpful.
Hi!
This is still the only chance to get the model from ServiceNow synced to any of the open-source modelling and diagramming software.
But connection to my ServiceNow instance is via SSO, so my password in the INI file is not even checked and I'm getting an error "cannot get CIs from ServiceNow web service", but it's about authentication rather than authorization, I believe.
Do you have a view, on what can be done in this case?
Hi, for some reason it seems the Specialization plugin is here instead of the latest SNOW plugin?
Buenos días herve,
necesito integrar Service Now con Archi. He instalado el plugin para Archi 4 pero tengo probelmas para entender el archivo .ini. ¿podrías echarme una mano para configurar el archivo?
Gracias y un saludo,
Javier.
Hi Herve,
I've encountered a bug in the ServiceNow plugin which I hope you can easily resolve soon (I know you're a busy man).
I'am trying to return results with display labels using the filter in the CI mappings of the ini file:
archi.elements.cmdb_ci_app_server.filter = &sysparm_display_value=true
This generates the following URL REST request:
https://{instance}.service-now.com/api/now/table/cmdb_ci_app_server?sysparm_limit=150000&sysparm_fields=operational_status,sys_id,name,short_description,sys_class_name,owned_by,tcp_port,type,version,sys_updated_on,sys_updated_by,u_asset_risk_score,sys_created_on,sys_created_by,u_dr_priority,sys_id,name,location,sys_class_name&sysparm_exclude_reference_link=false&sysparm_query=operational_status=1,&sysparm_display_value=true
and from the log it can be seen that the response is successfully returned, however a NumberFormatException is thrown, because the <operational_status> is returning a String (display label) and is expected as a number, i.e. 1 - Operational.
It would be great if you could handle this filter such that if when set to true the logic also recognises the string value of Operational. Even better is if you the plugin handles the filter with the value of 'all' then both the actual value and display name is returned, and if it either can be referenced.
I want to use it to create Archi concept folder names based on the display lablel not the actual database value, i.e.
archi.elements.cmdb_ci_app_server.folder = "Enterprise ServiceNow ITSM"/"Software"/"Application Servers"/sys_class_name
where sys_class_name returns the display label if the filter is specified.
Hello,
I used the plugin with Archi 4.4 with no problem. When I upgraded to 4.5, it stopped pulling from SN.
Is there something you can suggest?
Hey,
I gave a try to the plug in as my company uses service now extensivly and wanted to give it a go.
But when I run the plug in it fetch a 401, and I think it has to come from the authent used. My company uses Google Account with 2FA to authenticate to Service Now, I have put my credential data in the ini file but I don't get how the plug in can go through the 2FA by itself.
Is this a limitation ? Is it possible to give a token to the script ? I won't have the possibility to disable 2FA to test this out.
The log of the run:
2022-07-18 10:33:49 INFO 220:MyImporter - =====================================
2022-07-18 10:33:49 INFO 221:MyImporter - Starting ServiceNow import plugin ...
2022-07-18 10:33:49 INFO 222:MyImporter - Getting properties from /Users/jpalon/Downloads/archimateSnow.ini
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property SNowPlugin.version = 1.7.2
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property http.proxyHost not found
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property http.proxyPort not found (defaulting to 0)
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property http.proxyUser not found
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property http.proxyPassword not found
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property servicenow.site = https://XXXXX.service-now.com
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property servicenow.user = XXXXXXX
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property servicenow.pass = @@@@@@@@@@
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property servicenow.sysparm_limit = 1000000
2022-07-18 10:33:49 INFO 297:MyImporter - Getting elements from ServiceNow ...
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.id = sys_id
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.name = name
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.documentation = short_description
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.folder = sys_class_name
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.filter not found (defaulting to )
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.import_mode = create_or_update_only
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.property.company = company#name
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.property.date = ${date:dd/MM/yyyy HH:mm/ss}
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.property.oasis_created_by = sys_created_by
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.property.oasis_created_on = sys_created_on
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.property.oasis_updated_by = sys_updated_by
2022-07-18 10:33:49 DEBUG 108:MySortedProperties - property archi.elements.*.property.oasis_updated_on = sys_updated_on
2022-07-18 10:33:51 TRACE 1349:MyImporter - --> found field = cmdb_ci_aix_server
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property archi.elements.cmdb_ci_aix_server.snow_table = cmdb_ci_aix_server
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property archi.elements.cmdb_ci_aix_server.archi_class = "Node"
2022-07-18 10:33:51 INFO 352:MyImporter - Found keyword "cmdb_ci_aix_server": mapping ServiceNow CIs from table cmdb_ci_aix_server to Archi "Node"
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property archi.elements.cmdb_ci_aix_server.id not found (defaulting to sys_id)
2022-07-18 10:33:51 TRACE 1349:MyImporter - --> found field = sys_id
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property archi.elements.cmdb_ci_aix_server.name not found (defaulting to name)
2022-07-18 10:33:51 TRACE 1349:MyImporter - --> found field = name
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property archi.elements.cmdb_ci_aix_server.documentation not found (defaulting to short_description)
2022-07-18 10:33:51 TRACE 1349:MyImporter - --> found field = short_description
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property archi.elements.cmdb_ci_aix_server.folder = "Serveurs"/"AIX"/os
2022-07-18 10:33:51 TRACE 1305:MyImporter - --> found constant = "Serveurs"
2022-07-18 10:33:51 TRACE 1305:MyImporter - --> found constant = "AIX"
2022-07-18 10:33:51 TRACE 1311:MyImporter - --> found field = os
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property archi.elements.cmdb_ci_aix_server.importMode not found (defaulting to create_or_update_only)
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property archi.elements.cmdb_ci_aix_server.property.processor = processor#display_name
2022-07-18 10:33:51 TRACE 1344:MyImporter - --> found field = processor (then field display_name in the reference link)
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property archi.elements.cmdb_ci_aix_server.property.pvus_per_core = processor#processor_mapping#pvus_per_core
2022-07-18 10:33:51 TRACE 1344:MyImporter - --> found field = processor (then field processor_mapping in the reference link)
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property company = company#name
2022-07-18 10:33:51 DEBUG 428:MyImporter - Found archi.elements.*.property.company = company#name
2022-07-18 10:33:51 TRACE 1344:MyImporter - --> found field = company (then field name in the reference link)
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property oasis_created_on = sys_created_on
2022-07-18 10:33:51 DEBUG 428:MyImporter - Found archi.elements.*.property.oasis_created_on = sys_created_on
2022-07-18 10:33:51 TRACE 1349:MyImporter - --> found field = sys_created_on
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property date = ${date:dd/MM/yyyy HH:mm/ss}
2022-07-18 10:33:51 DEBUG 428:MyImporter - Found archi.elements.*.property.date = ${date:dd/MM/yyyy HH:mm/ss}
2022-07-18 10:33:51 TRACE 1335:MyImporter - --> found variable = ${date:dd/MM/yyyy HH:mm/ss}
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property oasis_updated_by = sys_updated_by
2022-07-18 10:33:51 DEBUG 428:MyImporter - Found archi.elements.*.property.oasis_updated_by = sys_updated_by
2022-07-18 10:33:51 TRACE 1349:MyImporter - --> found field = sys_updated_by
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property oasis_updated_on = sys_updated_on
2022-07-18 10:33:51 DEBUG 428:MyImporter - Found archi.elements.*.property.oasis_updated_on = sys_updated_on
2022-07-18 10:33:51 TRACE 1349:MyImporter - --> found field = sys_updated_on
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property oasis_created_by = sys_created_by
2022-07-18 10:33:51 DEBUG 428:MyImporter - Found archi.elements.*.property.oasis_created_by = sys_created_by
2022-07-18 10:33:51 TRACE 1349:MyImporter - --> found field = sys_created_by
2022-07-18 10:33:51 DEBUG 108:MySortedProperties - property archi.elements.cmdb_ci_aix_server.filter not found (defaulting to )
2022-07-18 10:33:51 DEBUG 460:MyImporter - Generated URL is https://XXXXXX.service-now.com/api/now/table/cmdb_ci_aix_server?sysparm_limit=1000000&sysparm_fields=operational_status,sys_id,name,short_description,os,processor,processor,company,sys_created_on,sys_updated_by,sys_updated_on,sys_created_by&sysparm_exclude_reference_link=false&sysparm_query=operational_status=1
2022-07-18 10:33:51 FATAL 16:MyPopup - Cannot get CIs from ServiceNow web service:
org.archicontribs.servicenow.MyException: Error reported by ServiceNow website : code 401
at org.archicontribs.servicenow.MyConnection.get(MyConnection.java:66)
at org.archicontribs.servicenow.MyImporter.doImport(MyImporter.java:466)
at com.archimatetool.editor.actions.ImportIntoModelAction.run(ImportIntoModelAction.java:37)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:474)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:580)
at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:414)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4565)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1522)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1545)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1530)
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1324)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4351)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3927)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1154)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1045)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:551)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:156)
at com.archimatetool.editor.Application.start(Application.java:81)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
2022-07-18 10:33:51 FATAL 23:MyPopup - MyException: Error reported by ServiceNow website : code 401
org.archicontribs.servicenow.MyException: Error reported by ServiceNow website : code 401
at org.archicontribs.servicenow.MyConnection.get(MyConnection.java:66)
at org.archicontribs.servicenow.MyImporter.doImport(MyImporter.java:466)
at com.archimatetool.editor.actions.ImportIntoModelAction.run(ImportIntoModelAction.java:37)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:474)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:580)
at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:414)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4565)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1522)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1545)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1530)
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1324)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4351)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3927)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1154)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1045)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:551)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:156)
at com.archimatetool.editor.Application.start(Application.java:81)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
2022-07-18 10:33:56 INFO 628:MyImporter - 0 elements have been modified: 0 created, 0 updated, 0 removed.
Any help is appreciated.
If a filter is used on Archi CI mapping it will not work because it is being added to the URL as a second sysparm_query parameter in addition to the operational_status=1 and is therefore ignored.
without any filter the plugin always adds
&sysparm_query=operational_status=1
If filter as follows is used then the URL will add sysparm_query as shown below:
archi.elements.*.filter = virtual=true
or
archi.elements.cmdb_ci_linux_server.filter = virtual=true
Resulting url will have:
&sysparm_query=operational_status=1,&sysparm_query=virtual=true
Latter virtual filter is ignored by SN
It only works if the filter is added as a logical AND using the caret '^' character, i.e.
&sysparm_query=operational_status=1^virtual=true
Apologies in advance if I missed something and nothing using it correctly.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.