From: usev6 Date: Mon, 18 Sep 2017 18:50:18 +0000 (+0200) Subject: nfs plugin: Changes after review X-Git-Tag: collectd-5.8.0~96^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F2430%2Fhead;p=thirdparty%2Fcollectd.git nfs plugin: Changes after review * Avoid negated config options (s/IgnoreV/ReportV/) * Use _Bool instead of int * Handle multiple occurences of config option correctly --- diff --git a/src/collectd.conf.in b/src/collectd.conf.in index dbc5463fd..fa6c96c16 100644 --- a/src/collectd.conf.in +++ b/src/collectd.conf.in @@ -941,9 +941,9 @@ @LOAD_PLUGIN_NETWORK@ # -# IgnoreV2 true -# #IgnoreV3 true -# #IgnoreV4 true +# ReportV2 false +# #ReportV3 false +# #ReportV4 false # # diff --git a/src/collectd.conf.pod b/src/collectd.conf.pod index 298a43b4d..379e08387 100644 --- a/src/collectd.conf.pod +++ b/src/collectd.conf.pod @@ -5173,15 +5173,15 @@ System (NFS). It counts the number of procedure calls for each procedure, grouped by version and whether the system runs as server or client. It is possibly to omit metrics for a specific NFS version by setting one or -more of the following options to B (all of them default to B). +more of the following options to B (all of them default to B). =over 4 -=item B B|B +=item B B|B -=item B B|B +=item B B|B -=item B B|B +=item B B|B =back diff --git a/src/nfs.c b/src/nfs.c index 2f6282184..369b764a9 100644 --- a/src/nfs.c +++ b/src/nfs.c @@ -31,11 +31,11 @@ #include #endif -static const char *config_keys[] = {"IgnoreV2", "IgnoreV3", "IgnoreV4"}; +static const char *config_keys[] = {"ReportV2", "ReportV3", "ReportV4"}; static int config_keys_num = STATIC_ARRAY_SIZE(config_keys); -static int ignore_v2 = 0; -static int ignore_v3 = 0; -static int ignore_v4 = 0; +static _Bool report_v2 = 1; +static _Bool report_v3 = 1; +static _Bool report_v4 = 1; /* see /proc/net/rpc/nfs @@ -302,12 +302,12 @@ static kstat_t *nfs4_ksp_server; #endif static int nfs_config(const char *key, const char *value) { - if (strcasecmp(key, "IgnoreV2") == 0 && IS_TRUE(value)) - ignore_v2 = 1; - else if (strcasecmp(key, "IgnoreV3") == 0 && IS_TRUE(value)) - ignore_v3 = 1; - else if (strcasecmp(key, "IgnoreV4") == 0 && IS_TRUE(value)) - ignore_v4 = 1; + if (strcasecmp(key, "ReportV2") == 0) + report_v2 = IS_TRUE(value); + else if (strcasecmp(key, "ReportV3") == 0) + report_v3 = IS_TRUE(value); + else if (strcasecmp(key, "ReportV4") == 0) + report_v4 = IS_TRUE(value); else return -1; @@ -514,18 +514,18 @@ static void nfs_read_linux(FILE *fh, const char *inst) { if (fields_num < 3) continue; - if (strcmp(fields[0], "proc2") == 0 && ignore_v2 == 0) { + if (strcmp(fields[0], "proc2") == 0 && report_v2) { nfs_submit_fields_safe(/* version = */ 2, inst, fields + 2, (size_t)(fields_num - 2), nfs2_procedures_names, nfs2_procedures_names_num); - } else if (strncmp(fields[0], "proc3", 5) == 0 && ignore_v3 == 0) { + } else if (strncmp(fields[0], "proc3", 5) == 0 && report_v3) { nfs_submit_fields_safe(/* version = */ 3, inst, fields + 2, (size_t)(fields_num - 2), nfs3_procedures_names, nfs3_procedures_names_num); - } else if (strcmp(fields[0], "proc4ops") == 0 && ignore_v4 == 0) { + } else if (strcmp(fields[0], "proc4ops") == 0 && report_v4) { if (inst[0] == 's') nfs_submit_nfs4_server(inst, fields + 2, (size_t)(fields_num - 2)); - } else if (strcmp(fields[0], "proc4") == 0 && ignore_v4 == 0) { + } else if (strcmp(fields[0], "proc4") == 0 && report_v4) { if (inst[0] == 'c') nfs_submit_nfs4_client(inst, fields + 2, (size_t)(fields_num - 2)); } @@ -580,19 +580,19 @@ static int nfs_read(void) { #elif HAVE_LIBKSTAT static int nfs_read(void) { - if (ignore_v2 == 0) { + if (report_v2) { nfs_read_kstat(nfs2_ksp_client, /* version = */ 2, "client", nfs2_procedures_names, nfs2_procedures_names_num); nfs_read_kstat(nfs2_ksp_server, /* version = */ 2, "server", nfs2_procedures_names, nfs2_procedures_names_num); } - if (ignore_v3 == 0) { + if (report_v3) { nfs_read_kstat(nfs3_ksp_client, /* version = */ 3, "client", nfs3_procedures_names, nfs3_procedures_names_num); nfs_read_kstat(nfs3_ksp_server, /* version = */ 3, "server", nfs3_procedures_names, nfs3_procedures_names_num); } - if (ignore_v2 == 0) { + if (report_v2) { nfs_read_kstat(nfs4_ksp_client, /* version = */ 4, "client", nfs4_procedures_names, nfs4_procedures_names_num); nfs_read_kstat(nfs4_ksp_server, /* version = */ 4, "server",