2
0
mirror of https://github.com/munin-monitoring/contrib.git synced 2018-11-08 00:59:34 +01:00
contrib-munin/tools/munin-plugins-busybox/main.c
2013-02-05 13:12:43 +01:00

87 lines
2.2 KiB
C

#include <libgen.h>
#include <string.h>
#include <stdio.h>
#include "common.h"
int cpu(int argc, char **argv);
int entropy(int argc, char **argv);
int forks(int argc, char **argv);
int fw_packets(int argc, char **argv);
int if_err_(int argc, char **argv);
int interrupts(int argc, char **argv);
int load(int argc, char **argv);
int open_files(int argc, char **argv);
int open_inodes(int argc, char **argv);
int processes(int argc, char **argv);
int swap(int argc, char **argv);
int threads(int argc, char **argv);
int uptime(int argc, char **argv);
int busybox(int argc, char **argv) {
if(argc < 2)
return fail("missing parameter");
if(0 != strcmp(argv[1], "listplugins"))
return fail("unknown parameter");
puts("cpu\nentropy\nforks\nfw_packets\ninterrupts\nload\n"
"open_files\nopen_inodes\nprocesses\nswap\nuptime");
return 0;
}
int main(int argc, char **argv) {
char *progname;
progname = basename(argv[0]);
switch(*progname) {
case 'c':
if(!strcmp(progname+1, "pu"))
return cpu(argc, argv);
break;
case 'e':
if(!strcmp(progname+1, "ntropy"))
return entropy(argc, argv);
break;
case 'f':
if(!strcmp(progname+1, "orks"))
return forks(argc, argv);
if(!strcmp(progname+1, "w_packets"))
return fw_packets(argc, argv);
break;
case 'i':
if(!strcmp(progname+1, "nterrupts"))
return interrupts(argc, argv);
if(!strncmp(progname+1, "f_err_", 6))
return if_err_(argc, argv);
break;
case 'l':
if(!strcmp(progname+1, "oad"))
return load(argc, argv);
break;
case 'm':
if(!strcmp(progname+1, "unin-plugins-busybox"))
return busybox(argc, argv);
break;
case 'o':
if(!strcmp(progname+1, "pen_files"))
return open_files(argc, argv);
if(!strcmp(progname+1, "pen_inodes"))
return open_inodes(argc, argv);
break;
case 'p':
if(!strcmp(progname+1, "rocesses"))
return processes(argc, argv);
break;
case 's':
if(!strcmp(progname+1, "wap"))
return swap(argc, argv);
break;
case 't':
if(!strcmp(progname+1, "hreads"))
return threads(argc, argv);
break;
case 'u':
if(!strcmp(progname+1, "ptime"))
return uptime(argc, argv);
break;
}
return fail("unknown basename");
}