diff options
| -rw-r--r-- | xlators/debug/io-stats/src/io-stats.c | 9 | ||||
| -rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-volgen.c | 41 | 
2 files changed, 38 insertions, 12 deletions
diff --git a/xlators/debug/io-stats/src/io-stats.c b/xlators/debug/io-stats/src/io-stats.c index 2061d9bc9b1..c72545bd387 100644 --- a/xlators/debug/io-stats/src/io-stats.c +++ b/xlators/debug/io-stats/src/io-stats.c @@ -1586,11 +1586,7 @@ reconfigure (xlator_t *this, dict_t *options)          if (!ctx)                  return -1; -        if (ctx->cmd_args.brick_name) -                ret = dict_get_str (options, "log-level", &log_str); -        else -                ret = dict_get_str (options, "client-log-level", &log_str); - +        ret = dict_get_str (options, "log-level", &log_str);          if (!ret) {                  if (!is_gf_log_command(this, "trusted.glusterfs*set-log-level", log_str)) {                          gf_log (this->name, GF_LOG_DEBUG, @@ -1762,8 +1758,5 @@ struct volume_options options[] = {          { .key = {"log-level"},            .type = GF_OPTION_TYPE_STR,          }, -        { .key = {"client-log-level"}, -          .type = GF_OPTION_TYPE_STR, -        },          { .key  = {NULL} },  }; diff --git a/xlators/mgmt/glusterd/src/glusterd-volgen.c b/xlators/mgmt/glusterd/src/glusterd-volgen.c index cfd7a7396a9..93e276dc9fb 100644 --- a/xlators/mgmt/glusterd/src/glusterd-volgen.c +++ b/xlators/mgmt/glusterd/src/glusterd-volgen.c @@ -101,8 +101,8 @@ static struct volopt_map_entry glusterd_volopt_map[] = {          {"diagnostics.latency-measurement",      "debug/io-stats",            },          {"diagnostics.dump-fd-stats",            "debug/io-stats",            }, -        {"diagnostics.brick-log-level",          "debug/io-stats",            "log-level",}, -        {"diagnostics.client-log-level",         "debug/io-stats",            }, +        {"diagnostics.brick-log-level",          "debug/io-stats",            "!log-level",}, +        {"diagnostics.client-log-level",         "debug/io-stats",            "!log-level",},          {"performance.cache-max-file-size",      "performance/io-cache",      "max-file-size",},          {"performance.cache-min-file-size",      "performance/io-cache",      "min-file-size",}, @@ -727,6 +727,36 @@ server_auth_option_handler (glusterfs_graph_t *graph,  }  static int +loglevel_option_handler (glusterfs_graph_t *graph, +                         struct volopt_map_entry *vme, void *param) +{ +        char *role = param; +        struct volopt_map_entry vme2 = {0,}; + +        if (strcmp (vme->option, "!log-level") != 0 || +            !strstr (vme->key, role)) +                return 0; + +        memcpy (&vme2, vme, sizeof (vme2)); +        vme2.option = "log-level"; + +        return basic_option_handler (graph, &vme2, NULL); +} + +static int +server_spec_option_handler (glusterfs_graph_t *graph, +                            struct volopt_map_entry *vme, void *param) +{ +        int ret = 0; + +        ret = server_auth_option_handler (graph, vme, NULL); +        if (!ret) +                ret = loglevel_option_handler (graph, vme, "brick"); + +        return ret; +} + +static int  server_graph_builder (glusterfs_graph_t *graph, glusterd_volinfo_t *volinfo,                        dict_t *set_dict, void *param)  { @@ -809,7 +839,7 @@ server_graph_builder (glusterfs_graph_t *graph, glusterd_volinfo_t *volinfo,                  return -1;          ret = volgen_graph_set_options_generic (graph, set_dict, NULL, -                                                &server_auth_option_handler); +                                                &server_spec_option_handler);          return ret;  } @@ -999,7 +1029,10 @@ client_graph_builder (glusterfs_graph_t *graph, glusterd_volinfo_t *volinfo,          if (!xl)                  return -1; -        return 0; +        ret = volgen_graph_set_options_generic (graph, set_dict, "client", +                                                &loglevel_option_handler); + +        return ret;  }  | 
