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

86 lines
2.1 KiB
C
Raw Normal View History

2008-06-21 13:33:06 +02:00
#include <libgen.h>
#include <string.h>
#include <stdio.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);
2009-01-22 15:30:31 +01:00
int if_err_(int argc, char **argv);
2008-06-21 13:33:06 +02:00
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 uptime(int argc, char **argv);
int busybox(int argc, char **argv) {
if(argc < 2) {
fprintf(stderr, "missing parameter\n");
return 1;
}
if(0 != strcmp(argv[1], "listplugins")) {
fprintf(stderr, "unknown parameter\n");
return 1;
}
puts("cpu\nentropy\nforks\nfw_packets\ninterrupts\nload\n"
"open_files\nopen_inodes\nprocesses\nswap\nuptime");
return 0;
}
2008-06-21 13:33:06 +02:00
int main(int argc, char **argv) {
char *progname;
progname = basename(argv[0]);
switch(*progname) {
case 'c':
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "cpu"+1))
2008-06-21 13:33:06 +02:00
return cpu(argc, argv);
break;
case 'e':
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "entropy"+1))
2008-06-21 13:33:06 +02:00
return entropy(argc, argv);
break;
case 'f':
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "forks"+1))
2008-06-21 13:33:06 +02:00
return forks(argc, argv);
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "fw_packets"+1))
2008-06-21 13:33:06 +02:00
return fw_packets(argc, argv);
break;
case 'i':
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "interrupts"+1))
2008-06-21 13:33:06 +02:00
return interrupts(argc, argv);
2013-02-05 11:31:37 +01:00
if(!strncmp(progname+1, "if_err_"+1, 6))
2009-01-22 15:30:31 +01:00
return if_err_(argc, argv);
2008-06-21 13:33:06 +02:00
break;
case 'l':
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "load"+1))
2008-06-21 13:33:06 +02:00
return load(argc, argv);
break;
case 'm':
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "munin-plugins-busybox"+1))
return busybox(argc, argv);
break;
2008-06-21 13:33:06 +02:00
case 'o':
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "open_files"+1))
2008-06-21 13:33:06 +02:00
return open_files(argc, argv);
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "open_inodes"+1))
2008-06-21 13:33:06 +02:00
return open_inodes(argc, argv);
break;
case 'p':
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "processes"+1))
2008-06-21 13:33:06 +02:00
return processes(argc, argv);
break;
case 's':
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "swap"+1))
2008-06-21 13:33:06 +02:00
return swap(argc, argv);
break;
case 'u':
2013-02-05 11:31:37 +01:00
if(!strcmp(progname+1, "uptime"+1))
2008-06-21 13:33:06 +02:00
return uptime(argc, argv);
break;
}
fprintf(stderr, "unknown basename\n");
2008-06-21 13:33:06 +02:00
return 1;
}