diff options
| author | Mohit Agrawal <moagrawal@redhat.com> | 2019-04-15 10:34:34 +0530 | 
|---|---|---|
| committer | Shyamsundar Ranganathan <srangana@redhat.com> | 2019-04-16 10:59:36 +0000 | 
| commit | d2de3f66393d4f737e21eedab4200563a60f8bcc (patch) | |
| tree | 6139b66b4ceee3b2e391a405bd2f878c12deed55 /xlators/debug/io-stats | |
| parent | 80d2dae631369d2e4b5e5f4aa0a102b541c22ad5 (diff) | |
core: Log level changes do not effect on running client process
Problem: commit c34e4161f3cb6539ec83a9020f3d27eb4759a975 set log-level
         per xlator during reconfigure only for a brick process not for
         the client process.
Solution: 1) Change per xlator log-level only if brick_mux is enabled.To make sure
             about brick multiplex introudce a flag brick_mux at ctx->cmd_args.
Note: There are two other changes done with this patch
      1) Ignore client-log-level option to attach a brick with
         already running brick if brick_mux is enabled
      2) Add a log to print pid of the running process to make easier
         debugging
> Change-Id: I39e85de778e150d0685cd9a79425ce8b4783f9c9
> Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
> Fixes: bz#1696046
> (Cherry picked from commit 798aadbe51a9a02dd98a0f861cc239ecf7c8ed57)
> (Reviewed on upstream link https://review.gluster.org/#/c/glusterfs/+/22495/)
Change-Id: If91682830f894ab8f6857f19dcb1797fc15ca64c
Fixes: bz#1699715
Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
Diffstat (limited to 'xlators/debug/io-stats')
| -rw-r--r-- | xlators/debug/io-stats/src/io-stats.c | 22 | 
1 files changed, 13 insertions, 9 deletions
diff --git a/xlators/debug/io-stats/src/io-stats.c b/xlators/debug/io-stats/src/io-stats.c index f12191fb8df..13545bdaa3b 100644 --- a/xlators/debug/io-stats/src/io-stats.c +++ b/xlators/debug/io-stats/src/io-stats.c @@ -3704,19 +3704,23 @@ xlator_set_loglevel(xlator_t *this, int log_level)      active = ctx->active;      top = active->first; -    if (strcmp(top->type, "protocol/server") || (log_level == -1)) +    if (log_level == -1)          return; -    /* Set log-level for server xlator */ -    top->loglevel = log_level; +    if (ctx->cmd_args.brick_mux) { +        /* Set log-level for all brick xlators */ +        top->loglevel = log_level; -    /* Set log-level for parent xlator */ -    if (this->parents) -        this->parents->xlator->loglevel = log_level; +        /* Set log-level for parent xlator */ +        if (this->parents) +            this->parents->xlator->loglevel = log_level; -    while (trav) { -        trav->loglevel = log_level; -        trav = trav->next; +        while (trav) { +            trav->loglevel = log_level; +            trav = trav->next; +        } +    } else { +        gf_log_set_loglevel(this->ctx, log_level);      }  }  | 
