Troubleshooting the Smoke Test
The sections below provide suggestions for actions that you can take to troubleshoot problems that may occur at each validation step in the smoke test.
Smoke Test Step 1 — Validate the Configuration File
Validate the configuration file of the Azure IoT Hub Connector. (ConfigurationValidator class)
1. Make sure that you specified a valid URL for the Azure IoT Connector on the command line, including a valid port number. A port is required, even if you are using a default port, such as 443 or 80.
3. Check the configuration file (azure-iot.conf) to ensure that all of the required properties have been set. The required properties enable the Connector to communicate with ThingWorx Platform:
◦ A valid WebSocket URL, which you specify for the value of the property, cx-server.transport.websockets.platforms.
◦ A valid application key, which you specify for the value of the property, cx-server.transport.websockets.app-key.
Smoke Test Step 2 — Connect to ThingWorx
Validate the connection to the ThingWorx Platform. (ConnectToPlatformValidator)
1. Check the configuration file to ensure that a valid WebSocket URL is specified in the property, cx-server.transport.websockets.platforms. Make sure that you use a valid port number and that the URL starts with wss: if ThingWorx Platform is configured for SSL/TLS.
2. Check the configuration file to ensure that a valid application key is specified in the property, cx-server.transport.websockets.app-key.
3. Check for any firewall issues between the smoke test and ThingWorx Platform.
4. Check the ApplicationLog for the ThingWorx Platform to determine if an issue with the connection was reported there.
5. Check that the SSL/TLS certificate that is installed in Tomcat (ThingWorx Platform) is not missing root or intermediate certificates.
◦ Note that in this scenario, the Azure IoT Hub Connector has the same connection failures and thus validation Tests 3 through 9 will fail.
Smoke Test 3 — ConnectionServicesHub Thing Exists?
Validate that the ConnectionServicesHub Thing exists. (ConnectionServicesHubExistsValidator )
1. Check that the Connection Services Extension (CSE) was imported to the ThingWorx Platform. If not, refer to Importing the Extension. .
2. Check the configuration file to determine if a valid Thing name was specified for the Connection Services Hub in the property, cx-server.hub-thing.name.
3. Make sure that the Connector is running The Connector creates the hub Thing on startup. You may want to restart the Connector in debug mode to watch for the creation of the Connection Services Hub.
4. If you have access to them, check the ThingWorx Platform logs for errors.
Smoke Test 4 — Create a Test Thing
Validate creating test Thing on the ThingWorx Platform (CreateTestThingValidator)
◦ This test creates a Thing using the Azure IoT Thing Thing Template that is installed with this extension.
◦ This test also sets the modelNumber and serialNumber properties on this Thing. These properties are defined with this extension.
2. If you have access to them, check the ThingWorx Platform logs for errors.
Smoke Test 5 — Send Property Value
6. Validate sending Property Write messages to the Azure IoT Connector.
1. Make sure that test 4 passed. Test 4 creates the Thing used by this test.
2. Check the Azure IoT Hub Connector log for errors.
3. If you have access to them, check the ThingWorx Platform logs for errors.