We are using Ignition edge to connect to an OEM 's system that is using Martikon Tunneler to provide OPC UA data.
The connection is configured and shows as connecting and allows us to use Ignition Designer to browse and select OPC UA tags to add and collect values from.
We are seeing on repeated occasions across multiple deployments that the OPC connection becomes Faulted and we can no longer connect to the Matrikon tunneler.
The error given on Ignition is as below
java.lang.Exception: session inactive: id=NodeId{ns=4, id=723486665} name=ignition[Ignition-SPR]_Honeywell_1720550181072
at com.inductiveautomation.ignition.gateway.opcua.client.connection.OpcUaConnection$MiloSessionActivityListener.onSessionInactive(OpcUaConnection.kt:498)
at org.eclipse.milo.opcua.sdk.client.session.SessionFsmFactory.lambda$null$39(SessionFsmFactory.java:577)
at java.base/java.util.concurrent.CopyOnWriteArrayList.forEach(Unknown Source)
at org.eclipse.milo.opcua.sdk.client.session.SessionFsmFactory.lambda$configureActiveState$40(SessionFsmFactory.java:577)
at com.digitalpetri.strictmachine.dsl.ActionBuilder$PredicatedTransitionAction.execute(ActionBuilder.java:119)
at com.digitalpetri.strictmachine.StrictMachine$PollAndEvaluate.lambda$run$0(StrictMachine.java:242)
at java.base/java.util.ArrayList.forEach(Unknown Source)
at com.digitalpetri.strictmachine.StrictMachine$PollAndEvaluate.run(StrictMachine.java:227)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
8.1.17 (b2022051210)
Azul Systems, Inc. 11.0.15
The OEM is struggling to see any issue on their side, has anyone seen similar activity before? Is there a setting we need to change on the Ignition side of the connection that might help?
This error you've shared is just the stack trace that happens when you lose the connection to the server for some reason. It doesn't help narrow down why that happened.
It looks like occasionally the server stops responding to the Ignition client "keep alive" request that reads the server's current time and state variables. In the settings for the connection to this server you can try increasing the number of keep alive failures allowed and/or the keep alive timeout to give the server longer to respond.
Thanks, are there any recommended settings for settings? Am I correct in thinking changing the "Keep-Alive Failures Allowed" to 0 will mean Ignition will never set the connection to faulted even if the keep alive continually fail?