Member-only story

My Simple Approach to App Health Check with Automation

Scripting + Cron.

Zhimin Zhan
5 min readJun 10, 2024
Image credit: https://pixabay.com/illustrations/blood-pressure-monitor-check-test-3934879/

This is included in the “My Innovative Solution to Test Automation and Continuous Testing” series.

Below is a definition of “App (software) Health Check”:

“Health Checks give you the ability to monitor the health of your application by writing a small tests which returns either a healthy, degraded or un-healthy result. This is useful not only to test the internal health of your application but also it’s external dependencies such as an third party api which your application relies on to function correctly.” — source

There are two ways to implement App Health Check.

  • Using a commercial service, such as AppDynamics.
    Besides cost, it is usually complex and over-engineered. Most apps don’t need that.
  • Self-created utility
    and run it regularly.

I prefer the latter because it is usually quite easy if adopting correct approaches. Sadly, most software companies did not do that well, commonly either over-engineered or not reliable.

During test automation consulting, there have been a few cases where someone requested me to write automation scripts for health check purposes. This article shows my (simple yet effective) approach and shares an app-health-check report for my own apps/services.

Table of Contents:
·
App Health Check Design Options
1. Check what?
2. When and How Often?
3. Notification
·
My Approach
App/Service Checking Methods
The Service Config
Scheduled with Cron
Notification
·
FAQ

App Health Check Design Options

A gold rule of App Health Check: 100% automated, without human interventions.

1. Check what?

There are three types of checks:

  • The app instance (i.e. server) is up and running.
    Typically, checking HTTP status…

--

--

Zhimin Zhan
Zhimin Zhan

Written by Zhimin Zhan

Test automation & CT coach, author, speaker and award-winning software developer. Help teams succeed with Agile/DevOps by implementing real Continuous Testing.

No responses yet

Write a response