diff options
author | Costa Tsaousis (ktsaou) <costa@tsaousis.gr> | 2015-10-12 23:56:15 +0300 |
---|---|---|
committer | Costa Tsaousis (ktsaou) <costa@tsaousis.gr> | 2015-10-12 23:56:15 +0300 |
commit | 41a00e696182c5ca610543d2126eaa32cfd18e0b (patch) | |
tree | 626c7b87bcdc8f529724ca4759796ce8fb006145 /src/proc_diskstats.c | |
parent | c5f2511615b291b48fba1a8a64f4b65462d8bc6a (diff) |
added -ch option to set container host prefix for /proc and /sys #10
Diffstat (limited to 'src/proc_diskstats.c')
-rwxr-xr-x | src/proc_diskstats.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/proc_diskstats.c b/src/proc_diskstats.c index 85fa4c8e3d..5bbd3d58c8 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 char path_to_get_hw_sector_size[FILENAME_MAX + 1] = ""; 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,10 +31,18 @@ int do_proc_diskstats(int update_every, unsigned long long dt) { if(dt) {}; - if(!ff) ff = procfile_open(config_get("plugin:proc:/proc/diskstats", "filename to monitor", "/proc/diskstats"), " \t", PROCFILE_FLAG_DEFAULT); + if(!ff) { + char filename[FILENAME_MAX + 1]; + snprintf(filename, FILENAME_MAX, "%s%s", global_host_prefix, "/proc/diskstats"); + ff = procfile_open(config_get("plugin:proc:/proc/diskstats", "filename to monitor", filename), " \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"); + if(!path_to_get_hw_sector_size[0]) { + char filename[FILENAME_MAX + 1]; + snprintf(filename, FILENAME_MAX, "%s%s", global_host_prefix, "/sys/block/%s/queue/hw_sector_size"); + snprintf(path_to_get_hw_sector_size, FILENAME_MAX, "%s%s", global_host_prefix, config_get("plugin:proc:/proc/diskstats", "path to get h/w sector size", filename)); + } ff = procfile_readall(ff); if(!ff) return 0; // we return 0, so that we will retry to open it next time |