OpcServer exception thrown and didn't recover

We have an issue that pops up from time to time at a production site that causes one of our custom modules to stop working because it is no longer receiving tag changes using the TagChangeListener interface.

In the Ignition log, we see the UascClientMessageHandler throw an exception that says it is timing out to the Ignition OPC-UA server and a tag group called "tag-group-lift_default" fails to re-subscribe. I am not positive, but that seems to reference our tag provider

I have attached an export of our log. This happened yesterday so I don't have a thread dump.

This issue brings production to a halt until Ignition is restarted. Any ideas would be helpful.

Ignition-ICOB-MOCLIFT01_Ignition_logs_20240620-1043.zip (7.7 MB)

This doesn't look like a connection to the Ignition OPC UA server, it looks like a connection a third party server. It stops responding, you lose the connection, and then subsequent attempts to reconnect time out.

It's not clear why a restart would change anything. It might be best to try and get a Wireshark capture next time this happens, and possibly turn some loggers to DEBUG level:

  • SessionFsm
  • OpcUaSubscriptionModel
  • OpcUaSubscriptionSynchronizer

It looks like a connection to the built in server of an S7-1200.

Maybe you're doing a program download, which restarts the server, and just not waiting long enough for it to come back online.

The concerning thing is that it causes one of our modules to stop receiving tag changes from the TagChangeListener that we have setup talking to tags on the Ignition OPC-UA Server. Any ideas?

Nope, would only expect that if they were tags from the other server.