What is a Codec Server?
A Codec Server is a feature that can perform additional levels of encoding and decoding on Payloads that are handled by tctl or the Web UI.
The Web UI and tctl both use a default Data Converter, which is capable of serialization only.
Codec Servers can encrypt, compress, and change the format of a Payload object. These measures can further secure your data.
Use case: tctl
Suppose that you want to view Workflow History. This information needs to be decoded before it can be viewed.
You can use tctl workflow showid to view a Workflow Execution Event History.
tctl workflow showid <workflowID>
With a Codec Server, the Payload is decoded before being deserialized by tctl's default Data Converter. The default Data Converter sends the Payload to a given endpoint, and receives a decoded Payload if the API returns a successful result.
The Data Converter passes this result back to the command line, which prints the decoded result.
Use case - Web UI
Workflow Execution Event History is available in the Web UI. Payload information for each Event is captured within Event 'input' and 'result' fields. Without a Codec Server, this information remains encoded.
Passing these Payloads through a Codec Server returns decoded results to the Web UI. Make sure to enter a valid URL and port for the codec endpoint when configuring the Codec Server.