diff options
author | Pranith Kumar K <pkarampu@redhat.com> | 2014-10-10 09:51:28 +0530 |
---|---|---|
committer | Vijay Bellur <vbellur@redhat.com> | 2014-10-22 03:04:26 -0700 |
commit | 4b078cc079f221bb801988f1b5fed173ad40f9d6 (patch) | |
tree | 9a04c88ab4d220b2063ce6de6ac79864e91f2c30 /xlators/protocol/client | |
parent | d7e56dde3c19a11647eae9cf6a868c191c641489 (diff) |
logs: Do selective logging for errnos
Backport of http://review.gluster.org/8918
http://review.gluster.org/8955
Problem:
Just after replace-brick the mount logs are filled with ENOENT/ESTALE
warning logs because the file is yet to be self-healed now that the
brick is new.
Fix:
Do conditional logging for the logs. ENOENT/ESTALE will be logged at
lower log level. Only when debug logs are enabled, these logs will
be written to the logfile.
Change-Id: If203d09e2479e8c2415ebc14fb79d4fbb81dfc95
BUG: 1155027
Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
Reviewed-on: http://review.gluster.org/8957
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Krutika Dhananjay <kdhananj@redhat.com>
Reviewed-by: Vijay Bellur <vbellur@redhat.com>
Diffstat (limited to 'xlators/protocol/client')
-rw-r--r-- | xlators/protocol/client/src/client-rpc-fops.c | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/xlators/protocol/client/src/client-rpc-fops.c b/xlators/protocol/client/src/client-rpc-fops.c index 64d30f2a99f..5f88769e352 100644 --- a/xlators/protocol/client/src/client-rpc-fops.c +++ b/xlators/protocol/client/src/client-rpc-fops.c @@ -442,7 +442,8 @@ client3_3_open_cbk (struct rpc_req *req, struct iovec *iov, int count, out: if (rsp.op_ret == -1) { - gf_log (this->name, GF_LOG_WARNING, + gf_log (this->name, fop_log_level (GF_FOP_OPEN, + gf_error_to_errno (rsp.op_errno)), "remote operation failed: %s. Path: %s (%s)", strerror (gf_error_to_errno (rsp.op_errno)), local->loc.path, loc_gfid_utoa (&local->loc)); @@ -907,7 +908,8 @@ client3_3_flush_cbk (struct rpc_req *req, struct iovec *iov, int count, out: if (rsp.op_ret == -1) { - gf_log (this->name, GF_LOG_WARNING, + gf_log (this->name, fop_log_level (GF_FOP_FLUSH, + gf_error_to_errno (rsp.op_errno)), "remote operation failed: %s", strerror (gf_error_to_errno (rsp.op_errno))); } @@ -1508,9 +1510,10 @@ client3_3_inodelk_cbk (struct rpc_req *req, struct iovec *iov, int count, rsp.op_errno, out); out: - if ((rsp.op_ret == -1) && - (EAGAIN != gf_error_to_errno (rsp.op_errno))) { - gf_log (this->name, GF_LOG_WARNING, "remote operation failed: %s", + if (rsp.op_ret == -1) { + gf_log (this->name, fop_log_level (GF_FOP_INODELK, + gf_error_to_errno (rsp.op_errno)), + "remote operation failed: %s", strerror (gf_error_to_errno (rsp.op_errno))); } CLIENT_STACK_UNWIND (inodelk, frame, rsp.op_ret, @@ -1558,9 +1561,10 @@ client3_3_finodelk_cbk (struct rpc_req *req, struct iovec *iov, int count, rsp.op_errno, out); out: - if ((rsp.op_ret == -1) && - (EAGAIN != gf_error_to_errno (rsp.op_errno))) { - gf_log (this->name, GF_LOG_WARNING, "remote operation failed: %s", + if (rsp.op_ret == -1) { + gf_log (this->name, fop_log_level (GF_FOP_FINODELK, + gf_error_to_errno (rsp.op_errno)), + "remote operation failed: %s", strerror (gf_error_to_errno (rsp.op_errno))); } else if (rsp.op_ret == 0) { if (local->attempt_reopen) @@ -1610,9 +1614,10 @@ client3_3_entrylk_cbk (struct rpc_req *req, struct iovec *iov, int count, rsp.op_errno, out); out: - if ((rsp.op_ret == -1) && - (EAGAIN != gf_error_to_errno (rsp.op_errno))) { - gf_log (this->name, GF_LOG_WARNING, "remote operation failed: %s", + if (rsp.op_ret == -1) { + gf_log (this->name, fop_log_level (GF_FOP_ENTRYLK, + gf_error_to_errno (rsp.op_errno)), + "remote operation failed: %s", strerror (gf_error_to_errno (rsp.op_errno))); } @@ -2668,7 +2673,8 @@ client3_3_opendir_cbk (struct rpc_req *req, struct iovec *iov, int count, out: if (rsp.op_ret == -1) { - gf_log (this->name, GF_LOG_WARNING, + gf_log (this->name, fop_log_level (GF_FOP_OPENDIR, + gf_error_to_errno (rsp.op_errno)), "remote operation failed: %s. Path: %s (%s)", strerror (gf_error_to_errno (rsp.op_errno)), local->loc.path, loc_gfid_utoa (&local->loc)); |