RSX
Request Status Extension (RSX) is a Kaa service that allows connected clients to retrieve the status of 1/KP-based message by its Request ID.
Interfaces
RSX supports a number of interfaces to perform its functional role. The key supported interfaces are summarized in the following diagram.
For inter-service communication, Kaa services mainly use REST APIs and messaging protocols that run over NATS messaging system.
Request status extension interface
This interface provides a method for connected endpoints to retrieve message statuses. To do so using the 1/KP protocol integration with the KPC, the client needs to issue an empty request to the following resource path:
kp1/<appversion_name>/<rsx_extension_instance_name>/<endpoint_token>/<message_extension_instance_name>/<message_request_id>
For example:
kp1/kettle-v1/rsx/oolaiY5P/dcx/234531
This is the request for the status of the message published to the DCX on the topic:
kp1/kettle-v1/dcx/oolaiY5P/json/234531
A successful response will be published to the /status topic:
kp1/<appversion_name>/<rsx_extension_instance_name>/<endpoint_token>/<message_extension_instance_name>/<message_request_id>/status
e.g.
kp1/kettle-v1/rsx/oolaiY5P/dcx/234531/status
A successful response payload contains the message Request ID, execution status code, and reason phrase. For example:
{
"requestId":234531,
"statusCode":200,
"reasonPhrase":"Ok"
}
An error response will be published to the /error topic:
kp1/<appversion_name>/<rsx_extension_instance_name>/<endpoint_token>/<message_extension_instance_name>/<message_request_id>/error
e.g.
kp1/kettle-v1/rsx/oolaiY5P/dcx/234531/error
An error response format described here.
RSX stores the configured by MAX_RECORD_COUNT amount of requests and automatically clean up the old values.
Management interface
RSX exposes an HTTP-based management interface with the following endpoints:
GET /health
returns 200 OK if the service is up and running properly, and 503 Service Unavailable otherwise. This endpoint can be used by Kubernetes for liveness and readiness probing.