load avg
authorAaron Marcher <info@nulltime.net>
Thu, 18 Aug 2016 11:30:45 +0000 (13:30 +0200)
committerAaron Marcher (drkhsh) <info@nulltime.net>
Thu, 18 Aug 2016 11:30:45 +0000 (13:30 +0200)
README.md
config.def.h
slstatus.c
slstatus.h

index 555a6b873d7d6543ebae91796ba4eac8e5565646..feb63f520bdf3e011f64bba5a6e27f3e9ec74556 100644 (file)
--- a/README.md
+++ b/README.md
@@ -17,6 +17,7 @@ The following information is included:
 - available entropy
 - hostname
 - ip addresses
+- load avg
 - ram numbers (free ram, percentage, total ram and used ram)
 - temperature
 - volume percentage (alsa)
index 3cbbedf879211bc8f7d78e261601289a48a699be..2dd05ded9230222174d4f8bcf8c47827eff903ca 100644 (file)
@@ -26,6 +26,7 @@ static const char unknowntext[] = "n/a";
 - gid (gid of current user) [argument: NULL]
 - hostname [argument: NULL]
 - ip (ip address) [argument: interface]
+- load_avg (load average) [argument: NULL]
 - ram_free (ram usage in percent) [argument: NULL]
 - ram_perc (ram usage in percent) [argument: NULL]
 - ram_total (ram usage in percent) [argument: NULL]
index 9884aaad128177ecec3cd3e18a35da03d00fd8f7..87e705d1758566d3d10f760d8dd12c0ee69a0b48 100644 (file)
@@ -342,6 +342,22 @@ ip(const char *interface)
        return smprintf(unknowntext);
 }
 
+/* load avg */
+char *
+load_avg(const char *null)
+{
+       double avgs[3];
+
+       /* try to get load avg */
+       if (getloadavg(avgs, 3) < 0) {
+               fprintf(stderr, "Error getting load avg.\n");
+               return smprintf(unknowntext);
+       }
+
+       /* return it */
+       return smprintf("%.2f %.2f %.2f", avgs[0], avgs[1], avgs[2]);
+}
+
 /* ram free */
 char *
 ram_free(const char *null)
index f09b3bc4d23b2aade34030df35eca9caca5a1926..5efc5f2dfe1d03a93e417b576f04e042a019d24f 100644 (file)
@@ -25,6 +25,7 @@ char *entropy(const char*);
 char *gid(const char*);
 char *hostname(const char *);
 char *ip(const char *);
+char *load_avg(const char *);
 char *ram_free(const char *);
 char *ram_perc(const char *);
 char *ram_used(const char *);