From c5f2511615b291b48fba1a8a64f4b65462d8bc6a Mon Sep 17 00:00:00 2001 From: "Costa Tsaousis (ktsaou)" Date: Sun, 11 Oct 2015 16:19:20 +0300 Subject: [PATCH] added config options for all /proc and /sys filenames monitored required for #10 --- src/proc_diskstats.c | 8 +++++--- src/proc_interrupts.c | 2 +- src/proc_meminfo.c | 2 +- src/proc_net_dev.c | 2 +- src/proc_net_ip_vs_stats.c | 2 +- src/proc_net_netstat.c | 2 +- src/proc_net_rpc_nfsd.c | 2 +- src/proc_net_snmp.c | 2 +- src/proc_net_stat_conntrack.c | 2 +- src/proc_stat.c | 2 +- src/proc_sys_kernel_random_entropy_avail.c | 2 +- src/proc_vmstat.c | 2 +- 12 files changed, 16 insertions(+), 14 deletions(-) diff --git a/src/proc_diskstats.c b/src/proc_diskstats.c index fcdf51d2..85fa4c8e 100755 --- a/src/proc_diskstats.c +++ b/src/proc_diskstats.c @@ -17,7 +17,7 @@ int do_proc_diskstats(int update_every, unsigned long long dt) { static procfile *ff = NULL; - + static char *path_to_get_hw_sector_size = NULL; static int enable_new_disks = -1; static int do_io = -1, do_ops = -1, do_merged_ops = -1, do_iotime = -1, do_cur_ops = -1; @@ -31,9 +31,11 @@ int do_proc_diskstats(int update_every, unsigned long long dt) { if(dt) {}; - if(!ff) ff = procfile_open("/proc/diskstats", " \t", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/diskstats", "filename to monitor", "/proc/diskstats"), " \t", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; + if(!path_to_get_hw_sector_size) path_to_get_hw_sector_size = config_get("plugin:proc:/proc/diskstats", "path to get h/w sector size", "/sys/block/%s/queue/hw_sector_size"); + ff = procfile_readall(ff); if(!ff) return 0; // we return 0, so that we will retry to open it next time @@ -208,7 +210,7 @@ int do_proc_diskstats(int update_every, unsigned long long dt) { // replace all / with ! while((t = strchr(tf, '/'))) *t = '!'; - snprintf(ssfilename, FILENAME_MAX, "/sys/block/%s/queue/hw_sector_size", tf); + snprintf(ssfilename, FILENAME_MAX, path_to_get_hw_sector_size, tf); FILE *fpss = fopen(ssfilename, "r"); if(fpss) { char ssbuffer[1025]; diff --git a/src/proc_interrupts.c b/src/proc_interrupts.c index c402e976..a2c7f471 100755 --- a/src/proc_interrupts.c +++ b/src/proc_interrupts.c @@ -31,7 +31,7 @@ int do_proc_interrupts(int update_every, unsigned long long dt) { if(do_per_core == -1) do_per_core = config_get_boolean("plugin:proc:/proc/interrupts", "interrupts per core", 0); - if(!ff) ff = procfile_open("/proc/interrupts", " \t", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/interrupts", "filename to monitor", "/proc/interrupts"), " \t", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; ff = procfile_readall(ff); diff --git a/src/proc_meminfo.c b/src/proc_meminfo.c index ab9a80d1..07805e54 100755 --- a/src/proc_meminfo.c +++ b/src/proc_meminfo.c @@ -28,7 +28,7 @@ int do_proc_meminfo(int update_every, unsigned long long dt) { if(dt) {}; - if(!ff) ff = procfile_open("/proc/meminfo", " \t:", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/meminfo", "filename to monitor", "/proc/meminfo"), " \t:", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; ff = procfile_readall(ff); diff --git a/src/proc_net_dev.c b/src/proc_net_dev.c index 2416c752..c4dcd139 100755 --- a/src/proc_net_dev.c +++ b/src/proc_net_dev.c @@ -15,7 +15,7 @@ int do_proc_net_dev(int update_every, unsigned long long dt) { if(dt) {}; - if(!ff) ff = procfile_open("/proc/net/dev", " \t,:|", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/net/dev", "filename to monitor", "/proc/net/dev"), " \t,:|", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; ff = procfile_readall(ff); diff --git a/src/proc_net_ip_vs_stats.c b/src/proc_net_ip_vs_stats.c index 862cc51d..1e947eb7 100755 --- a/src/proc_net_ip_vs_stats.c +++ b/src/proc_net_ip_vs_stats.c @@ -21,7 +21,7 @@ int do_proc_net_ip_vs_stats(int update_every, unsigned long long dt) { if(dt) {}; - if(!ff) ff = procfile_open("/proc/net/ip_vs_stats", " \t,:|", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/net/ip_vs_stats", "filename to monitor", "/proc/net/ip_vs_stats"), " \t,:|", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; ff = procfile_readall(ff); diff --git a/src/proc_net_netstat.c b/src/proc_net_netstat.c index 0b5c3938..c62fa93c 100755 --- a/src/proc_net_netstat.c +++ b/src/proc_net_netstat.c @@ -23,7 +23,7 @@ int do_proc_net_netstat(int update_every, unsigned long long dt) { if(dt) {}; - if(!ff) ff = procfile_open("/proc/net/netstat", " \t:", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/net/netstat", "filename to monitor", "/proc/net/netstat"), " \t:", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; ff = procfile_readall(ff); diff --git a/src/proc_net_rpc_nfsd.c b/src/proc_net_rpc_nfsd.c index ca75edd6..c3bbf14c 100644 --- a/src/proc_net_rpc_nfsd.c +++ b/src/proc_net_rpc_nfsd.c @@ -138,7 +138,7 @@ int do_proc_net_rpc_nfsd(int update_every, unsigned long long dt) { if(dt) {}; - if(!ff) ff = procfile_open("/proc/net/rpc/nfsd", " \t", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/net/rpc/nfsd", "filename to monitor", "/proc/net/rpc/nfsd"), " \t", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; ff = procfile_readall(ff); diff --git a/src/proc_net_snmp.c b/src/proc_net_snmp.c index 4efd2483..0c62b87d 100755 --- a/src/proc_net_snmp.c +++ b/src/proc_net_snmp.c @@ -32,7 +32,7 @@ int do_proc_net_snmp(int update_every, unsigned long long dt) { if(dt) {}; - if(!ff) ff = procfile_open("/proc/net/snmp", " \t:", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/net/snmp", "filename to monitor", "/proc/net/snmp"), " \t:", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; ff = procfile_readall(ff); diff --git a/src/proc_net_stat_conntrack.c b/src/proc_net_stat_conntrack.c index 5ffa5da9..d6b864b7 100755 --- a/src/proc_net_stat_conntrack.c +++ b/src/proc_net_stat_conntrack.c @@ -26,7 +26,7 @@ int do_proc_net_stat_conntrack(int update_every, unsigned long long dt) { if(dt) {}; - if(!ff) ff = procfile_open("/proc/net/stat/nf_conntrack", " \t:", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/net/stat/nf_conntrack", "filename to monitor", "/proc/net/stat/nf_conntrack"), " \t:", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; ff = procfile_readall(ff); diff --git a/src/proc_stat.c b/src/proc_stat.c index a2972599..b8365495 100755 --- a/src/proc_stat.c +++ b/src/proc_stat.c @@ -26,7 +26,7 @@ int do_proc_stat(int update_every, unsigned long long dt) { if(dt) {}; - if(!ff) ff = procfile_open("/proc/stat", " \t:", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/stat", "filename to monitor", "/proc/stat"), " \t:", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; ff = procfile_readall(ff); diff --git a/src/proc_sys_kernel_random_entropy_avail.c b/src/proc_sys_kernel_random_entropy_avail.c index 0488f5b6..c3311ee4 100755 --- a/src/proc_sys_kernel_random_entropy_avail.c +++ b/src/proc_sys_kernel_random_entropy_avail.c @@ -13,7 +13,7 @@ int do_proc_sys_kernel_random_entropy_avail(int update_every, unsigned long long if(dt) {} ; - if(!ff) ff = procfile_open("/proc/sys/kernel/random/entropy_avail", "", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/sys/kernel/random/entropy_avail", "filename to monitor", "/proc/sys/kernel/random/entropy_avail"), "", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; ff = procfile_readall(ff); diff --git a/src/proc_vmstat.c b/src/proc_vmstat.c index 0842ebe0..4b933726 100755 --- a/src/proc_vmstat.c +++ b/src/proc_vmstat.c @@ -24,7 +24,7 @@ int do_proc_vmstat(int update_every, unsigned long long dt) { if(dt) {}; - if(!ff) ff = procfile_open("/proc/vmstat", " \t:", PROCFILE_FLAG_DEFAULT); + if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/vmstat", "filename to monitor", "/proc/vmstat"), " \t:", PROCFILE_FLAG_DEFAULT); if(!ff) return 1; ff = procfile_readall(ff); -- 2.39.2