check_load command generator
#!/usr/bin/env python
# check_load is provied by nagios-plugins-basic
# The formula origin:
# * http://serverfault.com/questions/209566/what-warning-and-critical-values-to-use-for-check-load
import os
import sys
import multiprocessing
def main():
cpu_count = multiprocessing.cpu_count()
# warnings
warnings = {
"the_1_min_load_avg": cpu_count*8,
"the_5_min_load_avg": cpu_count*5,
"the_15_min_load_avg": cpu_count*2
}
# criticals
criticals = {
"the_1_min_load_avg": cpu_count*10,
"the_5_min_load_avg": cpu_count*8,
"the_15_min_load_avg": cpu_count*3
}
print(" ".join(
["/usr/lib/nagios/plugins/check_load",
"-w {the_1_min_load_avg},{the_5_min_load_avg},{the_15_min_load_avg}".format(
**warnings),
"-c {the_1_min_load_avg},{the_5_min_load_avg},{the_15_min_load_avg}".format(
**criticals)]))
if __name__ == "__main__":
main()