MicroStrategy ONE

Start-Up Health Checks

Multiple services were renamed in the MicroStrategy 2019 release. Because this guide requires modifying the underlying files, it uses the original service name.

The Telemetry Store (i.e. Platform Analytics Consumer) and Identity Telemetry producer (i.e. Usher Metadata Producer) are dependent on and require access to three components to process telemetry logs:

  • Platform Analytics Repository (i.e. Database Server)
  • Telemetry Cache (i.e Redis)
  • Telemetry Server (i.e. Kafka)

All the three components must be in a healthy state for Platform Analytics to successfully process telemetry logs. If any of these components are unavailable, the Telemetry Store consumer and Identity Telemetry producer will stop. Therefore, during start up, both the consumer and producer execute a health check for the three components and generate a detailed report with the results.

At times, one of the components may be in the process of starting and not in a completely ready-state when the health check starts. In such situations, the consumer and producer will perform three consecutive checks with a 60-second delay between each check to confirm if the dependencies are in an unhealthy state.

For more information about Platform Analytics Architecture, see Platform Analytics Architecture and Services.

Naming Conventions and Locations

A health check is performed during start up of both the Platform Analytics Consumer and the Usher Metadata Producer. Therefore, there are two health check reports generated in the Platform Analytics log folder located in the default install path:

  • Linux: /opt/MicroStrategy/PlatformAnalytics/log
  • Windows: C:\Program Files (x86)\MicroStrategy\Platform Analytics\log

The name of the file identifies whether the report is corresponding to the consumer or the producer.

For example,

Copy
platform-analytics-consumer-health-check-yyyymmddhhmmss.out
platform-analytics-usher-lookup-producer-health-check-yyyymmddhhmmss.out

Health Check Report Results

Each health check report is structured into four sections:

  1. Health Check
  2. Redis Health Check
  3. Kafka Health Check
  4. Health Check Summary

Each section provides different information on the health of your three components.

Health Check

During the health check, there are two checks being executed:

  • Can the consumer/producer connect to the database provided during installation and stored in the PAConsumerConfig.yaml configuration file? If not, additional network connectivity testing occurs to diagnose the cause of the issue.
  • Does the database user have the required privileges? For a full list of installation prerequisites see, Platform Analytics Prerequisites.

The Health Check report provides a list of the privileges and the resulting status. If all the checks are successful, the final line will read Warehouse health check result is healthy.

If any line reads Failed, check your PAConsumerConfig.yaml file and ensure the database has the correct privileges.

Redis Health Check

The Redis Health Check determines if the consumer or producer can successfully connect to the Redis server. The check provides detailed statistics about Redis collected during startup. If all the checks are successful, the final line will read Redis server health check result is healthy.

If you see an error in your check, ensure Redis is running and that your configuration is correct in the PAConsumerConfig.yaml file.

Kafka Health Check

The Kafka Health Check ensures the Telemetry Manager (Apache Zookeeper) and the Telemetry Server (Kafka Server) are started and connected. If all the checks are successful, the final line will read Kafka cluster health check result is healthy.

Since the Telemetry Server is dependent on the Telemetry Manager, the Telemetry Manager must be started first.

If you see an error in your check, ensure ZooKeeper and Kafka are started.

Health Check Summary

If all health checks are successful, the results will be passing. If any of the checks failed, you will get a FAIL for the corresponding component. In failed scenarios, utilize the detailed report list above to investigate possible causes of the failure.