]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: log user and not bucket owner for service operations
authorYehuda Sadeh <yehuda@inktank.com>
Mon, 18 Jun 2012 21:28:25 +0000 (14:28 -0700)
committerSage Weil <sage@inktank.com>
Tue, 19 Jun 2012 20:26:00 +0000 (13:26 -0700)
For operations that are done on the service (e.g., list buckets)
we need to log the user that did the operation, and not the bucket
owner.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
src/rgw/rgw_log.cc

index c6b2cadaf1b1cba369c4c0e5348e25e1cedab0b7..be16f3c8ec47eb4ee3977d6693583c9247ca96a9 100644 (file)
@@ -167,10 +167,14 @@ static void log_usage(struct req_state *s)
   if (!usage_logger)
     return;
 
-  if (s->bucket_owner.empty())
-    return;
+  string user;
+
+  if (s->bucket_name)
+    user = s->bucket_owner;
+  else
+    user = s->user.user_id;
 
-  rgw_usage_log_entry entry(s->bucket_owner, s->bucket.name, s->bytes_sent, s->bytes_received);
+  rgw_usage_log_entry entry(user, s->bucket.name, s->bytes_sent, s->bytes_received);
 
   entry.ops = 1;
   if (!s->err.is_err())