EMS service invoke/property change timesOut from Thingworx Platform
We have EMS deployed in remote devices and are connected to Thingworx platform via connection server
There are instances where remote device shows as connected but any request to device timesOut with below error in logs
JavaException: java.util.concurrent.TimeoutException: Timed out APIRequestMessage [requestId: 1878, endpointId: -1, sessionId: -1, method: POST, entityName: *deviceName, characteristic: Services, target: serviceName]
NULL MessageSynchronizationContext! Request either timed-out waiting for this response, or it was received by mistake: ResponseMessage [requestId: 1879, endpointId: 856, sessionId: 733353036, code: STATUS_SUCCESS, multipart: false, packet #: 0, total packets: 0]
We do not have physical access to remote device, so we cannot access EMS logs
Any information on the below could be helpful
- does network connectivity going on and off causes a lot of open sockets(lot of connection were in FIN_WAIT2) causing this issue?
- is there any service to restart EMS from Thingworx platform or Connection service?(could not find existing services under remote* entities)
- is there any service to track if EMS in device is running as expected or hanged(i.e a service to perform health check)?
- will restarting Connection Server messes existing other connections?
- is there any way to track particular device connection status from connection server?
We have tried
- invoking BrowseDirectory service from FileSystemService(cant access EMS logs as it is in a different directory)
- update timeout setting in WSCommunicationsSubsystem/Connection Server as requests were failing after 45 seconds
Environment
Thingworx platform :8.3.3
EMS Version : 5.4.7
Tried few articles(cs235581 and Data-is-not-reaching-the-Thingworx-platform ) and still no direction
Regards

