Skip to main content
Skip table of contents

Admin: Realtime decisions - Troubleshooting guide

Realtime architecture diagram

image-20240930-205401.png

Validating installation and connectivity

How can I verify the Realtime API Service is up and available?

Load the Realtime API URL into a web browser and validate that the Realtime API Splash page loads up. This is a good way to verify the version of RPI Realtime as well. The version of RPI Realtime should match exactly the version of the core RPI Server environment.

image-20240930-205510.png

How can I verify the Realtime API Service has a successful connection to the memory cache?

  • Refer to the following article: RPI Realtime Decisions - Validate Memory Cache Connection.

  • The section in the referenced article details how to leverage the /api/Status/Cache/{CacheName} endpoint to view information about the state of the Realtime API's connection to the memory cache. If the Realtime API is unable to connect to the memory cache, the response from this endpoint should provide an error message describing why the connection is failing.

How can I verify the Realtime API Service has a successful connection to the message queues?

  • Refer to the following article: RPI Realtime Decisions - Advanced Validation.

  • The section in the referenced article gives details on how to leverage the status endpoint to get a true/false indicator as to whether or not the Realtime API is able to connect to the respective queues. If the Realtime API cannot successfully connect to either or both message queues, there should be an error message providing more detail around the failed connection.

How can I verify the Realtime Agent is up and available?

  • Load the Realtime Agent API URL into a web browser and validate that the Realtime Agent API Splash page loads up. This is a good way to verify the version of RPI Realtime Agent as well. The version of RPI Realtime Agent should match exactly the version of the core RPI Server environment.

image-20240930-210528.png

How can I verify the Realtime API is able to successfully connect to the Realtime Agent?

  • Refer to the following article for instructions on using the Realtime status endpoint (/api/Status): RPI Realtime Decisions - Advanced Validation.

  • The response to this endpoint will give you a true/false indicator of whether or not the Realtime API can connect to the Realtime agent.

How can I verify the Realtime agent is able to successfully connect to the RPI Warehouse or AuxDB?

  • Perform the following steps:

    • Configure a test Cached Attribute List (CAL) pointing to a key and at least one attribute from a table in the database you wish to test - Set the CAL to “Always fetch from database”.

    • Set a parameter mapping under ParameterToDataMappings in the Realtime API appsettings.json.config that points to this CAL.

    • Enable Realtime Agent logging.

    • Make a request to the /api/Cache/Visit endpoint, passing a Visitor attribute in the request payload with a name that matches the parameter setup in ParameterToDataMappings and a value for a record within the database that you're testing (ensuring the record has an column mapped by the test CAL created above).

Once the request has completed, you can validate by viewing both the Server Log and the SQL trace log for entries indicating a successful query:

Server & Client Log

You'll see a sequence of informational messages culminating with one that reads “Data fetch complete”. Here is an example.

image-20240930-210738.png

SQL Trace Log

The query issued to satisfy the CAL request should be logged, here is an example.

image-20240930-210957.png

How can I verify the Realtime agent is able to successfully connect to the operational databases?

The procedure from above for validating the database connection using a CAL effectively also serves to validate the connection to RPI operational database, as the agent needs to be able to establish connections to these databases in order to write the server and query log information.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.