Automate Hourly Linux Performance Audits

Job ID: 40380710

Budget: ₹1,500 – ₹12,500 INR

I need a small, self-contained solution that audits Linux system performance every hour and stores or emails an easy-to-read report. The focus is limited to three core metrics: CPU usage, memory usage, and disk usage. No security hardening or package inventory is required—just solid, reliable performance snapshots on a strict hourly schedule.

The script can be written in Bash, Python, or another common shell-friendly language as long as it runs on most modern distributions without heavy dependencies. Feel free to tap into native tools such as top, mpstat, vmstat, iostat, or sar; the key is that execution and output remain consistent from run to run.

Recommended flow
• Cron (or systemd-timer) triggers your script exactly once per hour.
• The script gathers CPU, RAM, and disk stats, time-stamps them, and writes to a log file or pushes them to stdout/mail.
• Old reports roll over or compress automatically so the log directory never balloons.

Deliverables
1. The script(s) with clear inline comments.
2. A one-page README explaining prerequisites and installation steps.
3. A sample output file showing the format I can expect every hour.

Acceptance criteria
• After installation, running systemctl list-timers (or crontab -l) confirms the hourly schedule.
• Executing the script manually produces the same output as the timed run.
• CPU, memory, and disk figures are human-readable and separated cleanly for quick scanning.

Turnaround can be quick; the project is intentionally small. If you already have utilities or snippets that meet the brief, feel free to adapt them—just make sure the final product is portable and well documented.