HEALTH-CHECK(8)

πŸ“¦
version 0.04.01 Β· 4 versions
, in debian trixie, nixos 26.05, nixpkgs unstable, ubuntu questing, ubuntu resolute, ubuntu stonking

✨ health-check(8) β€” the system manager's manual page, but make it make sense πŸ’–

okay bestie, so this is health-check from section 8 of the manual (the big sysadmin section, iykyk). it's literally a tool that measures system events, and honestly? it's giving "doctor but for your processes" 🩺✨


🌸 NAME 🌸

health-check β€” a tool to measure system events. that's it, that's the vibe πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

health-check [options]

no arguments, just vibes and options. periodt.


πŸ’œ DESCRIPTION πŸ’œ

okay so here's the tea β˜• β€” health-check monitors a process, and optionally its child processes and threads, for however long you tell it to. and at the end of all that monitoring, it spills the receipts: the CPU time used, the wakeup events generated, and the I/O operations of the processes you were watching.

the whole point? diagnosing those unhealthy, badly behaving processes. like when a process is acting up and you're just standing there like 😭 bestie what is WRONG with you. this tool is how you find out. it can literally be used to diagnose unhealthy badly behaving processes. main character energy for troubleshooting, no cap.


πŸŽ€ OPTIONS πŸŽ€

here are the health-check options, all of them, in order, no skips (we don't gatekeep here):

  • -h β€” show help. the "please explain yourself" button 🫢
  • -b β€” brief (terse) output for a quick overview. short and sweet, snack-sized info πŸ“
  • -c β€” find and monitor all child processes and threads of a given set of processes. heads up tho: this option is only useful when attaching to already running processes using the -p option. it does NOT do the thing otherwise, so don't come for me πŸ’€
  • -d β€” specify analysis duration in seconds. default is 60 seconds. and plot twist: a duration of 0 will make health-check run forever, or until the monitored process exits. forever!! πŸ”₯
  • -f β€” follow fork, vfork and clone system calls. yes, all three, we're tracking the whole family tree 🌳
  • -p pid[,pid] β€” specify which processes to analyse. can be a process ID or a process name. comma-separated, so you can list several 🧚
  • -r β€” resolve IP addresses. ngl this can take some time, hence it is an opt-in feature. you gotta ask for it, it's not just gonna happen πŸ™ˆ
  • -m max β€” specify the maximum number of timeout blocking system calls that are logged before completing. super useful with very busy processes that can generate tens of thousands of ptrace events that have to be logged by health-check. the default is 1 million. yes, one million, she's got stamina πŸ‘‘
  • -o logfile β€” specify output log file to export JSON formatted results. then you can easily import and analyse the resulting data using JSON parsing tools. data girlies stay winning πŸ“Š
  • -u username β€” run command as the specified user. cannot be used with the -p option, it's literally not compatible, pick a lane bestie βœ‹
  • -v verbose β€” enable verbose mode (currently just for the -W wakelock option). not compatible with the -b brief option. so verbose and brief cannot coexist, they're exes πŸ’”
  • -w β€” this uses fnotify to count the number of wakelock lock/unlocks. lightweight and simple wakelock monitoring. the low-effort, high-reward option ✨
  • -W β€” this does deeper system call inspection to monitor wakelock usage and uses up more run time processing to perform the inspection. more thorough, more expensive, she's doing the most but for a reason πŸ’…
also just a lil reminder: -c only works with -p, -u can't hang with -p, and -v and -b are not compatible. the options have beef, respect the beef 😌

πŸ’– AUTHOR πŸ’–

health-check was written by Colin Ian King <colin.i.king@gmail.com> β€” legend behaviour honestly.

this manual page was written by Colin Ian King, for the Ubuntu project (but may be used by others). sharing is caring 🫢


Copyright Β© 2014-2021 Canonical Ltd, Copyright Β© 2021-2025 Colin Ian King

This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

so like, use it, love it, but if it breaks something that's on you bestie, there is NO warranty, not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. they said it in all caps so you KNOW they mean it 😭

and that's the whole page, you ate that πŸ’…βœ¨ this was HEALTH-CHECK(8) from the System Manager's Manual, dated 12 January 2024 β€” mwah, go monitor something, love u, bye πŸŽ€πŸ¦‹πŸ’–