Skip to content

Requirements — System Health Monitor

Before starting this project, make sure you are comfortable with the topics below. Each links back to the relevant course section.

Knowledge Prerequisites

Topic Course section Why you need it
Variables & arithmetic day03-part1-variables-quoting Storing and comparing metric values
Control flow (if) day04-part1-control-flow Threshold comparisons
Functions day01-part1-functions Modular metric collectors
Error handling & trap day02-part1-error-handling Graceful failures and cleanup
I/O & pipes day05-part1-io-pipes Capturing command output
cron day04-part1-automation-tools Scheduling unattended runs
curl (optional) day04-part2-networking-apis Sending Slack/webhook alerts

Tool Prerequisites

All tools below come pre-installed on any standard Linux system:

# Verify before starting
bash --version        # need 4.0+
uptime --version      # part of procps
free --version        # part of procps
df --version          # part of coreutils
awk --version         # part of gawk or mawk

For the optional Slack alerting step:

curl --version        # need 7.x+

Estimated Time

Mode Time
Core script only 2–3 hours
With config file and logging 3–4 hours
With Slack alerts and cron 4–5 hours
Full solution with all enhancements 6–8 hours

What You Will Produce

A single executable script health_check.sh plus: - health_check.conf — user-configurable thresholds - A cron entry that runs the check every 5 minutes - A logfile at /var/log/health_check.log (or ~/logs/health_check.log)

This project forms the foundation of the Capstone Project in day05-part1-capstone.


overview | setup