Licensing for ThingWorx Platform
Connected and Disconnected Sites
There are two possible paths for getting up and running with a license.
Connected Sites- In a connected scenario, the ThingWorx instance has an outbound internet connection to the PTC support site for license retrieval. Detailed process steps are located in Installing ThingWorx.
Disconnected sites- In a disconnected scenario, the ThingWorx instance does not have an internet connection to PTC support to be able to retrieve a license. For disconnected sites, a text file (licenseRequestFile.txt) is generated upon start-up in the ThingworxPlatform folder. You will be able to start ThingWorx, but it will run in limited mode. In limited mode, licensed entities cannot be saved to the database. Licensed entities are Things, mashups, masters, gadgets, users, and persistence providers. Users must log into PTC Support to create a license file manually. In this scenario, follow these steps:
1. In the ThingworxPlatform folder created during ThingWorx setup, open the licenseRequestFile.txt file to locate the Device ID. If the licenseRequestFile.txt file is not included in the ThingworxPlatform folder, delete the license.bin file in the ThingworxPlatform folder and restart your ThingWorx server.
2. Copy the Device ID value.
3. Log into the PTC Support site using your existing credentials or create a new account.
4. Go to https://support.ptc.com/apps/licensePortal/auth/ssl/index and select ThingWorx 8.1+ or Navigate 1.6+ from the dropdown option. Paste the Device ID in the Enter Device ID field.
5. Click Retrieve.
6. Go to location where license is downloaded.
7. Copy the license file to the ThingworxPlatform folder.
8. Rename the file to license_capability_response.bin
9. Restart ThingWorx or run the AcquireLicense service from the Licensing Subsystem.
Expired Licenses
If your license is scheduled to expire, a message will display in ThingWorx Composer with a 30 day warning. If the license is not renewed within the 30 days, ThingWorx will shut down. Data is retrievable, but the license must be renewed to fully restore ThingWorx.
* 
If your ThingWorx license has features with different expiration dates, the earliest expiration date will trigger a shutdown. Information about the different features and expiration dates can be found in Monitoring>Subsystems>Licensing Subsystem Settings>License Usage Data.
If you are using High Availability configurations, you must use a license generated after June 2020. Any new licenses generated after June 2020 can be used for HA or non-HA instances.
Upgrading from a Trial to a Paid Version
If you are changing your entitlements or upgrading from a trial to a paid license, you must retrieve a new license file from the PTC Support site. The new file will replace the existing file in the ThingworxPlatform folder. The platform will not be updated with the new feature entitlements until one of the following occurs:
The AcquireService service on the Licensing Subsystem is executed.
Restart of the platform.
Wait for 24 hours from the time the platform was started.
Licensing Troubleshooting
Fetching a License from FNO
You can enable debug logging to troubleshoot problems retrieving a license file from the license server. It is only recommended to enable logging debugging if you are troubleshooting Active Directory authentication issues. These messages are logged in the Application Log, and can cause the log to get flooded when enabled.
To enable debug logging, use a standard logback.xml file in the ThingworxPlatform directory. If a logback.xml file exists in this location, you can add the licensing logger to the existing set of loggers.
<configuration>
<logger name="com.thingworx.system.subsystems.licensing.LicenseFetcher" level="DEBUG"/>
</configuration>
* 
The logback.xml functionality is a Java standard. For instructions about configuring these files, refer to Java documentation.
The following information about the logger package will help to investigate problems related to the connection between the ThingWorx Platform and the license server.
Package:
com.thingworx.system.subsystems.licensing.LicenseFetcher
Entry:
<logger name="com.thingworx.system.subsystems.licensing" level="DEBUG"/>
Description:
With debugging enabled, here are example logs that will show up in the Application Log:
1) Invalid License Server URL:
[L: ERROR] [O: c.t.s.s.l.LicensingStateMachine] [I: ] [U: SuperUser] [S: ] [T: localhost-startStop-1] Unable to retrieve license from FNO server because invalid.ptc.com: Name or service not known
2) Invalid License Credentials:
[L: DEBUG] [O: c.t.s.s.l.LicenseFetcher] [I: ] [U: SuperUser] [S: ] [T: localhost-startStop-1] Failed authenticating to license server
[L: INFO] [O: c.t.s.s.l.LicenseFetcher] [I: ] [U: SuperUser] [S: ] [T: localhost-startStop-1] Unable to retrieve License capabilities from license server
3) Valid License Credentials:
[L: DEBUG] [O: c.t.s.s.l.LicenseFetcher] [I: ] [U: SuperUser] [S: ] [T: localhost-startStop-1] Successfully authenticated to license Server
Related Links
Was this helpful?