If you are seeing problems then we recommend that you open a ticket with Speechmatics support: support@speechmatics.com. Please include the logging output from the container if you do open a ticket, and ideally enable verbose logging.
Verbose logging is enabled by running the container with the environment variable DEBUG
set to true
.
e.g.
docker run -e DEBUG=true rt-asr-transcriber-en:1.4.1
The best way to identify licensing errors with the container is to look at the container logs. See https://docs.docker.com/config/containers/logging/ for more information about doing this. If licensing is successful then the logs upon startup should look similar to this:
INFO:__main__:Starting health service
INFO:orchestrator.health:Health check server starting...
INFO:__main__:Health service started.
INFO:orchestrator.license:Starting sentry server...
time="2020-03-27T11:50:18.9774596Z" level=info msg="Listening to port 52000, secure mode = false"
time="2020-03-27T11:50:18.9776369Z" level=info msg="Reading license from /license.json"
time="2020-03-27T11:50:18.9866595Z" level=info msg="Read token eyJkbGciOjJS..."
INFO:orchestrator.license:Sentry server started
time="2020-03-27T11:50:18.990334Z" level=info msg="License : licensed=true, customer=Speechmatics, contract_id=0, expires_at=2021-03-16 00:00:00 +0000 UTC, trial=false, features=MAPRT,MAPBA,AMCC,APD,APR,ASS"
time="2020-03-27T11:50:18.9904803Z" level=info msg="Starting server 3.0.0 [master]"
time="2020-03-27T11:50:18.9918058Z" level=info msg="Monitoring parent pid 1"
2020-03-27 11:50:19,005 orchestrator.transport.ws.common INFO Waiting for the model to be ready - checking /model/manifest.json
2020-03-27 11:50:20,673 orchestrator.transport.ws.common INFO Loading model en
2020-03-27 11:50:26,107 orchestrator.transport.ws.ws INFO transport websocket listening at ws://0.0.0.0:9000
2020-03-27 11:50:26,107 orchestrator.transport.ws.health_update INFO Transport marked as started for health updates.
If your container is not licensed, or has an invalid license then it will exit upon startup with an error message similar to this:
RuntimeError: Failed to launch sentry server licensing process on port 52000
Please ensure that you have correctly followed the instructions in the quick start guide
for setting up licensing, and that have you a license file which has not expired (the metadata
section in the file tells you when the license is valid until).
There can be several reasons for a licensing error:
If you see the following message in the container logs then the most likely cause is that no license file has been provided:
level=error msg="could not load license file data: stat /license.json: no such file or directory"
Please review the quick start guide and ensure that the license has been provided properly, either as a volume-mapped file or as an environment variable.
level=info msg="License : licensed=false, customer=Speechmatics, contract_id=99, expires_at=2020-03-26 00:00:00 +0000 UTC, trial=false, features="
level=error msg="Error in license : token is expired by 36h6m37s"
This message indicates that your license has expired. Please request a new license from Speechmatics support.
Not all licenses are valid for all features of our product. If you are not licensed for a feature which you attempt to use for transcription, then transcription will not be performed. Please get in touch with Speechmatics support if you are interested in using a feature which you are not licensed for.
If this error case happens you should see a log message similar to this one:
2020-03-27 12:11:04,230 orchestrator.transport.ws.protocol WARNING Sending an error to client: not_allowed - Unable to use provided configuration: No license for requested language - LEN; session ID de1ec62d-a22d-47a3-8f03-def025a52f60
Only relevant if using a volume-mapped file to license the container
level=error msg="could not load license file data: unexpected end of JSON input"
or
level=error msg="could not load license file data: No valid signedclaimstoken field found in license (too short)"
Please ensure that you are using the license file which has been provided to you by the Speechmatics support team, and that no changes have been made to the file accidentally.
The license file should be a valid JSON file and should contain a key named
signedclaimstoken
which is your license token.
You should ensure, when using the config object in the StartRecognition
message, that the JSON is correctly formatted.