OPC UA Server troubleshooting
The OPC UA Server exposes Server status variables to clients that are separate from device variables. When these Server variables are subscribed by clients using subscriptions, a crash may occur. Avoid subscribing these variables since the main use of the OPC UA Server is for device variables. Limit the subscription to variables of Objects.
When devices used by the OPC UA Server are stopped, those devices are no longer exposed to clients. In some rare instances, variables from those devices are still exposed but they cannot be accessed since the device is stopped. Restarting the server will clear those device variables.
When an OPC UA Client sends many requests for a large device on the OPC UA Server, stopping the server may result in the server being in the Stopping state for a long time. During this time, the server is cleaning up all the pending requests before stopping. Manually stopping the large device being used speeds up this process.
It has been observed that there are read/write timeouts when using variables with large arrays. It is recommended to increase the timeout in the device definition for devices such as Mitsubishi and Omron, which have large array sizes.
When an OPC UA Client fails validation, the server adds a session to its Clients list, but even when the client node rebooted, the server still keep the session in its list. The session will be cleared in about 30 minutes.
When changing the Server Name, the server certificates have to be deleted from the Staging directory. The directory is /uaserver/pki/own. The files uaservercert.der and uaserverkey.nopass.pem have to be deleted. When the OPC UA Server is started, these files will be automatically regenerated using the new Server Name and sent to the client.